From 441457d463893bb65bf8f51d71dc401780aeaa62 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 1 Apr 2025 19:54:32 +0000 Subject: [PATCH 01/46] Supported generation of nirfsg module and added its metadata --- Makefile | 2 +- README.rst | 46 + docs/_static/nirfsg_documentation.inc | 8 + docs/_static/nirfsg_usage.inc | 13 + docs/nirfsg/.readthedocs.yaml | 51 + docs/nirfsg/about_nirfsg.inc | 13 + docs/nirfsg/class.rst | 12588 ++++++++++++++++ docs/nirfsg/conf.py | 197 + docs/nirfsg/enums.rst | 4934 ++++++ docs/nirfsg/errors.rst | 90 + docs/nirfsg/examples.rst | 5 + docs/nirfsg/index.rst | 31 + docs/nirfsg/installation.inc | 13 + docs/nirfsg/nirfsg.rst | 9 + docs/nirfsg/rep_caps.rst | 116 + docs/nirfsg/status.inc | 46 + docs/nirfsg/toc.inc | 11 + generated/nirfsg/README.rst | 168 + generated/nirfsg/nirfsg/VERSION | 2 + generated/nirfsg/nirfsg/__init__.py | 107 + generated/nirfsg/nirfsg/_attributes.py | 149 + generated/nirfsg/nirfsg/_converters.py | 345 + generated/nirfsg/nirfsg/_library.py | 982 ++ .../nirfsg/nirfsg/_library_interpreter.py | 949 ++ generated/nirfsg/nirfsg/_library_singleton.py | 58 + generated/nirfsg/nirfsg/_visatype.py | 28 + generated/nirfsg/nirfsg/enums.py | 2045 +++ generated/nirfsg/nirfsg/errors.py | 112 + generated/nirfsg/nirfsg/session.py | 7801 ++++++++++ .../nirfsg/nirfsg/unit_tests/_matchers.py | 317 + .../nirfsg/nirfsg/unit_tests/_mock_helper.py | 1276 ++ generated/nirfsg/setup.py | 55 + generated/nirfsg/tox-system_tests.ini | 69 + src/nirfsg/metadata/__init__.py | 26 + src/nirfsg/metadata/attributes.py | 5503 +++++++ src/nirfsg/metadata/attributes_addon.py | 6 + src/nirfsg/metadata/config.py | 64 + src/nirfsg/metadata/config_addon.py | 8 + src/nirfsg/metadata/enums.py | 3913 +++++ src/nirfsg/metadata/enums_addon.py | 6 + src/nirfsg/metadata/functions.py | 5547 +++++++ src/nirfsg/metadata/functions_addon.py | 9 + src/nirfsg/nirfsg.mak | 15 + tox-travis.ini | 17 +- tox.ini | 16 +- 45 files changed, 47745 insertions(+), 21 deletions(-) create mode 100644 docs/_static/nirfsg_documentation.inc create mode 100644 docs/_static/nirfsg_usage.inc create mode 100644 docs/nirfsg/.readthedocs.yaml create mode 100644 docs/nirfsg/about_nirfsg.inc create mode 100644 docs/nirfsg/class.rst create mode 100644 docs/nirfsg/conf.py create mode 100644 docs/nirfsg/enums.rst create mode 100644 docs/nirfsg/errors.rst create mode 100644 docs/nirfsg/examples.rst create mode 100644 docs/nirfsg/index.rst create mode 100644 docs/nirfsg/installation.inc create mode 100644 docs/nirfsg/nirfsg.rst create mode 100644 docs/nirfsg/rep_caps.rst create mode 100644 docs/nirfsg/status.inc create mode 100644 docs/nirfsg/toc.inc create mode 100644 generated/nirfsg/README.rst create mode 100644 generated/nirfsg/nirfsg/VERSION create mode 100644 generated/nirfsg/nirfsg/__init__.py create mode 100644 generated/nirfsg/nirfsg/_attributes.py create mode 100644 generated/nirfsg/nirfsg/_converters.py create mode 100644 generated/nirfsg/nirfsg/_library.py create mode 100644 generated/nirfsg/nirfsg/_library_interpreter.py create mode 100644 generated/nirfsg/nirfsg/_library_singleton.py create mode 100644 generated/nirfsg/nirfsg/_visatype.py create mode 100644 generated/nirfsg/nirfsg/enums.py create mode 100644 generated/nirfsg/nirfsg/errors.py create mode 100644 generated/nirfsg/nirfsg/session.py create mode 100644 generated/nirfsg/nirfsg/unit_tests/_matchers.py create mode 100644 generated/nirfsg/nirfsg/unit_tests/_mock_helper.py create mode 100644 generated/nirfsg/setup.py create mode 100644 generated/nirfsg/tox-system_tests.ini create mode 100644 src/nirfsg/metadata/__init__.py create mode 100644 src/nirfsg/metadata/attributes.py create mode 100644 src/nirfsg/metadata/attributes_addon.py create mode 100644 src/nirfsg/metadata/config.py create mode 100644 src/nirfsg/metadata/config_addon.py create mode 100644 src/nirfsg/metadata/enums.py create mode 100644 src/nirfsg/metadata/enums_addon.py create mode 100644 src/nirfsg/metadata/functions.py create mode 100644 src/nirfsg/metadata/functions_addon.py create mode 100644 src/nirfsg/nirfsg.mak diff --git a/Makefile b/Makefile index ea6fe2f2c1..2425a5e17e 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # In alphabetical order except put nifake first and nimodinst/nitclk last # - nifake first to get the most code generator coverage # - nimodinst last so that the version from nimodinst is used for any global versions (docs/conf.py) -ALL_DRIVERS := nifake nidcpower nidigital nidmm nifgen niscope niswitch nise nimodinst nitclk +ALL_DRIVERS := nifake nirfsg nidcpower nidigital nidmm nifgen niscope niswitch nise nimodinst nitclk DRIVERS ?= $(ALL_DRIVERS) ROOT_DIR := $(abspath .) diff --git a/README.rst b/README.rst index 0246351159..6a16b5285f 100644 --- a/README.rst +++ b/README.rst @@ -289,6 +289,52 @@ NI-ModInst Python API Status +NI-RFSG Python API Status +------------------------- + ++-------------------------------+-----------------------+ +| NI-RFSG (nirfsg) | | ++===============================+=======================+ +| Driver Version Tested Against | 2023 Q1.1 | ++-------------------------------+-----------------------+ +| PyPI Version | |nirfsgLatestVersion| | ++-------------------------------+-----------------------+ +| Supported Python Version | |nirfsgPythonVersion| | ++-------------------------------+-----------------------+ +| Documentation | |nirfsgDocs| | ++-------------------------------+-----------------------+ +| Open Issues | |nirfsgOpenIssues| | ++-------------------------------+-----------------------+ +| Open Pull Requests | |nirfsgOpenPRs| | ++-------------------------------+-----------------------+ + + +.. |nirfsgLatestVersion| image:: http://img.shields.io/pypi/v/nirfsg.svg + :alt: Latest NI-RFSG Version + :target: http://pypi.python.org/pypi/nirfsg + + +.. |nirfsgPythonVersion| image:: http://img.shields.io/pypi/pyversions/nirfsg.svg + :alt: NI-RFSG supported Python versions + :target: http://pypi.python.org/pypi/nirfsg + + +.. |nirfsgDocs| image:: https://readthedocs.org/projects/nirfsg/badge/?version=latest + :alt: NI-RFSG Python API Documentation Status + :target: https://nirfsg.readthedocs.io/en/latest + + +.. |nirfsgOpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python/nirfsg.svg + :alt: Open Issues + Pull Requests for NI-RFSG + :target: https://github.com/ni/nimi-python/issues?q=is%3Aopen+is%3Aissue+label%3Anirfsg + + +.. |nirfsgOpenPRs| image:: https://img.shields.io/github/issues-pr/ni/nimi-python/nirfsg.svg + :alt: Pull Requests for NI-RFSG + :target: https://github.com/ni/nimi-python/pulls?q=is%3Aopen+is%3Aissue+label%3Anirfsg + + + NI-SCOPE Python API Status -------------------------- diff --git a/docs/_static/nirfsg_documentation.inc b/docs/_static/nirfsg_documentation.inc new file mode 100644 index 0000000000..b9750d3c54 --- /dev/null +++ b/docs/_static/nirfsg_documentation.inc @@ -0,0 +1,8 @@ +.. _documentation-section: + +Documentation +============= + +Documentation is available `here `_. + + diff --git a/docs/_static/nirfsg_usage.inc b/docs/_static/nirfsg_usage.inc new file mode 100644 index 0000000000..f1a1b16e70 --- /dev/null +++ b/docs/_static/nirfsg_usage.inc @@ -0,0 +1,13 @@ +Usage +------ + +The following is a basic example of using the **nirfsg** module to open a session to a Function Generator and generate a sine wave for 5 seconds. + +.. code-block:: python + + import nirfsg + with nirfsg.Session('SwitchExecutiveExample') as session: + session.connect('DIOToUUT') + +`Other usage examples can be found on GitHub. `_ + diff --git a/docs/nirfsg/.readthedocs.yaml b/docs/nirfsg/.readthedocs.yaml new file mode 100644 index 0000000000..037adad77d --- /dev/null +++ b/docs/nirfsg/.readthedocs.yaml @@ -0,0 +1,51 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Why Use A Configuration File? +# https://docs.readthedocs.io/en/stable/config-file/index.html +# The main advantages of using a configuration file over the web interface are: +# * Settings are per version rather than per project. +# * Settings live in your VCS. +# * They enable reproducible build environments over time. +# * Some settings are only available using a configuration file + +# Required +version: 2 + +# Set the version of Python and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.11" + jobs: + # pre_build: + # # Check for broken external links + # - python -m sphinx -b linkcheck -D linkcheck_timeout=1 docs/ _build/linkcheck + post_checkout: + # https://docs.readthedocs.io/en/stable/build-customization.html#cancel-build-based-on-a-condition + # Build-cancellation rules are recommended for monorepos. + # Cancel building pull requests when there aren't changes in any of these paths: docs/_static/ docs/nirfsg/. + # + # If there are no changes (git diff exits with 0) we force the command to return with 183. + # This is a special exit code on Read the Docs that will cancel the build immediately. + - | + if [ "$READTHEDOCS_VERSION_TYPE" = "external" ] && git diff --quiet origin/master -- docs/_static/ docs/nirfsg/; + then + exit 183; + fi + +# Have Read the Docs build documentation with Sphinx +sphinx: + builder: html + configuration: docs/nirfsg/conf.py + +# If using Sphinx, optionally build your docs in additional formats such as PDF +formats: + - epub + - pdf + +# Declare the Python requirements required to build your docs +python: + install: + - requirements: docs/requirements.txt diff --git a/docs/nirfsg/about_nirfsg.inc b/docs/nirfsg/about_nirfsg.inc new file mode 100644 index 0000000000..90b7d372a4 --- /dev/null +++ b/docs/nirfsg/about_nirfsg.inc @@ -0,0 +1,13 @@ +.. _about-section: + +About +===== + +The **nirfsg** module provides a Python API for NI-RFSG. The code is maintained in the Open Source repository for `nimi-python `_. + +Support Policy +-------------- +**nirfsg** supports all the Operating Systems supported by NI-RFSG. + +It follows `Python Software Foundation `_ support policy for different versions of CPython. + diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst new file mode 100644 index 0000000000..3d4e7ee3e7 --- /dev/null +++ b/docs/nirfsg/class.rst @@ -0,0 +1,12588 @@ +.. py:module:: nirfsg + +Session +======= + +.. py:class:: Session(self, resource_name, id_query, reset_device, options={}) + + + + Opens a session to the device you specify as the :py:attr:`nirfsg.Session.RESOURCE_NAME` and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. This method also configures the device through the :py:attr:`nirfsg.Session.OPTION_STRING` input. + + + + .. note:: For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0. + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param resource_name: + + + Specifies the resource name of the device to initialize. + + + + + :type resource_name: str + + :param id_query: + + + Specifies whether you want NI-RFSG to perform an ID query. + + + + + :type id_query: bool + + :param reset_device: + + + Specifies whether you want to reset the NI-RFSG device during the initialization procedure. + + + + + :type reset_device: bool + + :param options: + + + Specifies the initial value of certain properties for the session. The + syntax for **options** is a dictionary of properties with an assigned + value. For example: + + { 'simulate': False } + + You do not have to specify a value for all the properties. If you do not + specify a value for a property, the default value is used. + + Advanced Example: + { 'simulate': True, 'driver_setup': { 'Model': '', 'BoardType': '' } } + + +-------------------------+---------+ + | Property | Default | + +=========================+=========+ + | range_check | True | + +-------------------------+---------+ + | query_instrument_status | False | + +-------------------------+---------+ + | cache | True | + +-------------------------+---------+ + | simulate | False | + +-------------------------+---------+ + | record_value_coersions | False | + +-------------------------+---------+ + | driver_setup | {} | + +-------------------------+---------+ + + + :type options: str + + +Methods +======= + +abort +----- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: abort() + + Stops signal generation. + + + + + +allocate_arb_waveform +--------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: allocate_arb_waveform(waveform_name, size_in_samples) + + Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the :py:meth:`nirfsg.Session.write_arb_waveform` method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + + :param waveform_name: + + + Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. + + + + + :type waveform_name: str + :param size_in_samples: + + + Specifies the number of samples to reserve in the onboard memory for the specified waveform. Each I/Q pair is considered one sample. + + + + + :type size_in_samples: int + +change_external_calibration_password +------------------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: change_external_calibration_password(old_password, new_password) + + Changes the external calibration password of the device. + + + + + + :param old_password: + + + Specifies the old (current) external calibration password. This password is case sensitive. + + + + + :type old_password: str + :param new_password: + + + Specifies the new (desired) external calibration password. + + + + + :type new_password: str + +check_attribute_vi_boolean +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_attribute_vi_boolean(attribute, value) + + Checks the validity of a value you specify for a ViBoolean property. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_boolean` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_boolean` + + + :param attribute: + + + Pass the ID of a property. + + + + + :type attribute: int + :param value: + + + Pass the value that you want to verify as a valid value for the property. + + + + + :type value: bool + +check_attribute_vi_int32 +------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_attribute_vi_int32(attribute, value) + + Checks the validity of a value you specify for a ViInt32 property. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_int32` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_int32` + + + :param attribute: + + + Pass the ID of a property. + + + + + :type attribute: int + :param value: + + + Pass the value that you want to verify as a valid value for the property. + + + + + :type value: int + +check_attribute_vi_int64 +------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_attribute_vi_int64(attribute, value) + + Checks the validity of a value you specify for a ViInt64 property. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_int64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_int64` + + + :param attribute: + + + Pass the ID of a property. + + + + + :type attribute: int + :param value: + + + Pass the value that you want to verify as a valid value for the property. + + + + + :type value: int + +check_attribute_vi_real64 +------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_attribute_vi_real64(attribute, value) + + Checks the validity of a value you specify for a ViReal64 property. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_real64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_real64` + + + :param attribute: + + + Pass the ID of a property. + + + + + :type attribute: int + :param value: + + + Pass the value that you want to verify as a valid value for the property. + + + + + :type value: float + +check_attribute_vi_session +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_attribute_vi_session(attribute) + + Checks the validity of a value you specify for a ViSession property. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_session` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_session` + + + :param attribute: + + + Pass the ID of a property. + + + + + :type attribute: int + +check_attribute_vi_string +------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_attribute_vi_string(attribute, value) + + Checks the validity of a value you specify for a ViString property. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_string` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_string` + + + :param attribute: + + + Pass the ID of a property. + + + + + :type attribute: int + :param value: + + + Pass the value that you want to verify as a valid value for the property. The value must be a NULL-terminated string. + + + + + :type value: str + +check_generation_status +----------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_generation_status() + + Checks the status of the generation. Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. + + + + + + :rtype: bool + :return: + + + Returns information about the completion of signal generation. + + + + + +check_if_configuration_list_exists +---------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_if_configuration_list_exists(list_name) + + Returns whether the configuration list that you specify as :py:attr:`nirfsg.Session.LIST_NAME` exists. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param list_name: + + + Specifies the name of the configuration list. This string is case-insensitive. + + + + + :type list_name: str + + :rtype: bool + :return: + + + Returns True if the configuration list exists. + + + + + +check_if_script_exists +---------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_if_script_exists(script_name) + + Returns whether the script that you specify as :py:attr:`nirfsg.Session.SCRIPT_NAME` exists. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param script_name: + + + Specifies the name of the script. This string is case-insensitive. + + + + + :type script_name: str + + :rtype: bool + :return: + + + Returns True if the script exists. + + + + + +check_if_waveform_exists +------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: check_if_waveform_exists(waveform_name) + + Returns whether the waveform that you specify as :py:attr:`nirfsg.Session.WAVEFORM_NAME` exists. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param waveform_name: + + + Specifies the name used to store the waveform. This string is case-insensitive. + + + + + :type waveform_name: str + + :rtype: bool + :return: + + + Returns True if the waveform exists. + + + + + +clear_all_arb_waveforms +----------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: clear_all_arb_waveforms() + + Deletes all currently defined waveforms and scripts. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + +clear_error +----------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: clear_error() + + Clears the error information associated with the session. If you pass VI_NULL for the :py:attr:`nirfsg.Session.VI` parameter, this method clears the error information for the current execution thread. + + + + .. note:: The :py:meth:`nirfsg.Session._get_error` method clears the error information after it is retrieved. A call to the :py:meth:`nirfsg.Session.clear_error` method is necessary only when you do not use a call to the :py:meth:`nirfsg.Session._get_error` method to retrieve error information. + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + +clear_self_calibrate_range +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: clear_self_calibrate_range() + + Clears the data obtained from the :py:meth:`nirfsg.Session.self_calibrate_range` method. + + + + + +close +----- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: close() + + Aborts any signal generation in progress and destroys the instrument driver session. + + + + .. note:: After calling this method, you cannot use NI-RFSG again until you call the :py:meth:`nirfsg.Session.Init` method or the :py:meth:`nirfsg.Session.__init__` method. + + .. note:: One or more of the referenced methods are not in the Python API for this driver. + + .. note:: This method is not needed when using the session context manager + + + +commit +------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: commit() + + Programs the device with the correct settings. Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. + + + + + +configure_deembedding_table_interpolation_linear +------------------------------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_deembedding_table_interpolation_linear(port, table_name, format) + + Selects the linear interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + + + + + :param port: + + + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + + + + :type port: str + :param table_name: + + + Specifies the name of the table. + + + + + :type table_name: str + :param format: + + + Specifies the format of parameters to interpolate. + + + + + :type format: :py:data:`nirfsg.Format` + +configure_deembedding_table_interpolation_nearest +------------------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_deembedding_table_interpolation_nearest(port, table_name) + + Selects the nearest interpolation method. NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. + + + + + + :param port: + + + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + + + + :type port: str + :param table_name: + + + Specifies the name of the table. + + + + + :type table_name: str + +configure_deembedding_table_interpolation_spline +------------------------------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_deembedding_table_interpolation_spline(port, table_name) + + Selects the spline interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + + + + + :param port: + + + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + + + + :type port: str + :param table_name: + + + Specifies the name of the table. + + + + + :type table_name: str + +configure_digital_edge_configuration_list_step_trigger +------------------------------------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_digital_edge_configuration_list_step_trigger(source, edge) + + Configures the Configuration List Step trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + + :param source: + + + Specifies the trigger source terminal for the digital edge Configuration List Step trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_configuration_list_step_trigger_source` property to this value. Refer to this property for possible values. + + + + + :type source: str + :param edge: + + + Specifies the active edge for the digital edge Configuration List Step trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_configuration_list_step_trigger_edge` property to this value. + + + + + :type edge: int + +configure_digital_edge_script_trigger +------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_digital_edge_script_trigger(trigger_id, source, edge) + + Configures the specified Script Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + + + + + + :param trigger_id: + + + Specifies the Script Trigger to configure. + + + + + :type trigger_id: str + :param source: + + + Specifies the source terminal for the digital edge Script Trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_script_trigger_source` property to this value. + + + + + :type source: str + :param edge: + + + Specifies the active edge for the digital edge Script Trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_script_trigger_edge` property to this value. + + + + + :type edge: int + +configure_digital_edge_start_trigger +------------------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_digital_edge_start_trigger(source, edge) + + Configures the Start Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + + + + .. note:: For the PXIe-5654/5654 with PXIe-5696, the Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + + + :param source: + + + Specifies the source terminal for the digital edge trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_start_trigger_source` property to this value. + + + + + :type source: str + :param edge: + + + Specifies the active edge for the Start Trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_start_trigger_edge` property to this value. + + + + + :type edge: int + +configure_digital_level_script_trigger +-------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_digital_level_script_trigger(trigger_id, source, level) + + Configures a specified Script Trigger for digital level triggering. The NI-RFSG device must be in the Configuration state before calling this method. + + + + + + :param trigger_id: + + + Specifies the Script Trigger to configure. + + + + + :type trigger_id: str + :param source: + + + Specifies the trigger source terminal for the digital level Script Trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_level_script_trigger_source` property to this value. + + + + + :type source: str + :param level: + + + Specifies the active level for the digital level Script Trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_level_script_trigger_active_level` property to this value. + + + + + :type level: int + +configure_digital_modulation_user_defined_waveform +-------------------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_digital_modulation_user_defined_waveform(number_of_samples, user_defined_waveform) + + Specifies the message signal used for digital modulation when the :py:attr:`nirfsg.Session.digital_modulation_waveform_type` property is set to :py:data:`~nirfsg.NIRFSG_VAL_USER_DEFINED`. + + + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + + :param number_of_samples: + + + Specifies the number of samples in the message signal. + + + + + :type number_of_samples: int + :param user_defined_waveform: + + + Specifies the user-defined message signal used for digital modulation. + + + + + :type user_defined_waveform: list of int + +configure_generation_mode +------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_generation_mode(generation_mode) + + Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + + :param generation_mode: + + + Specifies the mode used by NI-RFSG for generating an RF output signal. + + + + + :type generation_mode: int + +configure_output_enabled +------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_output_enabled(output_enabled) + + Enables or disables signal output. Setting :py:attr:`nirfsg.Session.output_enabled` to False while in the Generation state attenuates the generated signal so that no signal is output. + + + + + + :param output_enabled: + + + Specifies whether you want to enable or disable the output. + + + + + :type output_enabled: bool + +configure_p2_p_endpoint_fullness_start_trigger +---------------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_p2_p_endpoint_fullness_start_trigger(p2p_endpoint_fullness_level) + + Configures the Start Trigger to detect peer-to-peer endpoint fullness. Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the :py:attr:`nirfsg.Session.P2P_ENDPOINT_FULLNESS_LEVEL` parameter. The NI-RFSG device must be in the Configuration state before calling this method. + + + + .. note:: Due to an additional internal FIFO in the RF signal generator, the writer peer actually writes 2,304 bytes more than the quantity of data specified by this method to satisfy the trigger level. + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param p2p_endpoint_fullness_level: + + + Specifies the quantity of data in the FIFO endpoint that asserts the trigger. Units are samples per channel. The default value is -1, which allows NI-RFSG to select the appropriate fullness value. + + + + + :type p2p_endpoint_fullness_level: int + +configure_power_level_type +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_power_level_type(power_level_type) + + Specifies the way the driver interprets the :py:attr:`nirfsg.Session.power_level` property. In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. + + + + + + :param power_level_type: + + + Specifies the way the driver interprets the value of the :py:attr:`nirfsg.Session.power_level` property. NI-RFSG sets the :py:attr:`nirfsg.Session.power_level_type` property to this value. + + + + + :type power_level_type: int + +configure_pxi_chassis_clk10 +--------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_pxi_chassis_clk10(pxi_clk10_source) + + Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + + :param pxi_clk10_source: + + + Specifies the source of the Reference Clock signal. + + + + + :type pxi_clk10_source: str + +configure_ref_clock +------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_ref_clock(ref_clock_source, ref_clock_rate) + + Configures the NI-RFSG device Reference Clock. The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. + + + + + + :param ref_clock_source: + + + Specifies the source of Reference Clock signal. + + + + + :type ref_clock_source: str + :param ref_clock_rate: + + + Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is :py:data:`~nirfsg.NIRFSG_VAL_AUTO`, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the :py:attr:`nirfsg.Session.ref_clock_source` parameter is set to :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR`, :py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR` or :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2`. Refer to the :py:attr:`nirfsg.Session.ref_clock_rate` property for possible values. + + + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + :type ref_clock_rate: float + +configure_rf +------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_rf(frequency, power_level) + + Configures the frequency and power level of the RF output signal. The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. + + + + + + :param frequency: + + + Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal. + + + + + :type frequency: float + :param power_level: + + + Specifies either the average power level or peak power level of the generated RF signal, depending on the :py:attr:`nirfsg.Session.power_level_type` property. + + + + + :type power_level: float + +configure_signal_bandwidth +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_signal_bandwidth(signal_bandwidth) + + Configures the signal bandwidth of the arbitrary waveform. The NI-RFSG device must be in the Configuration state before you call this method. Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband. + + + + + + :param signal_bandwidth: + + + Specifies the signal bandwidth used by NI-RFSG to generate an RF output signal. NI-RFSG sets the :py:attr:`nirfsg.Session.signal_bandwidth` property to this value. + + + + + :type signal_bandwidth: float + +configure_software_script_trigger +--------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_software_script_trigger(trigger_id) + + Configures the Script Trigger for software triggering. Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. + + + + + + :param trigger_id: + + + Specifies the Script Trigger to configure. + + + + + :type trigger_id: str + +configure_software_start_trigger +-------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: configure_software_start_trigger() + + Configures the Start Trigger for software triggering. Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. + + + + + +create_configuration_list +------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: create_configuration_list(list_name, configuration_list_attributes, set_as_active_list) + + Creates an empty configuration list. Use the :py:attr:`nirfsg.Session.active_configuration_list` property to enable a configuration list created by this method. Call the :py:meth:`nirfsg.Session.create_configuration_list_step` method to add steps to the configuration list. + + + + + + :param list_name: + + + Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. + + + + + :type list_name: str + :param configuration_list_attributes: + + + Specifies the properties that you intend to change between configuration list steps. Calling the :py:meth:`nirfsg.Session.create_configuration_list` method allocates space for each of the configuration list properties. When you use an NI-RFSG Set property method to set one of the properties in the configuration list, that property is set for one of the configuration list steps. Use the :py:attr:`nirfsg.Session.active_configuration_list_step` property to specify which configuration list step to configure. + + + + + :type configuration_list_attributes: list of int + :param set_as_active_list: + + + Sets this list as the :py:attr:`nirfsg.Session.active_configuration_list` property when this parameter is enabled. NI recommends that you set this parameter to True when creating the list. + + + + + :type set_as_active_list: bool + +create_configuration_list_step +------------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: create_configuration_list_step(set_as_active_step) + + Creates a new configuration list step in the configuration list specified by the :py:attr:`nirfsg.Session.active_configuration_list` property. When you create a configuration list step, a new instance of each property specified by the configuration list properties is created. Configuration list properties are specified when a configuration list is created. The new instance of a property can be accessed with any Set property method using the :py:attr:`nirfsg.Session.active_configuration_list` and :py:attr:`nirfsg.Session.active_configuration_list_step` properties. + + + + + + :param set_as_active_step: + + + Sets this step as the :py:attr:`nirfsg.Session.active_configuration_list_step` property list specified by the :py:attr:`nirfsg.Session.active_configuration_list` property. NI recommends that you set this parameter to True when creating the list steps. + + + + + :type set_as_active_step: bool + +create_deembedding_sparameter_table_s2_p_file +--------------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: create_deembedding_sparameter_table_s2_p_file(port, table_name, s2p_file_path, sparameter_orientation) + + Creates an S-parameter de-embedding table for the port based on the specified S2P file. + + + + + + :param port: + + + yet to be defined + + + + + :type port: str + :param table_name: + + + yet to be defined + + + + + :type table_name: str + :param s2p_file_path: + + + yet to be defined + + + + + :type s2p_file_path: str + :param sparameter_orientation: + + + yet to be defined + + + + + :type sparameter_orientation: int + +delete_all_deembedding_tables +----------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: delete_all_deembedding_tables() + + Deletes all configured de-embedding tables for the session. + + + + + +delete_configuration_list +------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: delete_configuration_list(list_name) + + Deletes a previously created configuration list and all the configuration list steps in the specified configuration list. When a configuration list step is deleted, all the instances of the properties associated with the configuration list step are also removed. When you delete the active configuration list, NI-RFSG automatically resets the :py:attr:`nirfsg.Session.active_configuration_list` property to '' (empty string), which indicates no list is active, and the :py:attr:`nirfsg.Session.active_configuration_list_step` property to 0. + + + + + + :param list_name: + + + Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. + + + + + :type list_name: str + +delete_deembedding_table +------------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: delete_deembedding_table(port, table_name) + + Deletes the selected de-embedding table for a given port. + + + + + + :param port: + + + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + + + + :type port: str + :param table_name: + + + Specifies the name of the table. + + + + + :type table_name: str + +disable +------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: disable() + + Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected. + + + + + +disable_configuration_list_step_trigger +--------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: disable_configuration_list_step_trigger() + + Configures the device not to receive triggers for the configuration list. The configuration list does not advance steps if this trigger is disabled. Call this method only if a previously configured trigger needs to be disabled. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + +disable_script_trigger +---------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: disable_script_trigger(trigger_id) + + Configures the device not to wait for the specified Script Trigger. Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + + :param trigger_id: + + + Specifies the Script trigger to configure. + + + + + :type trigger_id: str + +disable_start_trigger +--------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: disable_start_trigger() + + Configures the device not to wait for a Start Trigger. This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. + + + + + +error_query +----------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: error_query(error_message) + + Reads an error code and an error message from the instrument error queue. + + + + + + :param error_message: + + + Returns the error message string read from the instrument error message queue. + + + + + :type error_message: str + + :rtype: int + :return: + + + Returns the error code read from the instrument error queue. + + + + + +export_signal +------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: export_signal(signal, signal_identifier, output_terminal) + + Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + + :param signal: + + + Specifies the type of signal to route. + + + + + :type signal: int + :param signal_identifier: + + + Specifies which instance of the selected signal to export. This parameter is useful when you set the :py:attr:`nirfsg.Session.SIGNAL` parameter to :py:data:`~nirfsg.NIRFSG_VAL_SCRIPT_TRIGGER` or :py:data:`~nirfsg.NIRFSG_VAL_MARKER_EVENT`. Otherwise, set the :py:attr:`nirfsg.Session.SIGNAL_IDENTIFIER` parameter to '' (empty string). + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + :type signal_identifier: str + :param output_terminal: + + + Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841. + + + + + :type output_terminal: str + +initiate +-------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: initiate() + + Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the :py:meth:`nirfsg.Session.abort` method. + + + + .. note:: This method will return a Python context manager that will initiate on entering and abort on exit. + + + +load_configurations_from_file +----------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: load_configurations_from_file(file_path) + + Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].load_configurations_from_file` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.load_configurations_from_file` + + + :param file_path: + + + Specifies the absolute path of the file from which the NI-RFSG loads the configurations. + + + + + :type file_path: str + +lock +---- + + .. py:currentmodule:: nirfsg.Session + +.. py:method:: lock() + + Obtains a multithread lock on the device session. Before doing so, the + software waits until all other execution threads release their locks + on the device session. + + Other threads may have obtained a lock on this session for the + following reasons: + + - The application called the :py:meth:`nirfsg.Session.lock` method. + - A call to NI-RFSG locked the session. + - After a call to the :py:meth:`nirfsg.Session.lock` method returns + successfully, no other threads can access the device session until + you call the :py:meth:`nirfsg.Session.unlock` method or exit out of the with block when using + lock context manager. + - Use the :py:meth:`nirfsg.Session.lock` method and the + :py:meth:`nirfsg.Session.unlock` method around a sequence of calls to + instrument driver methods if you require that the device retain its + settings through the end of the sequence. + + You can safely make nested calls to the :py:meth:`nirfsg.Session.lock` method + within the same thread. To completely unlock the session, you must + balance each call to the :py:meth:`nirfsg.Session.lock` method with a call to + the :py:meth:`nirfsg.Session.unlock` method. + + One method for ensuring there are the same number of unlock method calls as there is lock calls + is to use lock as a context manager + + .. code:: python + + with nirfsg.Session('dev1') as session: + with session.lock(): + # Calls to session within a single lock context + + The first `with` block ensures the session is closed regardless of any exceptions raised + + The second `with` block ensures that unlock is called regardless of any exceptions raised + + :rtype: context manager + :return: + When used in a `with` statement, :py:meth:`nirfsg.Session.lock` acts as + a context manager and unlock will be called when the `with` block is exited + +perform_power_search +-------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: perform_power_search() + + Performs a power search if the :py:attr:`nirfsg.Session.alc_control` property is disabled. Calling this method disables modulation for a short time while the device levels the output signal. + + + + .. note:: Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search. + + + +perform_thermal_correction +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: perform_thermal_correction() + + Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + + + + + +query_arb_waveform_capabilities +------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: query_arb_waveform_capabilities() + + Queries and returns the waveform capabilities of the NI-RFSG device. These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. + + + + + + :rtype: tuple (max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size) + + WHERE + + max_number_waveforms (int): + + + Returns the value of the :py:attr:`nirfsg.Session.arb_max_number_waveforms` property. This value is the maximum number of waveforms you can write. + + + + + waveform_quantum (int): + + + Returns the value of the :py:attr:`nirfsg.Session.arb_waveform_quantum` property. If the waveform quantum is *q*, then the size of the waveform that you write should be a multiple of *q*. The units are expressed in samples. + + + + + min_waveform_size (int): + + + Returns the value of the :py:attr:`nirfsg.Session.arb_waveform_size_min` property. The number of samples of the waveform that you write must be greater than or equal to this value. + + + + + max_waveform_size (int): + + + Returns the value of the :py:attr:`nirfsg.Session.arb_waveform_size_max` property. The number of samples of the waveform that you write must be less than or equal to this value. + + + + + +read_and_download_waveform_from_file_tdms +----------------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: read_and_download_waveform_from_file_tdms(waveform_name, file_path, waveform_index) + + Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators. + + + + + + :param waveform_name: + + + Specifies the name used to store the waveform. This string is case-insensitive. + + + + + :type waveform_name: str + :param file_path: + + + Specifies the absolute path to the TDMS file from which the NI-RFSG reads the waveforms. + + + + + :type file_path: str + :param waveform_index: + + + Specifies the index of the waveform to be read from the TDMS file. + + + + + :type waveform_index: int + +reset +----- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: reset() + + Resets all properties to their default values and moves the NI-RFSG device to the Configuration state. This method aborts the generation, deletes all de-embedding tables, clears all routes, and resets session properties to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route. + + + + .. note:: This method resets all configured routes for the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 in NI-RFSA and NI-RFSG. + + + +reset_attribute +--------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: reset_attribute(attribute_id) + + Resets the property to its default value. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].reset_attribute` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.reset_attribute` + + + :param attribute_id: + + + Pass the ID of a property. + + + + + :type attribute_id: int + +reset_device +------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: reset_device() + + Performs a hard reset on the device. + + + + .. note:: You must call the :py:meth:`nirfsg.Session.reset_device` method if the NI-RFSG device has shut down because of a high-temperature condition. + + + +reset_with_defaults +------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: reset_with_defaults() + + Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store. + + + + + +reset_with_options +------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: reset_with_options(steps_to_omit) + + Resets all properties to default values and specifies steps to omit during the reset process, such as signal routes. + + + + + + :param steps_to_omit: + + + Specifies a list of steps to skip during the reset process. The default value is :py:data:`~nirfsg.StepsToOmit.NONE`, which specifies that no step is omitted during reset. + + + + + :type steps_to_omit: int + +revision_query +-------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: revision_query(instrument_driver_revision, firmware_revision) + + Returns the revision numbers of the NI-RFSG driver and the instrument firmware. + + + + + + :param instrument_driver_revision: + + + Returns the value of the :py:attr:`nirfsg.Session.specific_driver_revision` property in the form of a string. + + + + + :type instrument_driver_revision: str + :param firmware_revision: + + + Returns the value of the :py:attr:`nirfsg.Session.instrument_firmware_revision` property in the form of a string. + + + + + :type firmware_revision: str + +save_configurations_to_file +--------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: save_configurations_to_file(file_path) + + Saves the configurations of the session to the specified file. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].save_configurations_to_file` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.save_configurations_to_file` + + + :param file_path: + + + Specifies the absolute path of the file to which the NI-RFSG saves the configurations. + + + + + :type file_path: str + +select_arb_waveform +------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: select_arb_waveform(name) + + Specifies the waveform that is generated upon a call to the :py:meth:`nirfsg.Session._initiate` method when the **generationMode** parameter of the :py:meth:`nirfsg.Session.configure_generation_mode` method is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM`. You must specify a waveform using the :py:attr:`nirfsg.Session.NAME` parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param name: + + + Specifies the name of the stored waveform to generate. This is a case-insensitive alphanumeric string that does not use reserved words. NI-RFSG sets the :py:attr:`nirfsg.Session.arb_selected_waveform` property to this value. + + + + + :type name: str + +self_cal +-------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: self_cal() + + Performs an internal self-calibration on the device and associated modules that support self-calibration. If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module. + + + + .. note:: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842/5860 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. + + + +self_calibrate_range +-------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: self_calibrate_range(steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) + + Self-calibrates all configurations within the specified frequency and peak power level limits. + + + + .. note:: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. + + + + :param steps_to_omit: + + + Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. + + + + + :type steps_to_omit: int + :param min_frequency: + + + Specifies the minimum frequency to calibrate. + + + + + :type min_frequency: float + :param max_frequency: + + + Specifies the maximum frequency to calibrate. + + + + + :type max_frequency: float + :param min_power_level: + + + Specifies the minimum power level to calibrate. + + + + + :type min_power_level: float + :param max_power_level: + + + Specifies the maximum power level to calibrate. + + + + + :type max_power_level: float + +self_test +--------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: self_test() + + TBD + + + + + +send_software_edge_trigger +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: send_software_edge_trigger(trigger, trigger_identifier) + + Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger. + + + + + + :param trigger: + + + Specifies the trigger to send. + + + + + :type trigger: int + :param trigger_identifier: + + + Specifies the Script Trigger to configure. This parameter is valid only when you set the :py:attr:`nirfsg.Session.TRIGGER` parameter to :py:data:`~nirfsg.NIRFSG_VAL_START_TRIGGER`. Otherwise, set the :py:attr:`nirfsg.Session.TRIGGER_IDENTIFIER` parameter to '' (empty string). + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + :type trigger_identifier: str + +unlock +------ + + .. py:currentmodule:: nirfsg.Session + +.. py:method:: unlock() + + Releases a lock that you acquired on an device session using + :py:meth:`nirfsg.Session.lock`. Refer to :py:meth:`nirfsg.Session.unlock` for additional + information on session locks. + +wait_until_settled +------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: wait_until_settled(max_time_milliseconds) + + Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. Call this method after making a dynamic change to wait for the output signal to settle. + + + + + + :param max_time_milliseconds: + + + Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. + + + + + :type max_time_milliseconds: int + +write_arb_waveform +------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: write_arb_waveform(waveform_name, number_of_samples, i_data, q_data, more_data_pending) + + Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex baseband signal. If the waveform to write is already allocated using the :py:meth:`nirfsg.Session.allocate_arb_waveform` method, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. + + + + .. note:: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param waveform_name: + + + Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. + + + + + :type waveform_name: str + :param number_of_samples: + + + Specifies the number of samples in both the :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays. The :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays must have the same length. If the :py:attr:`nirfsg.Session.arb_waveform_quantum` property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + :type number_of_samples: int + :param i_data: + + + Specifies the in-phase (I) component of the complex baseband signal. + + + + + :type i_data: array.array("d") + :param q_data: + + + Specifies the quadrature (Q) component of the complex baseband signal. + + + + + :type q_data: array.array("d") + :param more_data_pending: + + + Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set :py:attr:`nirfsg.Session.MORE_DATA_PENDING` to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + :type more_data_pending: bool + +write_arb_waveform_f32 +---------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: write_arb_waveform_f32(waveform_name, number_of_samples, i_data, q_data, more_data_pending) + + Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex single baseband signal. If the waveform to write is already allocated using the :py:meth:`nirfsg.Session.allocate_arb_waveform` method, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E or PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. + + + + .. note:: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + + :param waveform_name: + + + Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. + + + + + :type waveform_name: str + :param number_of_samples: + + + Specifies the number of samples in both the :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays. The :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays must have the same length. If the :py:attr:`nirfsg.Session.arb_waveform_quantum` property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + :type number_of_samples: int + :param i_data: + + + Specifies the in-phase (I) component of the complex baseband signal. + + + + + :type i_data: array.array("f") + :param q_data: + + + Specifies the quadrature (Q) component of the complex baseband signal. + + + + + :type q_data: array.array("f") + :param more_data_pending: + + + Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set :py:attr:`nirfsg.Session.MORE_DATA_PENDING` to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. + + + + .. note:: One or more of the referenced properties are not in the Python API for this driver. + + + :type more_data_pending: bool + +write_p2_p_endpoint_i16 +----------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: write_p2_p_endpoint_i16(stream_endpoint, number_of_samples, endpoint_data) + + Writes an array of 16-bit integer data to the peer-to-peer endpoint. Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. + + + + + + :param stream_endpoint: + + + Specifies the stream endpoint FIFO to configure. + + + + + :type stream_endpoint: str + :param number_of_samples: + + + Specifies the number of samples to write into the endpoint FIFO. + + + + + :type number_of_samples: int + :param endpoint_data: + + + Specifies the array of data to write into the endpoint FIFO. The binary data is left-justified. + + + + + :type endpoint_data: list of int + +write_script +------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: write_script(script) + + Writes a script to the device to control waveform generation in Script mode. First, configure your device for Script mode by calling the :py:meth:`nirfsg.Session.configure_generation_mode` method. The NI-RFSG device must be in the Configuration state before calling the :py:meth:`nirfsg.Session.write_script` method. + + + + .. note:: If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported. + + + + :param script: + + + Specifies a string containing a syntactically correct script. NI-RFSG supports multiple scripts that are selected with the :py:attr:`nirfsg.Session.selected_script` property. Refer to `Scripting Instructions `_ for more information about using scripts. + + + + + :type script: str + + +Properties +========== + +absolute_delay +-------------- + + .. py:attribute:: absolute_delay + + Specifies the sub-Sample Clock delay, in seconds, to apply to the I/Q waveform. Use this property to reduce the trigger jitter when synchronizing multiple devices with NI-TClk. This property can also help maintain synchronization repeatability by writing the absolute delay value of a previous measurement to the current session. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** Seconds + + **Valid Values:** Plus or minus half of one Sample Clock period + + **Supported Devices:** PXIe-5820/5840/5841/5842 + + + + .. note:: - The resolution of this property is a method of the I/Q sample period at 15E(-6) times that sample period. + + - If this property is set, NI-TClk cannot perform any sub-Sample Clock adjustment. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------------------------+ + | Characteristic | Value | + +=======================+=============================================================+ + | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | + +-----------------------+-------------------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Absolute Delay** + - C Attribute: **NIRFSG_ATTR_ABSOLUTE_DELAY** + +active_configuration_list +------------------------- + + .. py:attribute:: active_configuration_list + + Specifies the name of the configuration list to make active. When you get or set a property and it is in the configuration list configuration, the property is set to or read from the active list step of the active configuration list. + + If the :py:attr:`nirfsg.Session.active_configuration_list` property is set to "" (empty string), no list is active. + + **Default Value:** "" + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.create_configuration_list` + + + + .. note:: For the PXIe-5650/5651/5652 and PXIe-5673E, when this property is set to a valid list name, the :py:attr:`nirfsg.Session.frequency_settling_units` property supports only :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` as a valid value. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Configuration List:Active List** + - C Attribute: **NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST** + +active_configuration_list_step +------------------------------ + + .. py:attribute:: active_configuration_list_step + + Specifies the step in the configuration list for `RF list mode `_ that you want to make active for configuration or initiation. + + Activating a list makes all properties in the list reflect the value of the properties that correspond to the set specified by the :py:attr:`nirfsg.Session.active_configuration_list` and the :py:attr:`nirfsg.Session.active_configuration_list_step` properties. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.create_configuration_list_step` + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Configuration List:Active Step** + - C Attribute: **NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP** + +ae_temperature +-------------- + + .. py:attribute:: ae_temperature + + Returns the amplitude extender module temperature in degrees Celsius. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXIe-5654 with PXIe-5696 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:AE Temperature (Degrees C)** + - C Attribute: **NIRFSG_ATTR_AE_TEMPERATURE** + +alc_control +----------- + + .. py:attribute:: alc_control + + Enables or disables the automatic leveling control (ALC). + + PXIe-5654 with PXIe-5696: If this property is enabled, the ALC is closed (closed-loop mode) and allows for better amplitude accuracy and wider amplitude dynamic range. If this property is disabled, the ALC is open (open-loop mode), which is ideal when using modulation. Disabling the :py:attr:`nirfsg.Session.alc_control` property also allows for NI-RFSG to perform an automatic power search. + + PXIe-5654: :py:data:`~nirfsg.AutomaticLevelControl.DISABLE` is the only supported value for this device. The PXIe-5654 does not support the ALC when used as a stand-alone device. + + **Default Value:** + + PXIe-5654: :py:data:`~nirfsg.AutomaticLevelControl.DISABLE` + + PXIe-5654 with PXIe-5696: :py:data:`~nirfsg.AutomaticLevelControl.ENABLE` + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Power Level Adjustment `_ + + `ALC Closed Loop Versus Open Loop `_ + + `Power Search `_ + + **Defined Values**: + + +--------------------------------------------------+---------+------------------+ + | Name | Value | Description | + +==================================================+=========+==================+ + | :py:data:`~nirfsg.AutomaticLevelControl.DISABLE` | 0 (0x0) | Disables ALC. | + +--------------------------------------------------+---------+------------------+ + | :py:data:`~nirfsg.AutomaticLevelControl.ENABLE` | 1 (0x1) | Enables the ALC. | + +--------------------------------------------------+---------+------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-----------------------------+ + | Characteristic | Value | + +=======================+=============================+ + | Datatype | enums.AutomaticLevelControl | + +-----------------------+-----------------------------+ + | Permissions | read-write | + +-----------------------+-----------------------------+ + | Repeated Capabilities | None | + +-----------------------+-----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:ALC Control** + - C Attribute: **NIRFSG_ATTR_ALC_CONTROL** + +allow_out_of_specification_user_settings +---------------------------------------- + + .. py:attribute:: allow_out_of_specification_user_settings + + Enables or disables warnings or errors when you set the frequency, power, and bandwidth values beyond the limits of the NI-RFSG device specifications. When you enable the :py:attr:`nirfsg.Session.allow_out_of_specification_user_settings` property, the driver does not report out-of-specification warnings or errors. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.AllowOutOfSpecificationUserSettings.DISABLE` + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +----------------------------------------------------------------+---------+----------------------------------------------+ + | Name | Value | Description | + +================================================================+=========+==============================================+ + | :py:data:`~nirfsg.AllowOutOfSpecificationUserSettings.DISABLE` | 0 (0x0) | Disables out-of-specification user settings. | + +----------------------------------------------------------------+---------+----------------------------------------------+ + | :py:data:`~nirfsg.AllowOutOfSpecificationUserSettings.ENABLE` | 1 (0x1) | Enables out-of-specification user settings. | + +----------------------------------------------------------------+---------+----------------------------------------------+ + + .. note:: Accuracy cannot be guaranteed outside of device specifications, and results may vary by module. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------+ + | Characteristic | Value | + +=======================+===========================================+ + | Datatype | enums.AllowOutOfSpecificationUserSettings | + +-----------------------+-------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Allow Out Of Specification User Settings** + - C Attribute: **NIRFSG_ATTR_ALLOW_OUT_OF_SPECIFICATION_USER_SETTINGS** + +amplitude_settling +------------------ + + .. py:attribute:: amplitude_settling + + Configures the amplitude settling accuracy in decibels. NI-RFSG waits until the RF power settles within the specified accuracy level after calling the :py:meth:`nirfsg.Session._initiate` method or :py:meth:`nirfsg.Session.wait_until_settled` method or prior to advancing to next step if using RF list mode. + + Any specified amplitude settling value that is above the acceptable minimum value is coerced down to the closest valid value. + + PXI/PXIe-5650/5651/5652: This property is for NI internal use only. + + **Units**: dB + + **Default Value:** + + PXIe-5654: 4 + + PXIe-5654 with PXIe-5696 (ALC disabled): 4 + + PXIe-5654 with PXIe-5696 (ALC enabled): 0.2 + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: 0.5 + + **Valid Values:** + + PXIe-5654: 1.5, 2, 4 + + PXIe-5654 with PXIe-5696 (ALC disabled): 1.5, 2, 4 + + PXIe-5654 with PXIe-5696 (ALC enabled): 0.2, 0.5 + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: 0.01 to 1 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Amplitude Settling Times `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Amplitude Settling** + - C Attribute: **NIRFSG_ATTR_AMPLITUDE_SETTLING** + +amp_path +-------- + + .. py:attribute:: amp_path + + Specifies the amplification path to use. The low harmonic path provides greater second and third harmonic spurious response, and the high power path provides higher output power. + + NI-RFSG automatically sets the value of this property based on power and frequency settings. Setting this property overrides the value chosen by NI-RFSG. + + **Default Value:** :py:data:`~nirfsg.AmpPath.LOW_HARMONIC` + + **Supported Devices:** PXIe-5654 with PXIe-5696 + + **Related Topics** + + `Low Harmonic Path Versus High Power Path `_ + + **Defined Values**: + + +-----------------------------------------+----------------+-----------------------------------------------------------+ + | Name | Value | Description | + +=========================================+================+===========================================================+ + | :py:data:`~nirfsg.AmpPath.HIGH_POWER` | 16000 (0x3e80) | Sets the amplification path to use the high power path. | + +-----------------------------------------+----------------+-----------------------------------------------------------+ + | :py:data:`~nirfsg.AmpPath.LOW_HARMONIC` | 16001 (0x3e81) | Sets the amplification path to use the low harmonic path. | + +-----------------------------------------+----------------+-----------------------------------------------------------+ + + .. note:: Resetting this property reverts back to the default unset behavior. + + The following table lists the characteristics of this property. + + +-----------------------+---------------+ + | Characteristic | Value | + +=======================+===============+ + | Datatype | enums.AmpPath | + +-----------------------+---------------+ + | Permissions | read-write | + +-----------------------+---------------+ + | Repeated Capabilities | None | + +-----------------------+---------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:Amp Path** + - C Attribute: **NIRFSG_ATTR_AMP_PATH** + +analog_modulation_am_sensitivity +-------------------------------- + + .. py:attribute:: analog_modulation_am_sensitivity + + Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator. + + When using the PXIe-5654 with PXIe-5696, NI-RFSG may coerce AM sensitivity. Coercing the AM sensitivity prevents overpower conditions at the PXIe-5696 input. Read this property to determine the coerced value. + + **Default Value:** 100 + + **Valid Values:** 0 to 100 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Amplitude Modulation `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:AM Sensitivity** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_AM_SENSITIVITY** + +analog_modulation_fm_band +------------------------- + + .. py:attribute:: analog_modulation_fm_band + + Specifies the analog modulation frequency modulation (FM) band to use. Wideband FM allows for modulating signals higher than 100kHz. Narrowband FM allows for modulating lower frequency signals. + + **Default Value:** :py:data:`~nirfsg.AnlgModFmBand.WIDEBAND` + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Modulation `_ + + **Defined Values**: + + +---------------------------------------------+----------------+--------------------------------------------+ + | Name | Value | Description | + +=============================================+================+============================================+ + | :py:data:`~nirfsg.AnlgModFmBand.NARROWBAND` | 17000 (0x4268) | Specifies narrowband frequency modulation. | + +---------------------------------------------+----------------+--------------------------------------------+ + | :py:data:`~nirfsg.AnlgModFmBand.WIDEBAND` | 17001 (0x4269) | Specifies wideband frequency modulation. | + +---------------------------------------------+----------------+--------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+---------------------+ + | Characteristic | Value | + +=======================+=====================+ + | Datatype | enums.AnlgModFmBand | + +-----------------------+---------------------+ + | Permissions | read-write | + +-----------------------+---------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:FM Band** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_FM_BAND** + +analog_modulation_fm_deviation +------------------------------ + + .. py:attribute:: analog_modulation_fm_deviation + + Specifies the frequency deviation to use in frequency modulation. + + **Units**: hertz (Hz) + + **Default Value:** 1kHz + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:FM Deviation (Hz)** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_FM_DEVIATION** + +analog_modulation_fm_narrowband_integrator +------------------------------------------ + + .. py:attribute:: analog_modulation_fm_narrowband_integrator + + Specifies the narrowband frequency modulation (FM) range to apply by sending the signal through an integrator. + + This property is valid only when you set the :py:attr:`nirfsg.Session.analog_modulation_type` property to :py:data:`~nirfsg.AnlgModType.FM` and the :py:attr:`nirfsg.Session.analog_modulation_fm_band` property to :py:data:`~nirfsg.AnlgModFmBand.NARROWBAND`. + + **Default Value:** :py:data:`~nirfsg.AnlgModFmNarrowbandIntegrator._100hzto1khz` + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Modulation `_ + + **Defined Values**: + + +-----------------------------------------------------------------+----------------+---------------------------------------------+ + | Name | Value | Description | + +=================================================================+================+=============================================+ + | :py:data:`~nirfsg.AnlgModFmNarrowbandIntegrator._100hzto1khz` | 18000 (0x4650) | Specifies a range from 100Â Hz to 1Â kHz. | + +-----------------------------------------------------------------+----------------+---------------------------------------------+ + | :py:data:`~nirfsg.AnlgModFmNarrowbandIntegrator._10khzto100khz` | 18002 (0x4652) | Specifies a range from 10Â kHz to 100Â kHz. | + +-----------------------------------------------------------------+----------------+---------------------------------------------+ + | :py:data:`~nirfsg.AnlgModFmNarrowbandIntegrator._1khzto10khz` | 18001 (0x4651) | Specifies a range from 1Â kHz to 10Â kHz. | + +-----------------------------------------------------------------+----------------+---------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------+ + | Characteristic | Value | + +=======================+=====================================+ + | Datatype | enums.AnlgModFmNarrowbandIntegrator | + +-----------------------+-------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:FM Narrowband Integrator** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_FM_NARROWBAND_INTEGRATOR** + +analog_modulation_fm_sensitivity +-------------------------------- + + .. py:attribute:: analog_modulation_fm_sensitivity + + Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator. + + **Default Value:** 100 + + **Valid Values:** 0 to 100 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Modulation `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:FM Sensitivity** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_FM_SENSITIVITY** + +analog_modulation_pm_deviation +------------------------------ + + .. py:attribute:: analog_modulation_pm_deviation + + Specifies the `deviation `_ to use in phase modulation, in degrees. + + **Units**: degrees (°) + + **Default Value:** 90° + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653 + + **Related Topics** + + `Modulation Schemes `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:PM Deviation (Degrees)** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_PM_DEVIATION** + +analog_modulation_pm_mode +------------------------- + + .. py:attribute:: analog_modulation_pm_mode + + Specifies the phase modulation (PM) mode to use. + + **Default Value:** :py:data:`~nirfsg.AnlgModPmMode.LOW_PHASE_NOISE` + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Phase Modulation `_ + + **Defined Values**: + + +--------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==================================================+================+===============================================================================================+ + | :py:data:`~nirfsg.AnlgModPmMode.HIGH_DEVIATION` | 19000 (0x4a38) | Specifies high deviation. High deviation comes at the expense of a higher phase noise. | + +--------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.AnlgModPmMode.LOW_PHASE_NOISE` | 19001 (0x4a39) | Specifies low phase noise. Low phase noise comes at the expense of a lower maximum deviation. | + +--------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+---------------------+ + | Characteristic | Value | + +=======================+=====================+ + | Datatype | enums.AnlgModPmMode | + +-----------------------+---------------------+ + | Permissions | read-write | + +-----------------------+---------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:PM Mode** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_PM_MODE** + +analog_modulation_pm_sensitivity +-------------------------------- + + .. py:attribute:: analog_modulation_pm_sensitivity + + Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator. + + **Default Value:** 100 + + **Valid Values:** 0 to 100 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Phase Modulation `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:PM Sensitivity** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_PM_SENSITIVITY** + +analog_modulation_type +---------------------- + + .. py:attribute:: analog_modulation_type + + Specifies the analog modulation format to use. + + **Default Value:** :py:data:`~nirfsg.AnlgModType.NONE` + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Modulation `_ + + `PXI/PXIe-5650/5651/5652 Modulation Schemes `_ + + `PXIe-5654/5654 with PXIe-5696 Modulation Schemes `_ + + **Defined Values**: + + +-------------------------------------+--------------+--------------------------------------------------+ + | Name | Value | Description | + +=====================================+==============+==================================================+ + | :py:data:`~nirfsg.AnlgModType.AM` | 2002 (0x7d2) | Specifies that the analog modulation type is AM. | + +-------------------------------------+--------------+--------------------------------------------------+ + | :py:data:`~nirfsg.AnlgModType.FM` | 2000 (0x7d0) | Specifies that the analog modulation type is FM. | + +-------------------------------------+--------------+--------------------------------------------------+ + | :py:data:`~nirfsg.AnlgModType.NONE` | 0 (0x0) | Disables analog modulation. | + +-------------------------------------+--------------+--------------------------------------------------+ + | :py:data:`~nirfsg.AnlgModType.PM` | 2001 (0x7d1) | Specifies that the analog modulation type is PM. | + +-------------------------------------+--------------+--------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------+ + | Characteristic | Value | + +=======================+===================+ + | Datatype | enums.AnlgModType | + +-----------------------+-------------------+ + | Permissions | read-write | + +-----------------------+-------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:Modulation Type** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_TYPE** + +analog_modulation_waveform_frequency +------------------------------------ + + .. py:attribute:: analog_modulation_waveform_frequency + + Specifies the frequency of the waveform to use as the message signal in analog modulation. + + **Units:** hertz (Hz) + + **Default Value:** 1kHz + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:Waveform Frequency (Hz)** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_WAVEFORM_FREQUENCY** + +analog_modulation_waveform_type +------------------------------- + + .. py:attribute:: analog_modulation_waveform_type + + Specifies the type of waveform to use as the message signal for analog modulation. + + **Default Value:** :py:data:`~nirfsg.AnlgModWfmType.SINE` + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + **Defined Values**: + + +--------------------------------------------+--------------+-----------------------------------------------------------------+ + | Name | Value | Description | + +============================================+==============+=================================================================+ + | :py:data:`~nirfsg.AnlgModWfmType.SINE` | 3000 (0xbb8) | Specifies that the analog modulation waveform type is sine. | + +--------------------------------------------+--------------+-----------------------------------------------------------------+ + | :py:data:`~nirfsg.AnlgModWfmType.SQUARE` | 3001 (0xbb9) | Specifies that the analog modulation waveform type is square. | + +--------------------------------------------+--------------+-----------------------------------------------------------------+ + | :py:data:`~nirfsg.AnlgModWfmType.TRIANGLE` | 3002 (0xbba) | Specifies that the analog modulation waveform type is triangle. | + +--------------------------------------------+--------------+-----------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+----------------------+ + | Characteristic | Value | + +=======================+======================+ + | Datatype | enums.AnlgModWfmType | + +-----------------------+----------------------+ + | Permissions | read-write | + +-----------------------+----------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Analog:Waveform Type** + - C Attribute: **NIRFSG_ATTR_ANALOG_MODULATION_WAVEFORM_TYPE** + +arb_carrier_frequency +--------------------- + + .. py:attribute:: arb_carrier_frequency + + **Units**: hertz (Hz) + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate a carrier frequency with a waveform. + Indicates the carrier frequency generated by the arbitrary waveform generator (AWG) module. The specified carrier frequency is related to the RF output as shown in the following equations: + + +-------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Device | Equations | + +===============================================================================+===================================================================================================================================================================================================================================================================================================================================================================+ + | PXI-5610, PXI-5670/5671, PXIe-5672 | RF Frequency (MHz) = *Upconverter Center Frequency* + *Arb Carrier Frequency* – 25 MHz | + +-------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 | RF Frequency (MHz) = *Upconverter Center Frequency* + *Arb Carrier Frequency*.Note that - the :py:attr:`nirfsg.Session.upconverter_center_frequency` property and the :py:attr:`nirfsg.Session.arb_carrier_frequency` property cannot be set at the same time. The only time the carrier frequency is nonzero on these devices is when in-band retuning is used. | + +-------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: - Use this property to associate a carrier frequency with a waveform. + + - This property is read-only on the PXI-5670/5671 and PXIe-5672. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Arb Carrier Frequency (Hz)** + - C Attribute: **NIRFSG_ATTR_ARB_CARRIER_FREQUENCY** + +arb_digital_gain +---------------- + + .. py:attribute:: arb_digital_gain + + Specifies the digital gain, in decibels. The digital gain is applied to the waveform data after filtering. Use this property to adjust the output power of the device while keeping the analog path fixed. This may cause clipping, overflows, or quantization noise if used improperly. + + To set this property, the NI-RFSG device must be in the Configuration or Generation state. + + **Default Value:** 0 dB + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - C Attribute: **NIRFSG_ATTR_ARB_DIGITAL_GAIN** + +arb_filter_raised_cosine_alpha +------------------------------ + + .. py:attribute:: arb_filter_raised_cosine_alpha + + Specifies the alpha value to use when calculating the pulse-shaping filter coefficients. You can use this property only when the :py:attr:`nirfsg.Session.arb_filter_type` property is set to :py:data:`~nirfsg.FilterType.ARB_FILTER_TYPE_RAISED_COSINE` and with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this property with a device that does not support OSP. + + **Supported Devices:** PXI-5671, PXIe-5672/5673/5673E + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Pulse Shaping:Raised Cosine Alpha** + - C Attribute: **NIRFSG_ATTR_ARB_FILTER_RAISED_COSINE_ALPHA** + +arb_filter_root_raised_cosine_alpha +----------------------------------- + + .. py:attribute:: arb_filter_root_raised_cosine_alpha + + Specifies the alpha value to use when calculating the pulse-shaping FIR filter coefficients. You can use this property only when the :py:attr:`nirfsg.Session.arb_filter_type` property is set to :py:data:`~nirfsg.FilterType.ARB_FILTER_TYPE_ROOT_RAISED_COSINE` and with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this property with a device that does not support OSP. + + **Supported Devices:** PXI-5671, PXIe-5672/5673/5673E + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Pulse Shaping:Root Raised Cosine Alpha** + - C Attribute: **NIRFSG_ATTR_ARB_FILTER_ROOT_RAISED_COSINE_ALPHA** + +arb_filter_type +--------------- + + .. py:attribute:: arb_filter_type + + Specifies the pulse-shaping filter type for the FIR filter. You can use this property only with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this property with a device that does not support OSP. + + **Default Value:** :py:data:`~nirfsg.FilterType.NONE` + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Defined Values**: + + +------------------------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==================================================================+================+=================================================================================================================================================================+ + | :py:data:`~nirfsg.FilterType.NONE` | 0 (0x0) | Disables analog modulation. | + +------------------------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.FilterType.ARB_FILTER_TYPE_RAISED_COSINE` | 10002 (0x2712) | Applies a raised cosine filter to the data with the alpha value specified with the :py:attr:`nirfsg.Session.arb_filter_raised_cosine_alpha` property. | + +------------------------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.FilterType.ARB_FILTER_TYPE_ROOT_RAISED_COSINE` | 10001 (0x2711) | Applies a root-raised cosine filter to the data with the alpha value specified with the :py:attr:`nirfsg.Session.arb_filter_root_raised_cosine_alpha` property. | + +------------------------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------+ + | Characteristic | Value | + +=======================+==================+ + | Datatype | enums.FilterType | + +-----------------------+------------------+ + | Permissions | read-write | + +-----------------------+------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Pulse Shaping:Filter Type** + - C Attribute: **NIRFSG_ATTR_ARB_FILTER_TYPE** + +arb_max_number_waveforms +------------------------ + + .. py:attribute:: arb_max_number_waveforms + + Returns the maximum number of waveforms the device can hold in memory. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.query_arb_waveform_capabilities` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Capabilities:Max Number Waveforms** + - C Attribute: **NIRFSG_ATTR_ARB_MAX_NUMBER_WAVEFORMS** + +arb_onboard_sample_clock_mode +----------------------------- + + .. py:attribute:: arb_onboard_sample_clock_mode + + Specifies the Sample Clock mode on the device. To set this property, the device must be in the Configuration state. + + PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: :py:data:`~nirfsg.ArbOnboardSampleClockMode.DIVIDE_DOWN` is the only supported value for this device. + + **Default Values:** + + PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: :py:data:`~nirfsg.ArbOnboardSampleClockMode.DIVIDE_DOWN` + + PXIe-5673/5673E: :py:data:`~nirfsg.ArbOnboardSampleClockMode.HIGH_RESOLUTION` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Clocking Modes `_ + + **Valid Values**: + + +--------------------------------------------------------------+--------------------------------------------------------------+ + | Name | Description | + +==============================================================+==============================================================+ + | :py:data:`~nirfsg.ArbOnboardSampleClockMode.HIGH_RESOLUTION` | Sample rates are generated by a high-resolution clock. | + +--------------------------------------------------------------+--------------------------------------------------------------+ + | :py:data:`~nirfsg.ArbOnboardSampleClockMode.DIVIDE_DOWN` | Sample rates are generated by dividing the source frequency. | + +--------------------------------------------------------------+--------------------------------------------------------------+ + + .. note:: Using the high resolution clock may result in increased phase noise. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------------+ + | Characteristic | Value | + +=======================+=================================+ + | Datatype | enums.ArbOnboardSampleClockMode | + +-----------------------+---------------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Arb Onboard Sample Clock Mode** + - C Attribute: **NIRFSG_ATTR_ARB_ONBOARD_SAMPLE_CLOCK_MODE** + +arb_oscillator_phase_dac_value +------------------------------ + + .. py:attribute:: arb_oscillator_phase_dac_value + + Specifies the oscillator phase digital-to-analog converter (DAC) value on the arbitrary waveform generator (AWG). Use this property to reduce the trigger jitter when synchronizing multiple devices with NI-TClk. This property can also help maintain synchronization repeatability by writing a previous measurement's phase DAC value to the current session. This property is applicable only when using the :py:attr:`nirfsg.Session.arb_sample_clock_source` property set to :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR`. + + **Supported Devices:** PXIe-5673/5673E + + **Related Topics** + + `NI-TClk Overview `_ + + + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Advanced:Arb Oscillator Phase DAC Value** + - C Attribute: **NIRFSG_ATTR_ARB_OSCILLATOR_PHASE_DAC_VALUE** + +arb_power +--------- + + .. py:attribute:: arb_power + + Indicates the average output power from the PXI-5421, PXI-5441, PXIe-5442, and PXIe-5450 AWG module. If an arbitrary waveform is being generated, this property specifies either the average power or the peak power of the signal, depending on the :py:attr:`nirfsg.Session.power_level_type` property setting. + + **Units**: dBm + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Arb Power (dBm)** + - C Attribute: **NIRFSG_ATTR_ARB_POWER** + +arb_pre_filter_gain +------------------- + + .. py:attribute:: arb_pre_filter_gain + + Specifies the AWG prefilter gain. The prefilter gain is applied to the waveform data before any other signal processing. Reduce this value to prevent overflow in the AWG interpolation filters. Other gains on the NI-RFSG device are automatically adjusted to compensate for nonunity AWG prefilter gain. The PXI-5671, PXIe-5672 must be in the Configuration state to use this property. However, the PXIe-5644/5645/5646, PXIe-5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842 can be in either the Configuration or the Generation state to use this property. PXIe-5860 can only be in the Configuration state to use this property. + + On the PXI-5671, this property applies only when the :py:attr:`nirfsg.Session.iq_rate` property is set to a value less than or equal to 8.33MS/s. On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, this property is always applicable. + + **Units**: dB + + **Default Value:** 0dB + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Pre-filter Gain (dB)** + - C Attribute: **NIRFSG_ATTR_ARB_PRE_FILTER_GAIN** + +arb_sample_clock_rate +--------------------- + + .. py:attribute:: arb_sample_clock_rate + + Returns the rate of the Sample Clock on the device. + + **Units**: hertz (Hz) + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Arb Sample Clock Rate (Hz)** + - C Attribute: **NIRFSG_ATTR_ARB_SAMPLE_CLOCK_RATE** + +arb_sample_clock_source +----------------------- + + .. py:attribute:: arb_sample_clock_source + + Specifies the Sample Clock source for the device. To set this property, the NI-RFSG device must be in the Configuration state. + + PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: :py:data:`~nirfsg.ArbSampleClockSource.ONBOARD_CLOCK` is the only supported value for this device. + + **Default Value:** :py:data:`~nirfsg.ArbSampleClockSource.ONBOARD_CLOCK` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Timing Configurations `_ + + **Defined Values**: + + +-------------------------------------------------------+--------------+---------------------------------------------------------------+ + | Name | Value | Description | + +=======================================================+==============+===============================================================+ + | :py:data:`~nirfsg.ArbSampleClockSource.CLK_IN` | ClkIn | Uses the external clock as the Sample Clock source. | + +-------------------------------------------------------+--------------+---------------------------------------------------------------+ + | :py:data:`~nirfsg.ArbSampleClockSource.ONBOARD_CLOCK` | OnboardClock | Uses the AWG module onboard clock as the Sample Clock source. | + +-------------------------------------------------------+--------------+---------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------+ + | Characteristic | Value | + +=======================+============================+ + | Datatype | enums.ArbSampleClockSource | + +-----------------------+----------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Arb Sample Clock Source** + - C Attribute: **NIRFSG_ATTR_ARB_SAMPLE_CLOCK_SOURCE** + +arb_selected_waveform +--------------------- + + .. py:attribute:: arb_selected_waveform + + Specifies the waveform in onboard memory to generate upon calling the :py:meth:`nirfsg.Session.Init` method when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM`. The :py:attr:`nirfsg.Session.arb_selected_waveform` property is ignored when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.SCRIPT` or :py:data:`~nirfsg.GenerationMode.CW`. To set the :py:attr:`nirfsg.Session.arb_selected_waveform` property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.select_arb_waveform` + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Capabilities:Selected Waveform** + - C Attribute: **NIRFSG_ATTR_ARB_SELECTED_WAVEFORM** + +arb_temperature +--------------- + + .. py:attribute:: arb_temperature + + Returns the AWG module temperature in degrees Celsius. + + PXIe-5820/5840/5841/5842: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:AWG Temperature (Degrees C)** + - C Attribute: **NIRFSG_ATTR_ARB_TEMPERATURE** + +arb_waveform_quantum +-------------------- + + .. py:attribute:: arb_waveform_quantum + + Returns the waveform quantum for the device. The number of samples in a waveform must be an integer multiple of the waveform quantum. The other restrictions on the length of the waveform are the :py:attr:`nirfsg.Session.arb_waveform_size_min` and :py:attr:`nirfsg.Session.arb_waveform_size_max` arbitrary waveform sizes. + + PXI-5671, PXIe-5672: The value of this property depends on the I/Q rate. Set the :py:attr:`nirfsg.Session.iq_rate` property before reading this property. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.query_arb_waveform_capabilities` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Capabilities:Waveform Quantum** + - C Attribute: **NIRFSG_ATTR_ARB_WAVEFORM_QUANTUM** + +arb_waveform_repeat_count +------------------------- + + .. py:attribute:: arb_waveform_repeat_count + + Specifies the repeat count of a waveform when you set the :py:attr:`nirfsg.Session.arb_waveform_repeat_count_is_finite` property to True. This property is valid only when you set the :py:attr:`nirfsg.Session.generation_mode` property to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM`. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** 1 + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Repeat Count** + - C Attribute: **NIRFSG_ATTR_ARB_WAVEFORM_REPEAT_COUNT** + +arb_waveform_repeat_count_is_finite +----------------------------------- + + .. py:attribute:: arb_waveform_repeat_count_is_finite + + Specifies the repetition mode of a waveform when you set the :py:attr:`nirfsg.Session.generation_mode` property to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM`. If you set this property to True, the number of repetitions is determined by the :py:attr:`nirfsg.Session.arb_waveform_repeat_count` property. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------------------------------------------------+ + | Value | Description | + +=======+===================================================================+ + | True | Repeats the waveform a finite number of times. | + +-------+-------------------------------------------------------------------+ + | False | Repeats the waveform continuously until you abort the generation. | + +-------+-------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Repeat Count Is Finite** + - C Attribute: **NIRFSG_ATTR_ARB_WAVEFORM_REPEAT_COUNT_IS_FINITE** + +arb_waveform_size_max +--------------------- + + .. py:attribute:: arb_waveform_size_max + + Returns the size of the largest waveform that is allowed. + + To read this property, the NI-RFSG device must be in the Configuration state. + + For the PXI-5671 and PXIe-5672, the value of this property depends on the I/Q rate. Set the :py:attr:`nirfsg.Session.iq_rate` before reading this property. For the PXIe-5673/5673E, the maximum waveform size is reduced to account for the amount of device memory currently used. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.query_arb_waveform_capabilities` + + + + .. note:: Not all onboard memory is available for waveform storage. A portion of onboard memory stores scripts that specify how the waveforms are generated. These scripts typically require less than 1KB of onboard memory. + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Capabilities:Max Waveform Size** + - C Attribute: **NIRFSG_ATTR_ARB_WAVEFORM_SIZE_MAX** + +arb_waveform_size_min +--------------------- + + .. py:attribute:: arb_waveform_size_min + + Returns the smallest allowable waveform size. For the PXI-5671 and PXIe-5672, the value of this property depends on the I/Q rate. Set the :py:attr:`nirfsg.Session.iq_rate` property before reading this property. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.query_arb_waveform_capabilities` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Capabilities:Min Waveform Size** + - C Attribute: **NIRFSG_ATTR_ARB_WAVEFORM_SIZE_MIN** + +arb_waveform_software_scaling_factor +------------------------------------ + + .. py:attribute:: arb_waveform_software_scaling_factor + + Specifies how much to scale the data before writing it with the :py:meth:`nirfsg.Session.write_arb_waveform` method. The resulting waveform must be smaller than 1.0 in complex magnitude. This property is supported only if you set the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. + + **Default Value:** 1.0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Spurious Performance `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Software Scaling Factor** + - C Attribute: **NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR** + +attenuator_hold_enabled +----------------------- + + .. py:attribute:: attenuator_hold_enabled + + Specifies whether attenuator hold is enabled. While this property is set to True, changing the power level causes NI-RFSG to scale the digital data sent to the AWG instead of adjusting the attenuators. Changing power levels in this manner allows the device to increase or decrease the power level in more accurate increments, but it may affect signal-to-noise ratios (noise density). + + + Setting the :py:attr:`nirfsg.Session.attenuator_hold_enabled` property to True limits the power levels that can be attained. With attenuator hold enabled, the power level must satisfy the following conditions: + + - Power level less than or equal to :py:attr:`nirfsg.Session.attenuator_hold_max_power` + - Power level greater than or equal to (maximum power level -70dB) + - Power level greater than or equal to -145dBm + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Attenuator Hold `_ + + `Settling Times `_ + + **Defined Values**: + + +-------+---------------------------+ + | Value | Description | + +=======+===========================+ + | True | Enables attenuator hold. | + +-------+---------------------------+ + | False | Disables attenuator hold. | + +-------+---------------------------+ + + .. note:: The frequency cannot be changed on the PXI-5670/5671 or PXIe-5672 while this property is set to True. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Attenuator Hold Enabled** + - C Attribute: **NIRFSG_ATTR_ATTENUATOR_HOLD_ENABLED** + +attenuator_hold_max_power +------------------------- + + .. py:attribute:: attenuator_hold_max_power + + Specifies the maximum power level of the RF output signal when the :py:attr:`nirfsg.Session.attenuator_hold_enabled` property is set to True. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units**: dBm + + **Defined Values**: + Refer to the specifications document for your device for allowable maximum power levels. + + **Default Value:** + + PXI-5670/5671, PXIe-5672: 17 + + PXIe-5673/5673E: 10 + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Attenuator Hold `_ + + `Settling Times `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Attenuator Hold Max Power (dBm)** + - C Attribute: **NIRFSG_ATTR_ATTENUATOR_HOLD_MAX_POWER** + +attenuator_setting +------------------ + + .. py:attribute:: attenuator_setting + + Specifies the level of attenuation in the attenuator path. Setting this property overrides the value chosen by NI-RFSG. Not all power levels are achievable if you set this property. + + **Units**: dB + + **Valid Values**: 0dB to 110dB in steps of 10 + + **Supported Devices:** PXIe-5654 with PXIe-5696 + + + + .. note:: Resetting this property reverts back to the default unset behavior. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Attenuator Setting (dB)** + - C Attribute: **NIRFSG_ATTR_ATTENUATOR_SETTING** + +automatic_thermal_correction +---------------------------- + + .. py:attribute:: automatic_thermal_correction + + Enables or disables automatic thermal correction. When this property is enabled, changes to settings cause NI-RFSG to check whether the device temperature has changed and adjusts the settings as needed. When this property is disabled, you must explicitly call the :py:meth:`nirfsg.Session.perform_thermal_correction` method to adjust the device for temperature changes. + + **Default Value:** :py:data:`~nirfsg.AutomaticThermalCorrection.ENABLE` + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Temperature Monitoring `_ + + `Settling Times `_ + **Defined Values**: + + +-------------------------------------------------------+---------+-------------------------------------------+ + | Name | Value | Description | + +=======================================================+=========+===========================================+ + | :py:data:`~nirfsg.AutomaticThermalCorrection.DISABLE` | 0 (0x0) | Automatic thermal correction is disabled. | + +-------------------------------------------------------+---------+-------------------------------------------+ + | :py:data:`~nirfsg.AutomaticThermalCorrection.ENABLE` | 1 (0x1) | Automatic thermal correction is enabled. | + +-------------------------------------------------------+---------+-------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------------+ + | Characteristic | Value | + +=======================+==================================+ + | Datatype | enums.AutomaticThermalCorrection | + +-----------------------+----------------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Automatic Thermal Correction** + - C Attribute: **NIRFSG_ATTR_AUTOMATIC_THERMAL_CORRECTION** + +auto_power_search +----------------- + + .. py:attribute:: auto_power_search + + Enables or disables automatic power search. When this property is enabled, a power search performs after the device is initiated, after output power is enabled, or when the frequency or power level changes while the device is generating. When this property is disabled, NI-RFSG does not perform a power search unless you call the :py:meth:`nirfsg.Session.perform_power_search` method. + + This property is ignored when the :py:attr:`nirfsg.Session.alc_control` property is enabled. + + PXIe-5654: :py:data:`~nirfsg.AutomaticPowerSearch.DISABLE` is the only supported value for this device. + + **Default Value:** + + PXIe-5654: :py:data:`~nirfsg.AutomaticPowerSearch.DISABLE` + + PXIe-5654 with PXIe-5696: :py:data:`~nirfsg.AutomaticPowerSearch.ENABLE` + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Power Search `_ + + **Defined Values**: + + +-------------------------------------------------+---------+----------------------------------+ + | Name | Value | Description | + +=================================================+=========+==================================+ + | :py:data:`~nirfsg.AutomaticPowerSearch.DISABLE` | 0 (0x0) | Disables automatic power search. | + +-------------------------------------------------+---------+----------------------------------+ + | :py:data:`~nirfsg.AutomaticPowerSearch.ENABLE` | 1 (0x1) | Enables automatic power search. | + +-------------------------------------------------+---------+----------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------+ + | Characteristic | Value | + +=======================+============================+ + | Datatype | enums.AutomaticPowerSearch | + +-----------------------+----------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Automatic Power Search** + - C Attribute: **NIRFSG_ATTR_AUTO_POWER_SEARCH** + +available_paths +--------------- + + .. py:attribute:: available_paths + + Returns a comma separated list of the configurable paths available for use based on your instrument configuration. + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Signal Path:Advanced:Available Paths** + - C Attribute: **NIRFSG_ATTR_AVAILABLE_PATHS** + +available_ports +--------------- + + .. py:attribute:: available_ports + + Returns a comma-separated list of the ports available for use based on your instrument configuration. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Available Ports** + - C Attribute: **NIRFSG_ATTR_AVAILABLE_PORTS** + +cache +----- + + .. py:attribute:: cache + + Specifies whether to cache the value of properties. When caching is enabled, NI-RFSG tracks the current NI-RFSG device settings and avoids sending redundant commands to the device. NI-RFSG can always cache or never cache particular properties, regardless of the setting of this property. Call the :py:meth:`nirfsg.Session.__init__` method to override the default value. + + **Default Value:** True + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: + + +-------+-------------------+ + | Value | Description | + +=======+===================+ + | True | Enables caching. | + +-------+-------------------+ + | False | Disables caching. | + +-------+-------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:User Options:Cache** + - C Attribute: **NIRFSG_ATTR_CACHE** + +compensate_for_filter_group_delay +--------------------------------- + + .. py:attribute:: compensate_for_filter_group_delay + + Enables or disables compensation for filter group delay on the AWG module. This property also accounts for the upconverter group delay and aligns the RF output with the Started Event, Done Event, and Marker Events. + + At a low I/Q rate, the group delay can become so large that some devices may not be able to align the events with the RF output, in which case you must increase the I/Q rate or disable this property. + + **Default Value:** False + + **Supported Devices:** PXIe-5672 + **Defined Values**: + + +-------+-----------------------------------------------+ + | Value | Description | + +=======+===============================================+ + | True | Enables compensation for filter group delay. | + +-------+-----------------------------------------------+ + | False | Disables compensation for filter group delay. | + +-------+-----------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Advanced:Compensate for Filter Group Delay** + - C Attribute: **NIRFSG_ATTR_COMPENSATE_FOR_FILTER_GROUP_DELAY** + +configuration_list_is_done +-------------------------- + + .. py:attribute:: configuration_list_is_done + + Returns whether the configuration list is still running or done. To read this property, the device must be in the Generation state. + + **Supported Devices:** PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + **Defined Values**: + + +-------+------------------------------------------+ + | Value | Description | + +=======+==========================================+ + | True | The configuration list is done. | + +-------+------------------------------------------+ + | False | The configuration list is still running. | + +-------+------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | bool | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Configuration List:Configuration List Is Done** + - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_IS_DONE** + +configuration_list_repeat +------------------------- + + .. py:attribute:: configuration_list_repeat + + Specifies whether the configuration list runs only once or continuously. + + **Default Value:** :py:data:`~nirfsg.ConfigurationListRepeat.CONTINUOUS` + + **Supported Devices:** PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + **Defined Values**: + + +-------------------------------------------------------+-------+---------------------------------------------------+ + | Name | Value | Description | + +=======================================================+=======+===================================================+ + | :py:data:`~nirfsg.ConfigurationListRepeat.CONTINUOUS` | 0 | NI-RFSG runs the configuration list continuously. | + +-------------------------------------------------------+-------+---------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationListRepeat.SINGLE` | 1 | NI-RFSG runs the configuration list only once. | + +-------------------------------------------------------+-------+---------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------+ + | Characteristic | Value | + +=======================+===============================+ + | Datatype | enums.ConfigurationListRepeat | + +-----------------------+-------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Configuration List:Configuration List Repeat** + - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_REPEAT** + +configuration_list_step_in_progress +----------------------------------- + + .. py:attribute:: configuration_list_step_in_progress + + Returns the configuration list step that is currently programmed to the hardware. The list is zero-indexed. You can query this property only when a list is executed. + + PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E: This property can be read only when a configuration list is running. + + PXIe-5644/5645/5646: This property always returns 0 when the configuration list is not running. + + PXIe-5820/5830/5831/5832/5840/5841/5842: If the configuration list is not running, this property returns the last step of a configuration list that is programmed to the hardware. If the device was last initiated without an active configuration list, this property returns 0. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Configuration List:Step In Progress** + - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_STEP_IN_PROGRESS** + +configuration_list_step_trigger_terminal_name +--------------------------------------------- + + .. py:attribute:: configuration_list_step_trigger_terminal_name + + Returns the fully-qualified signal name as a string. + + **Default Values**: + + PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. + + PXIe-5673E: /*AWGName*/ConfigurationListStepTrigger, where *AWGName* is the name of your associated AWG module in MAX. + + PXIe-5820/5830/5831/5832/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Triggers `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session._get_terminal_name` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Configuration List Step:Terminal Name** + - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_STEP_TRIGGER_TERMINAL_NAME** + +configuration_list_step_trigger_type +------------------------------------ + + .. py:attribute:: configuration_list_step_trigger_type + + Specifies the type of trigger to use as the Configuration List Step Trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.ConfigListTrigType.NONE` + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + **Defined Values**: + + +----------------------------------------------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +====================================================+=========+==================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.ConfigListTrigType.DIGITAL_EDGE` | 1 (0x1) | Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the :py:attr:`nirfsg.Session.digital_edge_configuration_list_step_trigger_source` property, and the active edge is always rising. | + +----------------------------------------------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigType.NONE` | 0 (0x0) | Generation starts immediately, but the list does not advance. | + +----------------------------------------------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+--------------------------+ + | Characteristic | Value | + +=======================+==========================+ + | Datatype | enums.ConfigListTrigType | + +-----------------------+--------------------------+ + | Permissions | read-write | + +-----------------------+--------------------------+ + | Repeated Capabilities | None | + +-----------------------+--------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Configuration List Step:Edge** + - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_STEP_TRIGGER_TYPE** + +configuration_settled_event_terminal_name +----------------------------------------- + + .. py:attribute:: configuration_settled_event_terminal_name + + Returns the name of the fully qualified signal name as a string. + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Default Values**: + + PXIe-5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationSettledEvent, where *ModuleName* is the name of your device in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/ConfigurationSettledEvent, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationSettledEvent, where *ModuleName* is the name of your device in MAX. + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Configuration Settled Event Terminal Name** + - C Attribute: **NIRFSG_ATTR_CONFIGURATION_SETTLED_EVENT_TERMINAL_NAME** + +correction_temperature +---------------------- + + .. py:attribute:: correction_temperature + + Specifies the temperature, in degrees Celsius, to use for adjusting the device settings to correct for temperature changes. If you set this property, NI-RFSG uses the value you specify and therefore no longer uses the actual device temperature as the correction temperature. If you do not set this property, NI-RFSG checks the current device temperature in the Committed state and automatically sets the value of this property. + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: This property is read only. + + **Units**: Degrees Celsius + + **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + .. note:: - Resetting this property reverts back to the default unset behavior. + + - Use this property only when your application requires the same settings to be used every time, regardless of the temperature variation. In these cases, it is best to ensure that the temperature does not vary too much. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:Correction Temperature** + - C Attribute: **NIRFSG_ATTR_CORRECTION_TEMPERATURE** + +data_transfer_block_size +------------------------ + + .. py:attribute:: data_transfer_block_size + + Indicates the number of samples to transfer at one time from the device to host memory. This property is useful when the total data to be transferred to onboard memory is large. + + **Units**: samples (s) + + **Default Value**: 1Ms + + **Supported Devices:** PXIe-5672/5673/5673E + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Data Transfer Block Size** + - C Attribute: **NIRFSG_ATTR_DATA_TRANSFER_BLOCK_SIZE** + +data_transfer_maximum_bandwidth +------------------------------- + + .. py:attribute:: data_transfer_maximum_bandwidth + + Specifies the maximum amount of bus bandwidth to use for data transfers. + + **Units**: bytes per second + + **Default Value**: Device maximum + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Improving Streaming Performance `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Maximum Bandwidth** + - C Attribute: **NIRFSG_ATTR_DATA_TRANSFER_MAXIMUM_BANDWIDTH** + +data_transfer_maximum_in_flight_reads +------------------------------------- + + .. py:attribute:: data_transfer_maximum_in_flight_reads + + Specifies the maximum number of concurrent PCI Express read requests the RF signal generator can issue. + + When transferring data from computer memory to device onboard memory across the PCI Express bus, the signal generator can issue multiple memory reads at the same time. In general, the larger the number of read requests, the more efficiently the device uses the bus because the multiple read requests keep the data flowing, even in a PCI Express topology that has high latency due to PCI Express switches in the data path. Most NI devices can issue a large number of read requests (typically 8 or 16). By default, this property is set to the highest value the RF signal generator supports. + + If other devices in your system cannot tolerate long data latencies, it may be helpful to decrease the number of in-flight read requests the RF signal generator issues. This helps to reduce the amount of data the signal generator reads at one time. + + **Units**: number of packets + + **Default Value**: Device maximum + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Improving Streaming Performance `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Advanced:Maximum In-Flight Read Requests** + - C Attribute: **NIRFSG_ATTR_DATA_TRANSFER_MAXIMUM_IN_FLIGHT_READS** + +data_transfer_preferred_packet_size +----------------------------------- + + .. py:attribute:: data_transfer_preferred_packet_size + + Specifies the preferred size of the data field in a PCI Express read request packet. + + In general, the larger the packet size, the more efficiently the device uses the bus. By default, NI RF signal generators use the largest packet size allowed by the system. However, due to different system implementations, some systems may perform better with smaller packet sizes. + + Recommended values for this property are powers of two between 64 and 512. + + **Units**: bytes + + **Default Value**: Device maximum + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Improving Streaming Performance `_ + + + + .. note:: In some cases, the RF signal generator generates packets smaller than the preferred size you set with this property. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Advanced:Preferred Packet Size** + - C Attribute: **NIRFSG_ATTR_DATA_TRANSFER_PREFERRED_PACKET_SIZE** + +deembedding_compensation_gain +----------------------------- + + .. py:attribute:: deembedding_compensation_gain + + Returns the de-embedding gain applied to compensate for the mismatch on the specified port. If de-embedding is enabled, NI-RFSG uses the returned compensation gain to remove the effects of the external network between the instrument and the DUT. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + + + + + .. tip:: This property can be set/get on specific deembedding_port within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container deembedding_port to specify a subset. + + Example: :py:attr:`my_session.deembedding_port[ ... ].deembedding_compensation_gain` + + To set/get on all deembedding_port, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.deembedding_compensation_gain` + + The following table lists the characteristics of this property. + + +-----------------------+------------------+ + | Characteristic | Value | + +=======================+==================+ + | Datatype | float | + +-----------------------+------------------+ + | Permissions | read only | + +-----------------------+------------------+ + | Repeated Capabilities | deembedding_port | + +-----------------------+------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **De-embedding:Compensation Gain** + - C Attribute: **NIRFSG_ATTR_DEEMBEDDING_COMPENSATION_GAIN** + +deembedding_selected_table +-------------------------- + + .. py:attribute:: deembedding_selected_table + + Selects the de-embedding table to apply to the measurements on the specified port. + + To use this property, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_string` method to specify the name of the port to configure for de-embedding. + + If de-embedding is enabled, NI-RFSG uses the specified table to remove the effects of the external network between the instrument and the DUT. + + Use the create deembedding sparameter table array method to create tables. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + + + + + .. tip:: This property can be set/get on specific deembedding_port within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container deembedding_port to specify a subset. + + Example: :py:attr:`my_session.deembedding_port[ ... ].deembedding_selected_table` + + To set/get on all deembedding_port, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.deembedding_selected_table` + + The following table lists the characteristics of this property. + + +-----------------------+------------------+ + | Characteristic | Value | + +=======================+==================+ + | Datatype | str | + +-----------------------+------------------+ + | Permissions | read-write | + +-----------------------+------------------+ + | Repeated Capabilities | deembedding_port | + +-----------------------+------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **De-embedding:Selected Table** + - C Attribute: **NIRFSG_ATTR_DEEMBEDDING_SELECTED_TABLE** + +deembedding_type +---------------- + + .. py:attribute:: deembedding_type + + Specifies the type of de-embedding to apply to measurements on the specified port. + + To use this property, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_int32` method to specify the name of the port to configure for de-embedding. + + If you set this property to :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR` or :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR`, NI-RFSG adjusts the instrument settings and the returned data to remove the effects of the external network between the instrument and the DUT. + + **Default Value**: :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR` + + **Valid Values for PXIe-5830/5832/5840/5841/5842/5860** : :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR` or :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE` + + **Valid Values for PXIe-5831** :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR`, :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR`, or :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE`. :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR` is only supported for TRX Ports in a Semiconductor Test System (STS). + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: + + +--------------------------------------------------------------------+----------------+------------------------------------------------------------------------+ + | Name | Value | Description | + +====================================================================+================+========================================================================+ + | :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE` | 25000 (0x61a8) | De-embedding is not applied to the measurement. | + +--------------------------------------------------------------------+----------------+------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR` | 25001 (0x61a9) | De-embeds the measurement using only the gain term. | + +--------------------------------------------------------------------+----------------+------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR` | 25002 (0x61aa) | De-embeds the measurement using the gain term and the reflection term. | + +--------------------------------------------------------------------+----------------+------------------------------------------------------------------------+ + + + .. tip:: This property can be set/get on specific deembedding_port within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container deembedding_port to specify a subset. + + Example: :py:attr:`my_session.deembedding_port[ ... ].deembedding_type` + + To set/get on all deembedding_port, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.deembedding_type` + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------+ + | Characteristic | Value | + +=======================+===============================+ + | Datatype | enums.DeembeddingTypeAttrVals | + +-----------------------+-------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------+ + | Repeated Capabilities | deembedding_port | + +-----------------------+-------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **De-embedding:Type** + - C Attribute: **NIRFSG_ATTR_DEEMBEDDING_TYPE** + +device_instantaneous_bandwidth +------------------------------ + + .. py:attribute:: device_instantaneous_bandwidth + + Specifies the bandwidth of the device. The instantaneous bandwidth is the effective real-time bandwidth of the signal path for your configuration. + + The :py:attr:`nirfsg.Session.signal_bandwidth` centered at the :py:attr:`nirfsg.Session.frequency` must fit within the device instantaneous bandwidth, which is centered at the :py:attr:`nirfsg.Session.upconverter_center_frequency`. + + **Units**: Hz + + **Default Value**: N/A + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `PXIe-5830 Frequency and Bandwidth Selection `_ + + `PXIe-5831/5832 Frequency and Bandwidth Selection `_ + + `PXIe-5841 Frequency and Bandwidth Selection `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Device Instantaneous Bandwidth (Hz)** + - C Attribute: **NIRFSG_ATTR_DEVICE_INSTANTANEOUS_BANDWIDTH** + +device_temperature +------------------ + + .. py:attribute:: device_temperature + + Returns the device temperature. If the NI-RFSG session is controlling multiple devices, this property returns the temperature of the primary NI RF device. The NI-RFSG session is opened using the primary RF device name. + + Serial signals between the sensor and the system control unit could modulate the signal being generated, thus causing phase spurs. After the device thoroughly warms up, its temperature varies only slightly (less than 1 degree Celsius) and slowly, and it is not necessary to constantly poll this temperature sensor. + + PXIe-5644/5645/5646, PXIe-5820/5840/5841: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + PXIe-5830/5831/5832: To use this property, you must first set the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to using the appropriate string for your instrument configuration. Setting the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method is not required for the PXIe-3621/3622. Refer to the following table to determine which strings are valid for your configuration. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Temperature Monitoring `_ + + `Thermal Shutdown `_ + + +----------------------------+--------------------------+-------------------------+ + | Hardware Module | TRX Port Type | Active Channel String | + +============================+==========================+=========================+ + | PXIe-3621/3622 | — | if or "" (empty string) | + +----------------------------+--------------------------+-------------------------+ + | PXIe-5820 | — | fpga | + +----------------------------+--------------------------+-------------------------+ + | First connected mmRH-5582 | DIRECT TRX PORTS Only | rf0 | + +----------------------------+--------------------------+-------------------------+ + | First connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf0switch0 | + +----------------------------+--------------------------+-------------------------+ + | First connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf0switch1 | + +----------------------------+--------------------------+-------------------------+ + | Second connected mmRH-5582 | DIRECT TRX PORTS Only | rf1 | + +----------------------------+--------------------------+-------------------------+ + | Second connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf1switch0 | + +----------------------------+--------------------------+-------------------------+ + | Second connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf1switch1 | + +----------------------------+--------------------------+-------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:Device Temperature (Degrees C)** + - C Attribute: **NIRFSG_ATTR_DEVICE_TEMPERATURE** + +digital_edge_configuration_list_step_trigger_edge +------------------------------------------------- + + .. py:attribute:: digital_edge_configuration_list_step_trigger_edge + + Specifies the active edge for the Configuration List Step trigger. This property is valid only when the :py:attr:`nirfsg.Session.configuration_list_step_trigger_type` property is set to digital edge. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + **Defined Values**: + + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | Name | Description | + +===================================================+================================================================================================================================+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeEdge.EDGE` | Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level. | + +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------------+ + | Characteristic | Value | + +=======================+=================================+ + | Datatype | enums.ConfigListTrigDigEdgeEdge | + +-----------------------+---------------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Configuration List Step:Digital Edge:Edge** + - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_EDGE** + +digital_edge_configuration_list_step_trigger_source +--------------------------------------------------- + + .. py:attribute:: digital_edge_configuration_list_step_trigger_source + + Specifies the source terminal for the Configuration List Step Trigger. This property is valid only when the configuration list step type property is set to digital edge. + + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + `Marker Events `_ + **Defined Values**: + + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==============================================================+==============+=====================================================================================================================+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER0_EVENT` | Marker0Event | The trigger is received from the Marker Event 0. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER1_EVENT` | Marker1Event | The trigger is received from the Marker Event 1. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER2_EVENT` | Marker2Event | The trigger is received from the Marker Event 2. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER3_EVENT` | Marker3Event | The trigger is received from the Marker Event 3. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PFI0` | PFI0 | The trigger is received on PFI 0. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PFI1` | PFI1 | The trigger is received on PFI 1. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_STAR` | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG7` | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXIE_DSTARB` | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.TIMER_EVENT` | TimerEvent | The trigger is received from the Timer Event. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.TRIG_IN` | TrigIn | The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-----------------------------------+ + | Characteristic | Value | + +=======================+===================================+ + | Datatype | enums.ConfigListTrigDigEdgeSource | + +-----------------------+-----------------------------------+ + | Permissions | read-write | + +-----------------------+-----------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Configuration List Step:Digital Edge:Source** + - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE** + +digital_edge_script_trigger_edge +-------------------------------- + + .. py:attribute:: digital_edge_script_trigger_edge + + Specifies the active edge for the Script Trigger. This property is used when the :py:attr:`nirfsg.Session.script_trigger_type` property is set to digital edge. To set the :py:attr:`nirfsg.Session.digital_edge_script_trigger_edge` property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.ScriptTrigDigEdgeEdge.RISING` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Digital Edge Trigger `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_digital_edge_script_trigger` + **Defined Values**: + + +--------------------------------------------------+---------+-------------------------------------------------------------------------------+ + | Name | Value | Description | + +==================================================+=========+===============================================================================+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeEdge.FALLING` | 1 (0x1) | Asserts the trigger when the signal transitions from high level to low level. | + +--------------------------------------------------+---------+-------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeEdge.RISING` | 0 (0x0) | Asserts the trigger when the signal transitions from low level to high level. | + +--------------------------------------------------+---------+-------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + .. tip:: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_edge_script_trigger_edge` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_edge_script_trigger_edge` + + The following table lists the characteristics of this property. + + +-----------------------+-----------------------------+ + | Characteristic | Value | + +=======================+=============================+ + | Datatype | enums.ScriptTrigDigEdgeEdge | + +-----------------------+-----------------------------+ + | Permissions | read-write | + +-----------------------+-----------------------------+ + | Repeated Capabilities | script_triggers | + +-----------------------+-----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Script:Digital Edge:Edge** + - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_EDGE** + +digital_edge_script_trigger_source +---------------------------------- + + .. py:attribute:: digital_edge_script_trigger_source + + Specifies the source terminal for the Script Trigger. This property is used when the :py:attr:`nirfsg.Session.script_trigger_type` property is set to digital edge. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_digital_edge_script_trigger` + **Defined Values**: + + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +================================================================+=============+=========================================================================================================================================+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PFI0` | PFI0 | The trigger is received on PFI 0. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PFI1` | PFI1 | The trigger is received on PFI 1. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PFI2` | PFI2 | The trigger is received on PFI 2. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PFI3` | PFI3 | The trigger is received on PFI 3. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_STAR` | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXI_TRIG7` | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PXIE_DSTARB` | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.PULSE_IN` | PulseIn | The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.SYNC_SCRIPT_TRIGGER` | Sync_Script | The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646. | + +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + .. tip:: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_edge_script_trigger_source` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_edge_script_trigger_source` + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------+ + | Characteristic | Value | + +=======================+===============================+ + | Datatype | enums.ScriptTrigDigEdgeSource | + +-----------------------+-------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------+ + | Repeated Capabilities | script_triggers | + +-----------------------+-------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Script:Digital Edge:Source** + - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_SOURCE** + +digital_edge_start_trigger_edge +------------------------------- + + .. py:attribute:: digital_edge_start_trigger_edge + + Specifies the active edge for the Start Trigger. This property is used when the :py:attr:`nirfsg.Session.start_trigger_type` property is set to digital edge. To set the :py:attr:`nirfsg.Session.digital_edge_start_trigger_edge` property, the NI-RFSG device must be in the Configuration state. + + PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + **Default Value:** :py:data:`~nirfsg.StartTrigDigEdgeEdge.RISING` + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Digital Edge Trigger `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_digital_edge_start_trigger` + + **Defined Values**: + + +-------------------------------------------------+---------+------------------------------------------------------------------+ + | Name | Value | Description | + +=================================================+=========+==================================================================+ + | :py:data:`~nirfsg.StartTrigDigEdgeEdge.FALLING` | 1 (0x1) | Occurs when the signal transitions from high level to low level. | + +-------------------------------------------------+---------+------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeEdge.RISING` | 0 (0x0) | Occurs when the signal transitions from low level to high level. | + +-------------------------------------------------+---------+------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------+ + | Characteristic | Value | + +=======================+============================+ + | Datatype | enums.StartTrigDigEdgeEdge | + +-----------------------+----------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Start:Digital Edge** + - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_EDGE** + +digital_edge_start_trigger_source +--------------------------------- + + .. py:attribute:: digital_edge_start_trigger_source + + Specifies the source terminal for the Start Trigger. This property is used when the :py:attr:`nirfsg.Session.start_trigger_type` property is set to digital edge. The :py:attr:`nirfsg.Session.digital_edge_start_trigger_source` property is not case-sensitive. To set the :py:attr:`nirfsg.Session.digital_edge_start_trigger_source` property, the NI-RFSG device must be in the Configuration state. + + PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_digital_edge_start_trigger` + **Defined Values**: + + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +================================================================+=============+========================================================================================================================================+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PFI0` | PFI0 | The trigger is received on PFI 0. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PFI1` | PFI1 | The trigger is received on PFI 1. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PFI2` | PFI2 | The trigger is received on PFI 2. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PFI3` | PFI3 | The trigger is received on PFI 3. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_STAR` | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXI_TRIG7` | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.PXIE_DSTARB` | PXIe_DStarB | The trigger is received on the PXI DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.TRIG_IN` | TrigIn | The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigDigEdgeSource.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigEdgeSource.SYNC_SCRIPT_TRIGGER` | Sync_Script | The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646. | + +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------------+ + | Characteristic | Value | + +=======================+==============================+ + | Datatype | enums.StartTrigDigEdgeSource | + +-----------------------+------------------------------+ + | Permissions | read-write | + +-----------------------+------------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Start:Digital Edge:Source** + - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE** + +digital_equalization_enabled +---------------------------- + + .. py:attribute:: digital_equalization_enabled + + When this property is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (\>500 kHz), but it increases tuning times. + + On the PXI-5670/5671, equalization is performed in the software, so tuning time is increased. On the PXIe-5672, equalization is performed in the hardware so that there is no compromise in performance. + + This property applies only when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` or :py:data:`~nirfsg.GenerationMode.SCRIPT`. To set this property, the NI-RFSG device must be in the Configuration state. + + PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: :py:data:`~nirfsg.DigitalEqualizationEnabled.ENABLE` is the only supported value for this device. + + **Default Value:** + + PXI-5670/5671: :py:data:`~nirfsg.DigitalEqualizationEnabled.DISABLE` + + PXIe-5644/5645/5646, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: :py:data:`~nirfsg.DigitalEqualizationEnabled.ENABLE` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Response and Software Equalization `_—Refer to this topic for more information about equalization performed in software. + + `Frequency Tuning Times `_ + + **Defined Values**: + + +-------------------------------------------------------+---------+-----------------------+ + | Name | Value | Description | + +=======================================================+=========+=======================+ + | :py:data:`~nirfsg.DigitalEqualizationEnabled.DISABLE` | 0 (0x0) | Filter is not applied | + +-------------------------------------------------------+---------+-----------------------+ + | :py:data:`~nirfsg.DigitalEqualizationEnabled.ENABLE` | 1 (0x1) | Filter is applied. | + +-------------------------------------------------------+---------+-----------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------------+ + | Characteristic | Value | + +=======================+==================================+ + | Datatype | enums.DigitalEqualizationEnabled | + +-----------------------+----------------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Digital Equalization Enabled** + - C Attribute: **NIRFSG_ATTR_DIGITAL_EQUALIZATION_ENABLED** + +digital_level_script_trigger_active_level +----------------------------------------- + + .. py:attribute:: digital_level_script_trigger_active_level + + Specifies the active level for the Script Trigger. This property is used when the :py:attr:`nirfsg.Session.script_trigger_type` property is set to :py:data:`~nirfsg.ScriptTrigType.DIGITAL_LEVEL`. + + **Default Value:** :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.HIGH` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + **Related Topics** + + `Script Trigger `_ + + `Digital Level Trigger `_ + + **Defined Values**: + + +-------------------------------------------------------+---------------+--------------------------------------------------+ + | Name | Value | Description | + +=======================================================+===============+==================================================+ + | :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.HIGH` | 9000 (0x2328) | Trigger when the digital trigger signal is high. | + +-------------------------------------------------------+---------------+--------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.LOW` | 9001 (0x2329) | Trigger when the digital trigger signal is low. | + +-------------------------------------------------------+---------------+--------------------------------------------------+ + + + .. tip:: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_level_script_trigger_active_level` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_level_script_trigger_active_level` + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------+ + | Characteristic | Value | + +=======================+=====================================+ + | Datatype | enums.ScriptTrigDigLevelActiveLevel | + +-----------------------+-------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------+ + | Repeated Capabilities | script_triggers | + +-----------------------+-------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Script:Digital Level:Active Level** + - C Attribute: **NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_ACTIVE_LEVEL** + +digital_level_script_trigger_source +----------------------------------- + + .. py:attribute:: digital_level_script_trigger_source + + Specifies the source terminal for the Script Trigger. This property is used when the :py:attr:`nirfsg.Session.script_trigger_type` property is set to :py:data:`~nirfsg.ScriptTrigType.DIGITAL_LEVEL`. The :py:attr:`nirfsg.Session.digital_level_script_trigger_source` property is not case-sensitive. + + To set the :py:attr:`nirfsg.Session.digital_level_script_trigger_source` property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **Defined Values**: + + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=========================================================+=============+=========================================================================================================================================+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PFI0` | PFI0 | The trigger is received on PFI 0. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PFI1` | PFI1 | The trigger is received on PFI 1. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PFI2` | PFI2 | The trigger is received on PFI 2. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PFI3` | PFI3 | The trigger is received on PFI 3. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_STAR` | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXI_TRIG7` | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PXIE_DSTARB` | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.PULSE_IN` | PulseIn | The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelSource.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +---------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + .. tip:: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_level_script_trigger_source` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_level_script_trigger_source` + + The following table lists the characteristics of this property. + + +-----------------------+--------------------------------+ + | Characteristic | Value | + +=======================+================================+ + | Datatype | enums.ScriptTrigDigLevelSource | + +-----------------------+--------------------------------+ + | Permissions | read-write | + +-----------------------+--------------------------------+ + | Repeated Capabilities | script_triggers | + +-----------------------+--------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Script:Digital Level:Source** + - C Attribute: **NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_SOURCE** + +digital_modulation_fsk_deviation +-------------------------------- + + .. py:attribute:: digital_modulation_fsk_deviation + + Specifies the deviation to use in FSK modulation. + + **Units**: hertz (Hz) + + **Default Value:** 1,000 + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Digital:FSK Deviation (Hz)** + - C Attribute: **NIRFSG_ATTR_DIGITAL_MODULATION_FSK_DEVIATION** + +digital_modulation_prbs_order +----------------------------- + + .. py:attribute:: digital_modulation_prbs_order + + Specifies the order of pseudorandom bit sequence (PRBS) internally generated by hardware and used as the message signal in digital modulation. + + **Default Value:** 16 + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Digital:PRBS Order** + - C Attribute: **NIRFSG_ATTR_DIGITAL_MODULATION_PRBS_ORDER** + +digital_modulation_prbs_seed +---------------------------- + + .. py:attribute:: digital_modulation_prbs_seed + + Specifies the seed of the internally generated pseudorandom bit sequence (PRBS). + + **Default Value:** 1 + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Digital:PRBS Seed** + - C Attribute: **NIRFSG_ATTR_DIGITAL_MODULATION_PRBS_SEED** + +digital_modulation_symbol_rate +------------------------------ + + .. py:attribute:: digital_modulation_symbol_rate + + Specifies the symbol rate of the bit stream for digital modulation. + + **Units**: hertz (Hz) + + **Default Value:** 1kHz + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Digital:Symbol Rate** + - C Attribute: **NIRFSG_ATTR_DIGITAL_MODULATION_SYMBOL_RATE** + +digital_modulation_type +----------------------- + + .. py:attribute:: digital_modulation_type + + Specifies the digital modulation format to use. + + **Default Value:** :py:data:`~nirfsg.DigModType.NONE` + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + **Defined Values**: + + +------------------------------------+--------------+-----------------------------------------------------------------------------+ + | Name | Value | Description | + +====================================+==============+=============================================================================+ + | :py:data:`~nirfsg.DigModType.FSK` | 4000 (0xfa0) | Specifies that the digital modulation type is frequency-shift keying (FSK). | + +------------------------------------+--------------+-----------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DigModType.NONE` | 0 (0x0) | Disables digital modulation. | + +------------------------------------+--------------+-----------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DigModType.OOK` | 4001 (0xfa1) | Specifies that the digital modulation type is on-off keying (OOK). | + +------------------------------------+--------------+-----------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DigModType.PSK` | 4002 (0xfa2) | Specifies that the digital modulation type is phase-shift keying (PSK). | + +------------------------------------+--------------+-----------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------+ + | Characteristic | Value | + +=======================+==================+ + | Datatype | enums.DigModType | + +-----------------------+------------------+ + | Permissions | read-write | + +-----------------------+------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Digital:Modulation Type** + - C Attribute: **NIRFSG_ATTR_DIGITAL_MODULATION_TYPE** + +digital_modulation_waveform_type +-------------------------------- + + .. py:attribute:: digital_modulation_waveform_type + + Specifies the type of waveform to use as the message signal in digital modulation. + + **Default Value:** :py:data:`~nirfsg.DigModWfmType.PRBS` + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + **Defined Values**: + + +-----------------------------------------------+---------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===============================================+===============+==========================================================================================================================================================================================================+ + | :py:data:`~nirfsg.DigModWfmType.PRBS` | 5000 (0x1388) | Specifies that the digital modulation waveform type is pseudorandom bit sequence (PRBS). | + +-----------------------------------------------+---------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DigModWfmType.USER_DEFINED` | 5001 (0x1389) | Specifies that the digital modulation waveform type is user defined. To specify the user-defined waveform, call the :py:meth:`nirfsg.Session.configure_digital_modulation_user_defined_waveform` method. | + +-----------------------------------------------+---------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------+ + | Characteristic | Value | + +=======================+=====================+ + | Datatype | enums.DigModWfmType | + +-----------------------+---------------------+ + | Permissions | read-write | + +-----------------------+---------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Digital:Waveform Type** + - C Attribute: **NIRFSG_ATTR_DIGITAL_MODULATION_WAVEFORM_TYPE** + +digital_pattern +--------------- + + .. py:attribute:: digital_pattern + + Enables or disables digital pattern on the PXI-5421/5441 AWG module. This property must be set to True to enable signal routing to and from the Digital Data & Control connector. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXI-5670/5671 + + **Defined Values**: + + +-------+--------------------------+ + | Value | Description | + +=======+==========================+ + | True | Signal routing enabled. | + +-------+--------------------------+ + | False | Signal routing disabled. | + +-------+--------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Digital Pattern** + - C Attribute: **NIRFSG_ATTR_DIGITAL_PATTERN** + +direct_download +--------------- + + .. py:attribute:: direct_download + + Specifies whether the :py:meth:`nirfsg.Session.write_arb_waveform` method immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this property when an arbitrary waveform is first allocated. + + For the PXI-5670, direct download is always disabled. For all other devices, direct download is always enabled. + + PXI-5671: To increase performance when using large waveforms, enable direct download. To maximize reconfigurability, disable direct download. + + Perform the following steps to enable direct download: + + + + 1\. Set the I/Q rate to less than or equal to 8.33MS/s with the :py:attr:`nirfsg.Session.iq_rate` property. + + 2\. Set the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. + + 3\. Disable the :py:attr:`nirfsg.Session.iq_swap_enabled` property. + + 4\. Disable the :py:attr:`nirfsg.Session.digital_equalization_enabled` property. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + + **Defined Values**: + + +-----------------------------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===============================================+===========+=========================================================================================================================================+ + | :py:data:`~nirfsg.DirectDownload.DISABLE` | 0 (0x0) | The RF In local oscillator signal is not present at the front panel LO OUT connector. | + +-----------------------------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DirectDownload.ENABLE` | 1 (0x1) | The RF In local oscillator signal is present at the front panel LO OUT connector. | + +-----------------------------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DirectDownload.UNSPECIFIED` | -2 (-0x2) | The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it. | + +-----------------------------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------+ + | Characteristic | Value | + +=======================+======================+ + | Datatype | enums.DirectDownload | + +-----------------------+----------------------+ + | Permissions | read-write | + +-----------------------+----------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Direct Download** + - C Attribute: **NIRFSG_ATTR_DIRECT_DOWNLOAD** + +done_event_terminal_name +------------------------ + + .. py:attribute:: done_event_terminal_name + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/DoneEvent, where *AWGName* is the name of your associated AWG module in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/DoneEvent, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841: /*ModuleName*/ao/0/DoneEvent, where *ModuleName* is the name of your device in MAX. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/DoneEvent, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1). + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session._get_terminal_name` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Done Event Terminal Name** + - C Attribute: **NIRFSG_ATTR_DONE_EVENT_TERMINAL_NAME** + +events_delay +------------ + + .. py:attribute:: events_delay + + Specifies the delay, in seconds, applied to the Started Event, Done Event, and all Marker Events with respect to the analog output of the RF signal generator. To set this property, the NI-RFSG device must be in the Configuration or Generation state. + + By default, markers and events are delayed to align with the waveform data generated from the device. This property adds an additional delay to markers and events. Use this property to adjust the time delay between events and the corresponding data. + + **Units:** Seconds + + **Valid Values:** + + PXIe-5644/5645: -1.217 μs to 67.050 μs + + PXIe-5646: -0.896 μs to 64.640 μs + + PXIe-5820/5830/5831/5832/5840/5841/5842: 0 μs to 3.276 μs + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Events `_ + + + + .. note:: If you decrease the event delay during generation, some markers may be dropped. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------------------------+ + | Characteristic | Value | + +=======================+=============================================================+ + | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | + +-----------------------+-------------------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Events:Events Delay** + - C Attribute: **NIRFSG_ATTR_EVENTS_DELAY** + +exported_configuration_list_step_trigger_output_terminal +-------------------------------------------------------- + + .. py:attribute:: exported_configuration_list_step_trigger_output_terminal + + Specifies the destination terminal for exporting the Configuration List Step trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + [RF List Mode](RFSG.chm/RF_List_Mode_Overview.html) + + [PFI Lines](RFSG.chm/integration_PFI_Lines.html) + + [PXI Trigger Lines](RFSG.chm/integration_PXI_Trigger.html) + + **Defined Values**: + + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=================================================================+=============+=================================================================================================================================+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PFI0` | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PFI1` | PFI1 | The signal is exported to the PFI 1 connector. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.TRIG_OUT` | TrigOut | The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+--------------------------------------+ + | Characteristic | Value | + +=======================+======================================+ + | Datatype | enums.ConfigListTrigExportOutputTerm | + +-----------------------+--------------------------------------+ + | Permissions | read-write | + +-----------------------+--------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+--------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Configuration List Step:Export Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_CONFIGURATION_LIST_STEP_TRIGGER_OUTPUT_TERMINAL** + +exported_configuration_settled_event_output_terminal +---------------------------------------------------- + + .. py:attribute:: exported_configuration_settled_event_output_terminal + + Specifies the destination terminal for exporting the Configuration Settled event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Triggers `_ + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **Defined Values**: + + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +============================================================================+=============+====================================================================================================================+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ConfigurationSettledEventExportOutputTerm.TRIG_OUT` | TrigOut | TRIG IN/OUT terminal. | + +----------------------------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------------+ + | Characteristic | Value | + +=======================+=================================================+ + | Datatype | enums.ConfigurationSettledEventExportOutputTerm | + +-----------------------+-------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Configuration Settled Event Export Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_CONFIGURATION_SETTLED_EVENT_OUTPUT_TERMINAL** + +exported_done_event_output_terminal +----------------------------------- + + .. py:attribute:: exported_done_event_output_terminal + + Specifies the destination terminal for exporting the Done event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.export_signal` + + **Defined Values**: + + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +============================================================+=============+=================================================================================================================================+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PFI0` | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PFI1` | PFI1 | The signal is exported to the PFI 1 connector. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PFI4` | PFI4 | The signal is exported to the PFI 4 connector. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PFI5` | PFI5 | The signal is exported to the PFI 5 connector. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.DoneEventExportOutputTerm.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------------+ + | Characteristic | Value | + +=======================+=================================+ + | Datatype | enums.DoneEventExportOutputTerm | + +-----------------------+---------------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Done Event Export Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_DONE_EVENT_OUTPUT_TERMINAL** + +exported_marker_event_output_terminal +------------------------------------- + + .. py:attribute:: exported_marker_event_output_terminal + + Specifies the destination terminal for exporting the Marker Event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Marker Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.export_signal` + + **Defined Values**: + + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==============================================================+=============+=================================================================================================================================+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PFI0` | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PFI1` | PFI1 | The signal is exported to the PFI 1 connector. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PFI4` | PFI4 | The signal is exported to the PFI 4 connector. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PFI5` | PFI5 | The signal is exported to the PFI 5 connector. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventExportOutputTerm.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +--------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + .. tip:: This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].exported_marker_event_output_terminal` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.exported_marker_event_output_terminal` + + The following table lists the characteristics of this property. + + +-----------------------+-----------------------------------+ + | Characteristic | Value | + +=======================+===================================+ + | Datatype | enums.MarkerEventExportOutputTerm | + +-----------------------+-----------------------------------+ + | Permissions | read-write | + +-----------------------+-----------------------------------+ + | Repeated Capabilities | markers | + +-----------------------+-----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Marker:Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_MARKER_EVENT_OUTPUT_TERMINAL** + +exported_pulse_modulation_event_active_level +-------------------------------------------- + + .. py:attribute:: exported_pulse_modulation_event_active_level + + Specifies the active level of the exported Pulse Modulation Event. When `property pulse modulation enabled` is Enabled, `pulse modulation active level` is `active high`, `exported pulse modulation event output terminal` is `PulseOut`, and this property is `active high`, then the Pulse Modulation Event will transition from Low to High after the the Pulse In signal is set to logic high, and the RF Output has settled. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.HIGH` + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +-------------------------------------------------------+---------------+--------------------------------------------------+ + | Name | Value | Description | + +=======================================================+===============+==================================================+ + | :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.HIGH` | 9000 (0x2328) | Trigger when the digital trigger signal is high. | + +-------------------------------------------------------+---------------+--------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.LOW` | 9001 (0x2329) | Trigger when the digital trigger signal is low. | + +-------------------------------------------------------+---------------+--------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------+ + | Characteristic | Value | + +=======================+=====================================+ + | Datatype | enums.ScriptTrigDigLevelActiveLevel | + +-----------------------+-------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Pulse Modulation:Exported Pulse Modulation Event Active Level** + - C Attribute: **NIRFSG_ATTR_EXPORTED_PULSE_MODULATION_EVENT_ACTIVE_LEVEL** + +exported_pulse_modulation_event_output_terminal +----------------------------------------------- + + .. py:attribute:: exported_pulse_modulation_event_output_terminal + + Specifies the destination terminal for exporting the Pulse Modulation Event. The Pulse Modulation Event tracks the RF Envelope when Pulse Modulation is Enabled. If this property is set to a value other than `do not export str`, calling NI-RFSG Commit will cause the output terminal to be pulled to the logic level that is the inverse of `exported pulse modulation event active level`. You can tri-state this terminal by setting this property to `do not export str` or by calling `niRFSG Reset`. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.PulseModulationOutputTerm.PULSE_OUT` + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +------------------------------------------------------------+----------+-------------------+ + | Name | Value | Description | + +============================================================+==========+===================+ + | :py:data:`~nirfsg.PulseModulationOutputTerm.DO_NOT_EXPORT` | | yet to be defined | + +------------------------------------------------------------+----------+-------------------+ + | :py:data:`~nirfsg.PulseModulationOutputTerm.PULSE_OUT` | PulseOut | yet to be defined | + +------------------------------------------------------------+----------+-------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------------+ + | Characteristic | Value | + +=======================+=================================+ + | Datatype | enums.PulseModulationOutputTerm | + +-----------------------+---------------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Pulse Modulation:Exported Pulse Modulation Event Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_PULSE_MODULATION_EVENT_OUTPUT_TERMINAL** + +exported_ref_clock_output_terminal +---------------------------------- + + .. py:attribute:: exported_ref_clock_output_terminal + + Specifies the destination terminal for exporting the Reference Clock on the RF signal generators. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.DO_NOT_EXPORT` + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Interconnecting Multiple NI 5673E Modules `_ + + **Defined Values**: + + Name (Value): Description + + :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.DO_NOT_EXPORT` () :The Reference Clock signal is not exported. + + :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.REF_OUT` (RefOut) :Exports the Reference Clock signal to the REF OUT connector of the device. + + :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.REF_OUT2` (RefOut2) :Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. + + :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.CLK_OUT` (ClkOut) :Exports the Reference Clock signal to the CLK OUT connector of the device. + + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | Supported devices | + +=====================================================================+=========+============================================================================================+=======================================================================================================================================================================+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.CLK_OUT` | ClkOut | Exports the Reference Clock signal to the CLK OUT connector of the device. | Supported on PXIe-5673, 5673E | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.DO_NOT_EXPORT` | | The Reference Clock signal is not exported. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5652, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5652 (See Note) | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.REF_OUT` | RefOut | Exports the Reference Clock signal to the REF OUT connector of the device. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5653, 5653, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5653, | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.REF_OUT2` | RefOut2 | Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. | Supported on PXIe-5650/5651/5652, 5654, 5673E, PXIe-5654 with PXIe-5696 | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: The :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.REF_OUT2` output terminal value is valid for only the PXIe-5650/5651/5652, not the PXI-5650/5651/5652. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------------------------+ + | Characteristic | Value | + +=======================+==========================================+ + | Datatype | enums.ReferenceClockExportOutputTerminal | + +-----------------------+------------------------------------------+ + | Permissions | read-write | + +-----------------------+------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Reference Clock Export Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_REF_CLOCK_OUTPUT_TERMINAL** + +exported_ref_clock_rate +----------------------- + + .. py:attribute:: exported_ref_clock_rate + + Specifies the Reference Clock Rate, in Hz, of the signal sent to the Reference Clock Export Output Terminal. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.ReferenceClockExportedRate._10mhz` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------------------------------------------------------+---------------------+-------------------------------------+ + | Name | Value | Description | + +=======================================================+=====================+=====================================+ + | :py:data:`~nirfsg.ReferenceClockExportedRate._10mhz` | 10000000 (0x989680) | Uses a 10MHz Reference Clock rate. | + +-------------------------------------------------------+---------------------+-------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportedRate._100mhz` | | Uses a 100MHz Reference Clock rate. | + +-------------------------------------------------------+---------------------+-------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportedRate._1ghz` | | Uses a 1GHz Reference Clock rate. | + +-------------------------------------------------------+---------------------+-------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------------+ + | Characteristic | Value | + +=======================+==================================+ + | Datatype | enums.ReferenceClockExportedRate | + +-----------------------+----------------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Reference Clock Exported Rate (Hz)** + - C Attribute: **NIRFSG_ATTR_EXPORTED_REF_CLOCK_RATE** + +exported_script_trigger_output_terminal +--------------------------------------- + + .. py:attribute:: exported_script_trigger_output_terminal + + Specifies the destination terminal for exporting the Script Trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ —Refer to this topic for information about trigger delay. + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.export_signal` + + **Defined Values**: + + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=============================================================+=============+=================================================================================================================================+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PFI0` | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PFI1` | PFI1 | The signal is exported to the PFI 1 connector. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PFI4` | PFI4 | The signal is exported to the PFI 4 connector. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PFI5` | PFI5 | The signal is exported to the PFI 5 connector. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigExportOutputTerm.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +-------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + .. tip:: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].exported_script_trigger_output_terminal` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.exported_script_trigger_output_terminal` + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------------+ + | Characteristic | Value | + +=======================+==================================+ + | Datatype | enums.ScriptTrigExportOutputTerm | + +-----------------------+----------------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------------+ + | Repeated Capabilities | script_triggers | + +-----------------------+----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Script:Export Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_SCRIPT_TRIGGER_OUTPUT_TERMINAL** + +exported_started_event_output_terminal +-------------------------------------- + + .. py:attribute:: exported_started_event_output_terminal + + Specifies the destination terminal for exporting the Started event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.export_signal` + + **Defined Values**: + + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===============================================================+=============+========================================================================================================================================+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PFI0` | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PFI1` | PFI1 | The signal is exported to the PFI 1 connector. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PFI4` | PFI4 | The signal is exported to the PFI 4 connector. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PFI5` | PFI5 | The signal is exported to the PFI 5 connector. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartedEventExportOutputTerm.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +---------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------------------+ + | Characteristic | Value | + +=======================+====================================+ + | Datatype | enums.StartedEventExportOutputTerm | + +-----------------------+------------------------------------+ + | Permissions | read-write | + +-----------------------+------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Started Event Export Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_STARTED_EVENT_OUTPUT_TERMINAL** + +exported_start_trigger_output_terminal +-------------------------------------- + + .. py:attribute:: exported_start_trigger_output_terminal + + Specifies the destination terminal for exporting the Start Trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **Defined Values**: + + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +============================================================+=============+========================================================================================================================================+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PFI0` | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PFI1` | PFI1 | The signal is exported to the PFI 1 connector. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PFI4` | PFI4 | The signal is exported to the PFI 4 connector. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PFI5` | PFI5 | The signal is exported to the PFI 5 connector. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.TRIG_OUT` | TrigOut | The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigExportOutputTerm.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------------+ + | Characteristic | Value | + +=======================+=================================+ + | Datatype | enums.StartTrigExportOutputTerm | + +-----------------------+---------------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Start:Export Output Terminal** + - C Attribute: **NIRFSG_ATTR_EXPORTED_START_TRIGGER_OUTPUT_TERMINAL** + +external_calibration_recommended_interval +----------------------------------------- + + .. py:attribute:: external_calibration_recommended_interval + + Returns the recommended interval between each external calibration of the device. + + **Units**: months + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **External Calibration:Recommended Interval** + - C Attribute: **NIRFSG_ATTR_EXTERNAL_CALIBRATION_RECOMMENDED_INTERVAL** + +external_calibration_temperature +-------------------------------- + + .. py:attribute:: external_calibration_temperature + + Returns the temperature of the device at the time of the last external calibration. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **External Calibration:Last External Calibration Temperature** + - C Attribute: **NIRFSG_ATTR_EXTERNAL_CALIBRATION_TEMPERATURE** + +external_gain +------------- + + .. py:attribute:: external_gain + + Specifies the external amplification or attenuation, if any, between the RF signal generator and the device under test. + + Positive values for this property represent amplification, and negative values for this property represent attenuation. + + **Valid Values:** -INF dB to +INF dB + + **Default Value:** 0dB + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + .. note:: - Setting this property adjusts the actual device output power to compensate for any amplification or attenuation between the RF signal generator and the device under test. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:External Gain (dB)** + - C Attribute: **NIRFSG_ATTR_EXTERNAL_GAIN** + +fast_tuning_option +------------------ + + .. py:attribute:: fast_tuning_option + + Returns whether the NI RF signal generator has the fast tuning option available. + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Tuning Times `_ + + **Defined Values**: + + +-------+------------------------------------------------------------+ + | Value | Description | + +=======+============================================================+ + | True | The RF signal generator has the fast 100 µs tuning option. | + +-------+------------------------------------------------------------+ + | False | The RF signal generator has the 1 ms tuning option. | + +-------+------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | bool | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:Options:Fast Tuning Option** + - C Attribute: **NIRFSG_ATTR_FAST_TUNING_OPTION** + +fixed_group_delay_across_ports +------------------------------ + + .. py:attribute:: fixed_group_delay_across_ports + + Specifies a comma-separated list of ports for which to fix the group delay. + + + **Supported Devices:** PXIe-5831/5832 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Fixed Group Delay Across Ports** + - C Attribute: **NIRFSG_ATTR_FIXED_GROUP_DELAY_ACROSS_PORTS** + +fpga_bitfile_path +----------------- + + .. py:attribute:: fpga_bitfile_path + + Returns a string containing the path to the location of the current NI-RFSG instrument driver FPGA extensions bitfile, a .lvbitx file, that is programmed on the device. You can specify the bitfile location using the Driver Setup string in the **optionString** parameter of the :py:meth:`nirfsg.Session.__init__` method. + + NI-RFSG instrument driver FPGA extensions enable you to use pre-compiled FPGA bitfiles to customize the behavior of the vector signal transceiver FPGA while maintaining the functionality of the NI-RFSG instrument driver. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver FPGA Extensions `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Device Characteristics:FPGA Bitfile Path** + - C Attribute: **NIRFSG_ATTR_FPGA_BITFILE_PATH** + +fpga_target_name +---------------- + + .. py:attribute:: fpga_target_name + + Returns a string that contains the name of the FPGA target being used. This name can be used with the RIO open session to open a reference to the FPGA. + + This property is channel dependent if multiple FPGA targets are supported. + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:FPGA Target Name** + - C Attribute: **NIRFSG_ATTR_FPGA_TARGET_NAME** + +fpga_temperature +---------------- + + .. py:attribute:: fpga_temperature + + Returns the FPGA temperature in degrees Celsius. + + Serial signals between the sensor and the system control unit can potentially modulate the signal being generated, thus causing phase spurs. After the device thoroughly warms up, its temperature varies only slightly (less than 1 degree Celsius) and slowly, and it is not necessary to constantly poll this temperature sensor. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + .. note:: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:FPGA Temperature (Degrees C)** + - C Attribute: **NIRFSG_ATTR_FPGA_TEMPERATURE** + +frequency +--------- + + .. py:attribute:: frequency + + Specifies the frequency of the generated RF signal. For arbitrary waveform generation, this property specifies the center frequency of the signal. + + The PXI-5670/5671, PXIe-5672, PXIe-5820, and PXIe-5860 must be in the Configuration state to use this property. However, the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 can be in the Configuration or the Generation state to use this property. + + **Units**: hertz (Hz) + + **Defined Values**: + Refer to the specifications document for your device allowable frequency settings. + + **Default Value:** + + PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E: 100MHz + + PXIe-5653: 4GHz + + PXIe-5820: 0Hz + + PXIe-5830/5831/5832: 6.5 GHz + + PXIe-5840/5841/5860, PXI-5842 (500 MHz, 1 GHz, and 2 GHz bandwidth options): 1GHz + + PXIe-5842 (4 GHz bandwidth option) using the Standard personality: 1GHz + + PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality: 6.5GHz + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.ConfigureRf` + + + + .. note:: For the PXIe-5645, this property is ignored if you are using the I/Q ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Frequency (Hz)** + - C Attribute: **NIRFSG_ATTR_FREQUENCY** + +frequency_settling +------------------ + + .. py:attribute:: frequency_settling + + Specifies the frequency settling time. Interpretation of this value depends on the :py:attr:`nirfsg.Session.frequency_settling_units` property. + + **Valid Values:** + + The valid values for this property depend on the :py:attr:`nirfsg.Session.frequency_settling_units` property. + + + + + **Default Value**: 1.0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Settling Times `_ + + `Events `_ + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------------------------+ + | Characteristic | Value | + +=======================+=============================================================+ + | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | + +-----------------------+-------------------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Frequency Settling** + - C Attribute: **NIRFSG_ATTR_FREQUENCY_SETTLING** + +frequency_settling_units +------------------------ + + .. py:attribute:: frequency_settling_units + + Specifies the interpretation of the value passed to the :py:attr:`nirfsg.Session.frequency_settling` property. + + PXIe-5650/5651/5652/5653, PXIe-5673E: When the :py:attr:`nirfsg.Session.active_configuration_list` property is set to a valid list name, the :py:attr:`nirfsg.Session.frequency_settling_units` property supports only :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` as a valid value. + + PXIe-5654/5654 with PXIe-5696: The :py:attr:`nirfsg.Session.frequency_settling_units` property supports only :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` and :py:data:`~nirfsg.FrequencySettlingUnits.PPM` as valid values. + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Default Value**: :py:data:`~nirfsg.FrequencySettlingUnits.PPM` + + **Related Topics** + + `Events `_ + + **Defined Values**: + + +-----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | Name | Description | + +===========================================================+=================================================================================================================+ + | :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_LOCK` | Specifies the time to wait after the frequency PLL locks. | + +-----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` | Specifies the time to wait after all writes occur to change the frequency. | + +-----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.FrequencySettlingUnits.PPM` | Specifies the minimum frequency accuracy when settling completes. Units are in parts per million (PPM or 1E-6). | + +-----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + + .. note:: If you set this property to :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO`, the definition of settled for the Configuration Settled event changes. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------------+ + | Characteristic | Value | + +=======================+==============================+ + | Datatype | enums.FrequencySettlingUnits | + +-----------------------+------------------------------+ + | Permissions | read-write | + +-----------------------+------------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Frequency Settling Units** + - C Attribute: **NIRFSG_ATTR_FREQUENCY_SETTLING_UNITS** + +frequency_tolerance +------------------- + + .. py:attribute:: frequency_tolerance + + Specifies the allowable frequency error introduced during the software upconversion process. NI-RFSG may introduce a frequency error up to the specified amount to optimize computational speed and onboard memory usage while upconverting phase-continuous signals. + + If the :py:attr:`nirfsg.Session.phase_continuity_enabled` property is set to :py:data:`~nirfsg.NIRFSG_VAL_DISABLE`, the :py:attr:`nirfsg.Session.frequency_tolerance` property is ignored, and the driver does not introduce a frequency error. On devices that do not use software upconversion, this property is ignored. The PXI-5670 always uses software upconversion, and the PXI-5671 uses software upconversion for I/Q rates greater than 8.33MS/s. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units**: hertz (Hz) + + **Default Value:** 50 + + **Supported Devices:** PXI-5670/5671 + + **Related Topics** + + `Phase Continuity `_ + + + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Frequency Tolerance (Hz)** + - C Attribute: **NIRFSG_ATTR_FREQUENCY_TOLERANCE** + +generation_mode +--------------- + + .. py:attribute:: generation_mode + + Specifies whether to generate a continuous wave (CW) signal, the arbitrary waveform specified by the :py:attr:`nirfsg.Session.arb_selected_waveform` property, or the script specified by the :py:attr:`nirfsg.Session.selected_script` property, upon calling the :py:meth:`nirfsg.Session._initiate` method. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.GenerationMode.CW` + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696 (CW support only), PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + `Scripting Instructions `_—Refer to this topic for more information about scripting. + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_generation_mode` + + **Defined Values**: + + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +================================================+==============+==================================================================================================================================================+ + | :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` | 1001 (0x3e9) | Configures the RF signal generator to generate the arbitrary waveform specified by the :py:attr:`nirfsg.Session.arb_selected_waveform` property. | + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.GenerationMode.CW` | 1000 (0x3e8) | Configures the RF signal generator to generate a CW signal. | + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.GenerationMode.SCRIPT` | 1002 (0x3ea) | Configures the RF signal generator to generate arbitrary waveforms as directed by the :py:attr:`nirfsg.Session.selected_script` property.. | + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+----------------------+ + | Characteristic | Value | + +=======================+======================+ + | Datatype | enums.GenerationMode | + +-----------------------+----------------------+ + | Permissions | read-write | + +-----------------------+----------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Generation Mode** + - C Attribute: **NIRFSG_ATTR_GENERATION_MODE** + +group_capabilities +------------------ + + .. py:attribute:: group_capabilities + + Returns a string that contains a comma-separated list of class-extension groups that NI-RFSG implements. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Capabilities:Class Group Capabilities** + - C Attribute: **NIRFSG_ATTR_GROUP_CAPABILITIES** + +host_dma_buffer_size +-------------------- + + .. py:attribute:: host_dma_buffer_size + + Specifies the size of the DMA buffer in computer memory, in bytes. To set this property, the NI-RFSG device must be in the Configuration state. + + A sufficiently large host DMA buffer improves performance by allowing large writes to be transferred more efficiently. + + **Units:** bytes + + **Default Value:** 8MB + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Advanced:Host DMA Buffer Size** + - C Attribute: **NIRFSG_ATTR_HOST_DMA_BUFFER_SIZE** + +instrument_firmware_revision +---------------------------- + + .. py:attribute:: instrument_firmware_revision + + Returns a string that contains the firmware revision information for the NI-RFSG device you are currently using. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.revision_query` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Instrument Identification:Firmware Revision** + - C Attribute: **NIRFSG_ATTR_INSTRUMENT_FIRMWARE_REVISION** + +instrument_manufacturer +----------------------- + + .. py:attribute:: instrument_manufacturer + + Returns a string that contains the name of the manufacturer of the NI-RFSG device you are currently using. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Instrument Identification:Manufacturer** + - C Attribute: **NIRFSG_ATTR_INSTRUMENT_MANUFACTURER** + +instrument_model +---------------- + + .. py:attribute:: instrument_model + + Returns a string that contains the model number or name of the NI-RFSG device that you are currently using. For drivers that support more than one device, this property returns a comma-separated list of supported devices. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Instrument Identification:Model** + - C Attribute: **NIRFSG_ATTR_INSTRUMENT_MODEL** + +interchange_check +----------------- + + .. py:attribute:: interchange_check + + Specifies whether to perform interchangeability checking and retrieve interchangeability warnings. + + **Default Value:** False + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+--------------------------------+ + | Value | Description | + +=======+================================+ + | True | Interchange check is enabled. | + +-------+--------------------------------+ + | False | Interchange check is disabled. | + +-------+--------------------------------+ + + .. note:: Enabling interchangeability check is not supported. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:User Options:Interchange Check** + - C Attribute: **NIRFSG_ATTR_INTERCHANGE_CHECK** + +interpolation_delay +------------------- + + .. py:attribute:: interpolation_delay + + Specifies the delay, in seconds, to apply to the I/Q waveform. To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** Seconds + + **Valid Values:** Plus or minus half of one I/Q sample period + + **Supported Devices:** PXIe-5644/5645/5646 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Interpolation Delay** + - C Attribute: **NIRFSG_ATTR_INTERPOLATION_DELAY** + +io_resource_descriptor +---------------------- + + .. py:attribute:: io_resource_descriptor + + Returns a string that contains the resource name NI-RFSG uses to identify the physical device. If you initialize NI-RFSG with a logical name, this property contains the resource name that corresponds to the entry in the IVI Configuration Utility. If you initialize NI-RFSG with the resource name, this property contains that value. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Advanced Session Information:Resource Descriptor** + - C Attribute: **NIRFSG_ATTR_IO_RESOURCE_DESCRIPTOR** + +iq_gain_imbalance +----------------- + + .. py:attribute:: iq_gain_imbalance + + Specifies the gain imbalance of the I/Q modulator (I versus Q). + + Gain imbalance is calculated with the following equation: + + + **Units**: dB + + **Valid Values:**-6dB to 6dB + + **Default Value:** 0dB + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + + `Spurious Performance `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **IQ Impairment:Gain Imbalance (dB)** + - C Attribute: **NIRFSG_ATTR_IQ_GAIN_IMBALANCE** + +iq_impairment_enabled +--------------------- + + .. py:attribute:: iq_impairment_enabled + + Enables or disables I/Q impairment. The :py:attr:`nirfsg.Session.iq_i_offset`, :py:attr:`nirfsg.Session.iq_q_offset`, :py:attr:`nirfsg.Session.iq_gain_imbalance`, and :py:attr:`nirfsg.Session.iq_skew` properties are ignored when the :py:attr:`nirfsg.Session.iq_impairment_enabled` property is disabled. + + **Default Value:** True + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +-------+-----------------------------+ + | Value | Description | + +=======+=============================+ + | True | I/Q impairment is enabled. | + +-------+-----------------------------+ + | False | I/Q impairment is disabled. | + +-------+-----------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **IQ Impairment:Enabled** + - C Attribute: **NIRFSG_ATTR_IQ_IMPAIRMENT_ENABLED** + +iq_i_offset +----------- + + .. py:attribute:: iq_i_offset + + When using a National Instruments AWG module or vector signal transceiver (VST), this property specifies the I-signal DC offset. Units are either percent (%) or volts (V), depending on the :py:attr:`nirfsg.Session.iq_offset_units` property setting. + + PXIe-5673/5673E: Actual AWG signal offset is equal to the I/Q modulator offset correction plus the value specified by this property. When using an external AWG (non–National Instruments AWG), this property is read-only and indicates the I/Q modulator I-offset. Units are volts, as specified by the :py:attr:`nirfsg.Session.iq_offset_units` property. + + **Valid Values:**-100 to 100% or -0.2V to 0.2V + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **IQ Impairment:I Offset** + - C Attribute: **NIRFSG_ATTR_IQ_I_OFFSET** + +iq_offset_units +--------------- + + .. py:attribute:: iq_offset_units + + Specifies the units of the :py:attr:`nirfsg.Session.iq_i_offset` property and :py:attr:`nirfsg.Session.iq_q_offset` property. Offset units are either percent or volts. + + The AWG or VST offset is the specified percentage of the AWG or VST peak power level when the :py:attr:`nirfsg.Session.iq_offset_units` property is set to :py:data:`~nirfsg.OffsetUnits.PERCENT`. Given perfect carrier leakage suppression, the following equation is satisfied + + + or equivalently + + + If the :py:attr:`nirfsg.Session.iq_i_offset` property is set to 100%, :py:attr:`nirfsg.Session.iq_q_offset` property is set to 0%, and :py:attr:`nirfsg.Session.power_level` property set to 0 dBm, the desired RF signal is at 0 dBm and the carrier leakage is also at 0 dBm. + + The AWG or VST peak power level changes when settings change in other properties such as the :py:attr:`nirfsg.Session.power_level`, :py:attr:`nirfsg.Session.frequency`, :py:attr:`nirfsg.Session.iq_skew`, :py:attr:`nirfsg.Session.iq_gain_imbalance`, :py:attr:`nirfsg.Session.attenuator_hold_enabled`, and :py:attr:`nirfsg.Session.arb_pre_filter_gain` properties. When the :py:attr:`nirfsg.Session.iq_offset_units` property is set to :py:data:`~nirfsg.OffsetUnits.PERCENT`, the actual AWG or VST offset changes as the AWG or VST peak power level changes to satisfy the preceding equations. These changes are useful if you are intentionally adding carrier leakage to test the tolerance of a receiver. When the :py:attr:`nirfsg.Session.iq_offset_units` property is set to :py:data:`~nirfsg.OffsetUnits.PERCENT`, the carrier leakage, in dBc, remains at a consistent level. + + If you are trying to eliminate residual carrier leakage due to calibration inaccuracies or drift, set the :py:attr:`nirfsg.Session.iq_offset_units` property to :py:data:`~nirfsg.OffsetUnits.VOLTS`. Offset correction voltage is applied to the I/Q modulator or VST, regardless of changes to the AWG or VST peak power level. + + **Default Value**: :py:data:`~nirfsg.OffsetUnits.PERCENT` + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------+ + | Name | Description | + +========================================+==========================================================================================================================+ + | :py:data:`~nirfsg.OffsetUnits.PERCENT` | Specifies the :py:attr:`nirfsg.Session.iq_i_offset` and :py:attr:`nirfsg.Session.iq_q_offset` property units as percent. | + +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.OffsetUnits.VOLTS` | Specifies the :py:attr:`nirfsg.Session.iq_i_offset` and :py:attr:`nirfsg.Session.iq_q_offset` property units as volts. | + +----------------------------------------+--------------------------------------------------------------------------------------------------------------------------+ + + .. note:: For any devices except PXIe-5820, if the :py:attr:`nirfsg.Session.iq_offset_units` property is set to :py:data:`~nirfsg.OffsetUnits.VOLTS`, a 0.1 I offset results in a 0.1 V offset in the output. For PXIe-5820 devices, 0.1 I offset results in a 10% offset in the output. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------+ + | Characteristic | Value | + +=======================+===================+ + | Datatype | enums.OffsetUnits | + +-----------------------+-------------------+ + | Permissions | read-write | + +-----------------------+-------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **IQ Impairment:Offset Units** + - C Attribute: **NIRFSG_ATTR_IQ_OFFSET_UNITS** + +iq_out_port_carrier_frequency +----------------------------- + + .. py:attribute:: iq_out_port_carrier_frequency + + Specifies the frequency of the I/Q OUT port signal. The onboard signal processing (OSP) applies the specified frequency shift to the I/Q data before the data is sent to the digital-to-analog converter (DAC). To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** hertz (Hz) + + **Valid Values:** + + PXIe-5645: -60MHz to 60MHz + + PXIe-5820: -500MHz to 500MHz + + **Supported Devices:** PXIe-5645, PXIe-5820 + + + + .. note:: - For the PXIe-5820, NI recommends using the :py:attr:`nirfsg.Session.frequency` property. + + - For the PXIe-5645, this property is ignored if you are using the RF ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:IQ Out Port:Carrier Frequency** + - C Attribute: **NIRFSG_ATTR_IQ_OUT_PORT_CARRIER_FREQUENCY** + +iq_out_port_common_mode_offset +------------------------------ + + .. py:attribute:: iq_out_port_common_mode_offset + + Specifies the common-mode offset applied to the signals generated at each differential output terminal. This property applies only when you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL`. Common-mode offset shifts both positive and negative terminals in the same direction. + + To use this property, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** Volts + + **Valid Values:** + + PXIe-5645: -0.8V to 0.8V if you set the :py:attr:`nirfsg.Session.iq_out_port_load_impedance` property to 50 Ω. The valid values are -1.2V to 1.2V if you set the :py:attr:`nirfsg.Session.iq_out_port_load_impedance` property to 100 Ω. + + PXIe-5820: -0.25V to 1.5V + + **Supported Devices:** PXIe-5645, PXIe-5820 + + + + .. note:: - For the PXIe-5645, this property is ignored if you are using the RF ports. + + - The valid range is dependent on the load impedance. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:IQ Out Port:Common Mode Offset** + - C Attribute: **NIRFSG_ATTR_IQ_OUT_PORT_COMMON_MODE_OFFSET** + +iq_out_port_level +----------------- + + .. py:attribute:: iq_out_port_level + + Specifies the amplitude of the generated signal in volts, peak-to-peak (V). For example, if you set this property to 1.0, the output signal ranges from -0.5 volts to 0.5 volts. + + To use this property, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + To set this property, the NI-RFSG device must be in the Configuration state. + + Refer to the specifications document for your device for allowable output levels. + + **Units:** Volts, peak-to-peak (V\ :sub:`pk-pk`\ ) + + **Valid Values:** + + PXIe-5645: 1V\ :sub:`pk-pk`\ maximum if you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL`, and 0.5V\ :sub:`pk-pk`\ + + maximum if you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.SINGLE_ENDED`. + + PXIe-5820: 3.4V\ :sub:`pk-pk`\ maximum for signal bandwidth less than 160MHz, and 2V\ :sub:`pk-pk`\ + + maximum for signal bandwidth greater than 160MHz. + + **Default Value:** 0.5volts + + **Supported Devices:** PXIe-5645, PXIe-5820 + + + + .. note:: - For the PXIe-5645, this property is ignored if you are using the RF ports. + + - The valid values are only applicable when you set the :py:attr:`nirfsg.Session.iq_out_port_load_impedance` property to 50 Ω and when you set the :py:attr:`nirfsg.Session.iq_out_port_offset` property to 0. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:IQ Out Port:Level** + - C Attribute: **NIRFSG_ATTR_IQ_OUT_PORT_LEVEL** + +iq_out_port_load_impedance +-------------------------- + + .. py:attribute:: iq_out_port_load_impedance + + Specifies the load impedance connected to the I/Q OUT port. To set this property, the NI-RFSG device must be in the Configuration state. + + To use this property, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + **Units:** Ohms + + **Valid Values:** Any value greater than 0. Values greater than or equal to 1 megaohms (MΩ) are interpreted as high impedance. + + **Default Value:** 50 Ω if you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.SINGLE_ENDED`, and 100 Ω if you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL`. + + **Supported Devices:** PXIe-5645, PXIe-5820 + + + + .. note:: For the PXIe-5645, this property is ignored if you are using the RF ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:IQ Out Port:Load Impedance** + - C Attribute: **NIRFSG_ATTR_IQ_OUT_PORT_LOAD_IMPEDANCE** + +iq_out_port_offset +------------------ + + .. py:attribute:: iq_out_port_offset + + Specifies the value, in volts, that the signal generator adds to the arbitrary waveform data. To set this property, the NI-RFSG device must be in the Configuration state. + + To use this property, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + PXIe-5645: The waveform may be scaled in DSP prior to adding offset and the device state may be changed in order to accommodate the requested offset. + + PXIe-5820: The waveform is not automatically scaled in DSP. To prevent DSP overflows, use the :py:attr:`nirfsg.Session.arb_pre_filter_gain` property to scale the waveform to provide additional headroom for offsets. + + **Units:** Volts + + **Supported Devices:** PXIe-5645, PXIe-5820 + + + + .. note:: For the PXIe-5645, this property is ignored if you are using the RF ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:IQ Out Port:Offset** + - C Attribute: **NIRFSG_ATTR_IQ_OUT_PORT_OFFSET** + +iq_out_port_temperature +----------------------- + + .. py:attribute:: iq_out_port_temperature + + Returns the temperature, in degrees Celsius, of the I/Q Out circuitry on the device. + + **Units:** Degrees Celsius + + **Supported Devices:** PXIe-5645, PXIe-5820 + + + + .. note:: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:IQ Out Port:Temperature (Degrees C)** + - C Attribute: **NIRFSG_ATTR_IQ_OUT_PORT_TEMPERATURE** + +iq_out_port_terminal_configuration +---------------------------------- + + .. py:attribute:: iq_out_port_terminal_configuration + + Specifies whether to use the I/Q OUT port for differential configuration or single-ended configuration. If you set this property to :py:data:`~nirfsg.IQOutPortTermCfg.SINGLE_ENDED`, you must terminate the negative I and Q output connectors with a 50 Ohm termination. + + If you set this property to :py:data:`~nirfsg.IQOutPortTermCfg.SINGLE_ENDED`, the positive I and Q connectors generate the resulting waveform. If you set this property to :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL`, both the positive and negative I and Q connectors generate the resulting waveform. + + To use this property, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_int32` method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL` + + PXIe-5820: The only valid value for this property is :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL`. + + **Supported Devices:** PXIe-5645, PXIe-5820 + + **Related Topics** + + `Differential and Single-Ended Operation (I/O Interface) `_ + + **Defined Values**: + + +--------------------------------------------------+----------------+--------------------------------------------------+ + | Name | Value | Description | + +==================================================+================+==================================================+ + | :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL` | 15000 (0x3a98) | Sets the terminal configuration to differential. | + +--------------------------------------------------+----------------+--------------------------------------------------+ + | :py:data:`~nirfsg.IQOutPortTermCfg.SINGLE_ENDED` | 15001 (0x3a99) | Sets the terminal configuration to single-ended. | + +--------------------------------------------------+----------------+--------------------------------------------------+ + + .. note:: For the PXIe-5645, this property is ignored if you are using the RF ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------+ + | Characteristic | Value | + +=======================+========================+ + | Datatype | enums.IQOutPortTermCfg | + +-----------------------+------------------------+ + | Permissions | read-write | + +-----------------------+------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:IQ Out Port:Terminal Configuration** + - C Attribute: **NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION** + +iq_q_offset +----------- + + .. py:attribute:: iq_q_offset + + When using a National Instruments AWG module or VST device, this property specifies the Q-signal DC offset. Units are either percent (%) or volts (V), depending on the :py:attr:`nirfsg.Session.iq_offset_units` property setting. + + PXIe-5673/5673E: Actual AWG signal offset is equal to the I/Q modulator offset correction plus the value specified by this property. When using an external AWG (non–National Instruments AWG), the :py:attr:`nirfsg.Session.iq_q_offset` property is read-only and indicates the I/Q modulator Q-offset. Units are volts, as indicated by the :py:attr:`nirfsg.Session.iq_offset_units` property. + + **Valid Values**: -100% to 100% or -0.2V to 0.2V + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **IQ Impairment:Q Offset** + - C Attribute: **NIRFSG_ATTR_IQ_Q_OFFSET** + +iq_rate +------- + + .. py:attribute:: iq_rate + + This property specifies the I/Q rate of the arbitrary waveform. The I/Q rate is coerced to a value the hardware can achieve. Read this value back after setting it to see the actual I/Q rate. NI-RFSG internally uses an FIR filter with flat response up to (0.4 × IQ rate). Given a desired signal with the maximum frequency content *f*, sample the signal at an I/Q rate greater than or equal to ( *f*/0.4). + + This property applies only when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` or :py:data:`~nirfsg.GenerationMode.SCRIPT`. + + To set this property, the NI-RFSG device must be in the Configuration state. + + Setting this property to 50 MS/s on the PXI-5670/5671 and PXIe-5672 has the following implications: + - NI-RFSG is forced to place the carrier frequency at 18 MHz ± 1 MHz to avoid aliasing. This means that NI-RFSG cannot select a carrier frequency that could optimize waveform size if phase continuity is enabled. + - Output signal bandwidth must be <5 MHz to avoid aliasing. + - Close-in phase noise is higher. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate an I/Q rate with a waveform. + + `Digital Upconverter `_ + **Valid Values**: + + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Device | I/Q Rates | + +==========================================================================+====================================================================================================================================================================================================================================================+ + | PXIe-5644/5645 | Up to 120 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5646 | Up to 250 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXI-5670 | 50 MS/s* | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | | 100 MS/s* | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXI-5671 | 50 MS/s* | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | | 100 MS/s | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | | *(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5672 | Up to 100 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5673/5673E | Up to 200 MS/s. Note that - If an PXIe-5450 with module revisions A or B is used as part of your PXIe-5673/5673E, the NI-FGEN NIFGEN_ATTR_COMPENSATE_FOR_FILTER_GROUP_DELAY property is disabled if the requested I/Q rate is less than 1.5 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5820/5830/5831/5832/5840/5841/5860 | Up to 1.25 GS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXI-5842 (500 MHz, 1 GHz, and 2 GHz bandwidth options) | Up to 2.5 GS/s | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5842 (4 GHz bandwidth option) using the Standard personality | Up to 2.5 GS/s | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality | 5 GS/s only. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: Use this property to associate an I/Q rate with a waveform. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Acquisition:IQ** + - C Attribute: **NIRFSG_ATTR_IQ_RATE** + +iq_skew +------- + + .. py:attribute:: iq_skew + + Specifies the adjustment of the phase angle between the I and Q vectors. If the skew is zero, the phase angle is 90 degrees. + + This property is ignored when the :py:attr:`nirfsg.Session.iq_impairment_enabled` property is disabled. + + **Units**: degrees (°) + + **Valid Values:**-30° to 30° + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **IQ Impairment:IQ Skew (Degrees)** + - C Attribute: **NIRFSG_ATTR_IQ_SKEW** + +iq_swap_enabled +--------------- + + .. py:attribute:: iq_swap_enabled + + Enables or disables the inverse phase rotation of the I/Q signal by swapping the I and Q inputs. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +-------+---------------------------------------------------------------------+ + | Value | Description | + +=======+=====================================================================+ + | True | NI-RFSG device applies noninverse phase rotation of the I/Q signal. | + +-------+---------------------------------------------------------------------+ + | False | NI-RFSG device applies inverse phase rotation of the I/Q signal. | + +-------+---------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - C Attribute: **NIRFSG_ATTR_IQ_SWAP_ENABLED** + +load_configurations_from_file_load_options +------------------------------------------ + + .. py:attribute:: load_configurations_from_file_load_options + + Specifies the configurations to skip while loading from a file. + + **Default Value:** :py:data:`~nirfsg.LoadOptions.SKIP_NONE` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +----------------------------------------------+-------------------------------------------------------------------+ + | Value | Description | + +==============================================+===================================================================+ + | :py:data:`~nirfsg.LoadOptions.SKIP_NONE` | NI-RFSG loads all the configurations to the session. | + +----------------------------------------------+-------------------------------------------------------------------+ + | :py:data:`~nirfsg.LoadOptions.SKIP_WAVEFORM` | NI-RFSG skips loading the waveform configurations to the session. | + +----------------------------------------------+-------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------+ + | Characteristic | Value | + +=======================+===================+ + | Datatype | enums.LoadOptions | + +-----------------------+-------------------+ + | Permissions | read-write | + +-----------------------+-------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Load Configurations:Load Options** + - C Attribute: **NIRFSG_ATTR_LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS** + +load_configurations_from_file_reset_options +------------------------------------------- + + .. py:attribute:: load_configurations_from_file_reset_options + + Specifies the configurations to skip to reset while loading configurations from a file. + + **Default Value:** :py:data:`~nirfsg.ResetOptions.SKIP_NONE` + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +---------------------------------------------------------+------------------------------------------------------+ + | Value | Description | + +=========================================================+======================================================+ + | :py:data:`~nirfsg.ResetOptions.SKIP_NONE` | NI-RFSG resets all configurations. | + +---------------------------------------------------------+------------------------------------------------------+ + | :py:data:`~nirfsg.ResetOptions.SKIP_WAVEFORMS` | NI-RFSG skips resetting the waveform configurations. | + +---------------------------------------------------------+------------------------------------------------------+ + | :py:data:`~nirfsg.ResetOptions.SKIP_SCRIPTS` | NI-RFSG skips resetting the scripts. | + +---------------------------------------------------------+------------------------------------------------------+ + | :py:data:`~nirfsg.ResetOptions.SKIP_DEEMBEDDING_TABLES` | NI-RFSG skips resetting the de-embedding tables. | + +---------------------------------------------------------+------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+--------------------+ + | Characteristic | Value | + +=======================+====================+ + | Datatype | enums.ResetOptions | + +-----------------------+--------------------+ + | Permissions | read-write | + +-----------------------+--------------------+ + | Repeated Capabilities | None | + +-----------------------+--------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Load Configurations:Reset Options** + - C Attribute: **NIRFSG_ATTR_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS** + +logical_name +------------ + + .. py:attribute:: logical_name + + Returns a string that contains the logical name you specified when opening the current IVI session. You can pass a logical name to the :py:meth:`nirfsg.Session.Init` method or the :py:meth:`nirfsg.Session.__init__` method. The IVI Configuration Utility must contain an entry for the logical name. The logical name entry refers to a driver session section in the IVI Configuration file. The driver session section specifies a physical device and initial user options. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Advanced Session Information:Logical Name** + - C Attribute: **NIRFSG_ATTR_LOGICAL_NAME** + +loop_bandwidth +-------------- + + .. py:attribute:: loop_bandwidth + + Configures the loop bandwidth of the tuning PLLs. This property is ignored on the PXI-5610, PXI-5670/5671, and PXIe-5672 for signal bandwidths greater than or equal to 10MHz. This property is ignored on the PXI/PXIe-5650/5651/5652 for RF frequencies less than 50MHz. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_int32` method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** + + PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842: :py:data:`~nirfsg.LoopBandwidth.MEDIUM` + + PXI/PXIe-5650/5651/5652, PXIe-5673/5673E: :py:data:`~nirfsg.LoopBandwidth.NARROW` + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Phase-Locked Loop Bandwidth `_ + + `Modulation Implementation `_ + + `Sinusoidal Tone Versus Modulation Operation `_ + + **Defined Values**: + + +-----------------------------------------+---------+--------------------------------------------------------+ + | Name | Value | Description | + +=========================================+=========+========================================================+ + | :py:data:`~nirfsg.LoopBandwidth.MEDIUM` | 1 (0x1) | Uses the medium loop bandwidth setting for the PLL. | + +-----------------------------------------+---------+--------------------------------------------------------+ + | :py:data:`~nirfsg.LoopBandwidth.NARROW` | 0 (0x0) | Uses the narrowest loop bandwidth setting for the PLL. | + +-----------------------------------------+---------+--------------------------------------------------------+ + | :py:data:`~nirfsg.LoopBandwidth.WIDE` | 2 (0x2) | Uses the widest loop bandwidth setting for the PLL. | + +-----------------------------------------+---------+--------------------------------------------------------+ + + .. note:: Setting this property to :py:data:`~nirfsg.LoopBandwidth.WIDE` on the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, or the PXIe-5673/5673E allows the frequency to settle significantly faster at the expense of increased phase noise. Setting this property to :py:data:`~nirfsg.LoopBandwidth.MEDIUM` is not a valid option on the PXI/PXIe-5650/5651/5652 or PXIe-5673/5673E. :py:data:`~nirfsg.LoopBandwidth.MEDIUM` is the only supported value for the PXIe-5840/5841/5842. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------+ + | Characteristic | Value | + +=======================+=====================+ + | Datatype | enums.LoopBandwidth | + +-----------------------+---------------------+ + | Permissions | read-write | + +-----------------------+---------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Loop Bandwidth** + - C Attribute: **NIRFSG_ATTR_LOOP_BANDWIDTH** + +lo_frequency +------------ + + .. py:attribute:: lo_frequency + + Specifies the frequency of the LO source. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `PXIe-5830 Frequency and Bandwidth Configuration `_ + + `PXIe-5831/5832 Frequency and Bandwidth Configuration `_ + + + + .. note:: This property is read/write if you are using an external LO. Otherwise, this property is read-only. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:LO Frequency (Hz)** + - C Attribute: **NIRFSG_ATTR_LO_FREQUENCY** + +lo_frequency_step_size +---------------------- + + .. py:attribute:: lo_frequency_step_size + + Specifies the step size for tuning the local oscillator (LO) phase-locked loop (PLL). + + When the :py:attr:`nirfsg.Session.lo_pll_fractional_mode_enabled` property is enabled, the specified step size affects the fractional spur performance of the device. When the :py:attr:`nirfsg.Session.lo_pll_fractional_mode_enabled` property is disabled, the specified step size affects the phase noise performance of the device. + + The valid values for this property depend on the :py:attr:`nirfsg.Session.lo_pll_fractional_mode_enabled` property. + + **PXIe-5644/5645/5646**—If you disable the :py:attr:`nirfsg.Session.lo_pll_fractional_mode_enabled` property, the specified value is coerced to the nearest valid value. + + **PXIe-5840/5841**—If you disable the :py:attr:`nirfsg.Session.lo_pll_fractional_mode_enabled` property, the specified value is coerced to the nearest valid value that is less than or equal to the desired step size. + + **Units:** hertz (Hz) + + **Default Values:** + + PXIe-5644/5645/5646: 200kHz + + PXIe-5830: 2MHz + + PXIe-5831/5832 (RF port): 8MHz + + PXIe-5831/5832 (IF port): 2MHz, 4MHz + + PXIe-5840/5841: + + - Fractional mode: 500 kHz + - Integer mode: 10 MHz for frequencies less than or equal to 4 GHz. 20 MHz for frequencies greater than 4 GHz. + + PXIe-5841 with PXIe-5655: 500kHz + + PXIe-5842: 1Hz + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + +----------------------------------------------------------------------------------------------------------------------------+--------------------------------------+--------------------------------------------------+ + | :py:attr:`nirfsg.Session.lo_pll_fractional_mode_enabled` Property Setting | :py:data:`~nirfsg.NIRFSG_VAL_ENABLE` | :py:data:`~nirfsg.NIRFSG_VAL_DISABLE` | + +============================================================================================================================+======================================+==================================================+ + | :py:attr:`nirfsg.Session.lo_frequency_step_size` Property Valid Values on PXIe-5644/5645 | 50 kHz to 24 MHz | 4 MHz, 5 MHz, 6 MHz, 12 MHz, or 24 MHz | + +----------------------------------------------------------------------------------------------------------------------------+--------------------------------------+--------------------------------------------------+ + | :py:attr:`nirfsg.Session.lo_frequency_step_size` Property Valid Values on PXIe-5646 | 50 kHz to 25 MHz | 2 MHz, 5 MHz, 10 MHz, or 25 MHz | + +----------------------------------------------------------------------------------------------------------------------------+--------------------------------------+--------------------------------------------------+ + | :py:attr:`nirfsg.Session.lo_frequency_step_size` Property Valid Values on PXIe-5840/5841 | 50 kHz to 100 MHz | 1 MHz, 5 MHz, 10 MHz, 25 MHz, 50 MHz, or 100 MHz | + +----------------------------------------------------------------------------------------------------------------------------+--------------------------------------+--------------------------------------------------+ + | :py:attr:`nirfsg.Session.lo_frequency_step_size` Property Valid Values on PXIe-5830/5831/ 5832 LO1 | 8 Hz to 400 MHz | — | + +----------------------------------------------------------------------------------------------------------------------------+--------------------------------------+--------------------------------------------------+ + | :py:attr:`nirfsg.Session.lo_frequency_step_size` Property Valid Values on PXIe-5830/5831/ 5832 LO2 | 4 Hz to 400 MHz | — | + +----------------------------------------------------------------------------------------------------------------------------+--------------------------------------+--------------------------------------------------+ + | :py:attr:`nirfsg.Session.lo_frequency_step_size` Property Valid Values on PXIe-5841 with PXIe-5655/NI PXIe-5842 (See note) | 1 nHz to 100 MHz | 1 nHz to 50 MHz | + +----------------------------------------------------------------------------------------------------------------------------+--------------------------------------+--------------------------------------------------+ + + .. note:: Values up to 100 MHz are coerced to 50 MHz. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:LO Frequency Step Size (Hz)** + - C Attribute: **NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE** + +lo_in_power +----------- + + .. py:attribute:: lo_in_power + + Specifies the power level of the signal at the LO IN front panel connector. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Units**: dBm + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `LO OUT `_ + + + + .. note:: - This property is read/write if you are using an external LO. Otherwise, this property is read-only. + + - For the PXIe-5644/5645/5646, this property is always read-only. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:LO In Power (dBm)** + - C Attribute: **NIRFSG_ATTR_LO_IN_POWER** + +lo_out_enabled +-------------- + + .. py:attribute:: lo_out_enabled + + Specifies whether the local oscillator signal is present at the LO OUT front panel connector. The local oscillator signal remains at the LO OUT front panel connector until this property is set to False, even if the :py:attr:`nirfsg.Session.output_enabled` property is set to False, the :py:meth:`nirfsg.Session.abort` method is called, or the NI-RFSG session is closed. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_boolean` method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** :py:data:`~nirfsg.NIRFSG_VAL_DISABLE` + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `LO OUT `_ + + **Defined Values**: + + +---------------------------------------+---------------------------------------------------------------------------------+ + | Name | Description | + +=======================================+=================================================================================+ + | :py:data:`~nirfsg.NIRFSG_VAL_ENABLE` | The local oscillator signal is present at the LO OUT front panel connector. | + +---------------------------------------+---------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_DISABLE` | The local oscillator signal is not present at the LO OUT front panel connector. | + +---------------------------------------+---------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:LO Out Enabled** + - C Attribute: **NIRFSG_ATTR_LO_OUT_ENABLED** + +lo_out_export_configure_from_rfsa +--------------------------------- + + .. py:attribute:: lo_out_export_configure_from_rfsa + + Specifies whether to allow NI-RFSA to control the NI-RFSG LO out export. + + Set this property to :py:data:`~nirfsg.LoOutExportConfigureFromRFSaEnable.ENABLE` to allow NI-RFSA to control the LO out export. Use the RF OUT LO EXPORT ENABLED property to control the LO out export from NI-RFSA. + + **Default Value:** :py:data:`~nirfsg.LoOutExportConfigureFromRFSaEnable.DISABLE` + + **Supported Devices**: PXIe-5840/5841/5842 + + **Defined Values**: + + +---------------------------------------------------------------+---------+----------------------------------------------------------------------+ + | Name | Value | Description | + +===============================================================+=========+======================================================================+ + | :py:data:`~nirfsg.LoOutExportConfigureFromRFSaEnable.ENABLE` | 0 (0x0) | Do not allow NI-RFSA to control the NI-RFSG local oscillator export. | + +---------------------------------------------------------------+---------+----------------------------------------------------------------------+ + | :py:data:`~nirfsg.LoOutExportConfigureFromRFSaEnable.DISABLE` | 1 (0x1) | Allow NI-RFSA to control the NI-RFSG local oscillator export. | + +---------------------------------------------------------------+---------+----------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------------------------+ + | Characteristic | Value | + +=======================+==========================================+ + | Datatype | enums.LoOutExportConfigureFromRFSaEnable | + +-----------------------+------------------------------------------+ + | Permissions | read-write | + +-----------------------+------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:LO Out Export Configure From RFSA** + - C Attribute: **NIRFSG_ATTR_LO_OUT_EXPORT_CONFIGURE_FROM_RFSA** + +lo_out_power +------------ + + .. py:attribute:: lo_out_power + + Specifies the power level of the signal at the LO OUT front panel connector. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_real64` method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Units**: dBm + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `LO OUT `_ + + + + .. note:: For the PXIe-5644/5645/5646 and PXIe-5673/5673E, this property is always read-only. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:LO Out Power (dBm)** + - C Attribute: **NIRFSG_ATTR_LO_OUT_POWER** + +lo_pll_fractional_mode_enabled +------------------------------ + + .. py:attribute:: lo_pll_fractional_mode_enabled + + Specifies whether to use fractional mode for the local oscillator (LO) phase-locked loop (PLL). This property enables or disables fractional frequency tuning in the LO. Fractional mode provides a finer frequency step resolution and allows smaller values for the :py:attr:`nirfsg.Session.lo_frequency_step_size` property. However, fractional mode may introduce non-harmonic spurs. + + This property applies only if you set the :py:attr:`nirfsg.Session.lo_source` property to :py:data:`~nirfsg.LoSource.ONBOARD`. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_int32` method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** :py:data:`~nirfsg.LoPlLfractionalModeEnabled.ENABLE` + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + Refer to the local oscillators topic appropriate to your device for more information about using fractional mode. + + **Defined Values**: + + +-------------------------------------------------------+---------+------------------------------------------+ + | Name | Value | Description | + +=======================================================+=========+==========================================+ + | :py:data:`~nirfsg.LoPlLfractionalModeEnabled.ENABLE` | 0 (0x0) | Disables fractional mode for the LO PLL. | + +-------------------------------------------------------+---------+------------------------------------------+ + | :py:data:`~nirfsg.LoPlLfractionalModeEnabled.DISABLE` | 1 (0x1) | Enables fractional mode for the LO PLL. | + +-------------------------------------------------------+---------+------------------------------------------+ + + .. note:: For the PXIe-5841 with PXIe-5655, this property is ignored if the PXIe-5655 is used as the LO source. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------------+ + | Characteristic | Value | + +=======================+==================================+ + | Datatype | enums.LoPlLfractionalModeEnabled | + +-----------------------+----------------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:LO PLL Fractional Mode Enabled** + - C Attribute: **NIRFSG_ATTR_LO_PLL_FRACTIONAL_MODE_ENABLED** + +lo_source +--------- + + .. py:attribute:: lo_source + + Specifies whether to use the internal or external local oscillator (LO) source. If the :py:attr:`nirfsg.Session.lo_source` property is set to "" (empty string), NI-RFSG uses the internal LO source. To set this property, the NI-RFSG device must be in the Configuration state. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the :py:meth:`nirfsg.Session._set_attribute_vi_string` method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** :py:data:`~nirfsg.LoSource.ONBOARD` + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `PXIe-5830 LO Sharing Using NI-RFSA and NI-RFSG `_ + + `PXIe-5831/5832 LO Sharing Using NI-RFSA and NI-RFSG `_ + + **Defined Values**: + + +----------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +====================================================+========================+==================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.LoSource.AUTOMATIC_SG_SA_SHARED` | Automatic_SG_SA_Shared | NI-RFSG internally makes the configuration to share the LO between NI-RFSA and NI-RFSG. This value is valid only on the PXIe-5820/5830/5831/5832/5840/5841/5842. | + +----------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.LoSource.LO_IN` | LO_In | Uses an external LO as the LO source. Connect a signal to the LO IN connector on the device and use the :py:attr:`nirfsg.Session.upconverter_center_frequency` property to specify the LO frequency. | + +----------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.LoSource.ONBOARD` | Onboard | Uses an internal LO as the LO source. If you specify an internal LO source, the LO is generated inside the device itself. | + +----------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.LoSource.SG_SA_SHARED` | SG_SA_Shared | Uses the same internal LO during NI-RFSA and NI-RFSG sessions. NI-RFSG selects an internal synthesizer and the synthesizer signal is switched to both the RF In and RF Out mixers. This value is valid only on the PXIe-5830/5831/5832/5841 with PXIe-5655/5842. | + +----------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.LoSource.SECONDARY` | Secondary | Uses the PXIe-5831/5840 internal LO as the LO source. This value is valid only on the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653. | + +----------------------------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: For the PXIe-5841 with PXIe-5655, RF list mode is not supported when this property is set to :py:data:`~nirfsg.LoSource.SG_SA_SHARED`. + + The following table lists the characteristics of this property. + + +-----------------------+----------------+ + | Characteristic | Value | + +=======================+================+ + | Datatype | enums.LoSource | + +-----------------------+----------------+ + | Permissions | read-write | + +-----------------------+----------------+ + | Repeated Capabilities | None | + +-----------------------+----------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:LO Source** + - C Attribute: **NIRFSG_ATTR_LO_SOURCE** + +lo_temperature +-------------- + + .. py:attribute:: lo_temperature + + Returns the LO module temperature in degrees Celsius. + + PXIe-5840/5841: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXIe-5673/5673E, PXIe-5840/5841/5842 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:LO Temperature (Degrees C)** + - C Attribute: **NIRFSG_ATTR_LO_TEMPERATURE** + +lo_vco_frequency_step_size +-------------------------- + + .. py:attribute:: lo_vco_frequency_step_size + + Specifies the step size for tuning the internal voltage-controlled oscillator (VCO) used to generate the LO signal. + + **Valid Values**: + + LO1: 1 Hz to 50 MHz + + LO2: 1 Hz to 100 MHz + + **Default Value**: 1 MHz + + **Supported Devices**: PXIe-5830/5831/5832 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:LO VCO Frequency Step Size (Hz)** + - C Attribute: **NIRFSG_ATTR_LO_VCO_FREQUENCY_STEP_SIZE** + +marker_event_output_behavior +---------------------------- + + .. py:attribute:: marker_event_output_behavior + + Specifies the output behavior for the Marker Event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.MarkerEventOutputBehavior.PULSE` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Defined Values**: + + +-----------------------------------------------------+----------------+-------------------------------------------------------+ + | Name | Value | Description | + +=====================================================+================+=======================================================+ + | :py:data:`~nirfsg.MarkerEventOutputBehavior.PULSE` | 23000 (0x59d8) | Specifies the Marker Event output behavior as pulse. | + +-----------------------------------------------------+----------------+-------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventOutputBehavior.TOGGLE` | 23001 (0x59d9) | Specifies the Marker Event output behavior as toggle. | + +-----------------------------------------------------+----------------+-------------------------------------------------------+ + + + .. tip:: This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_output_behavior` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_output_behavior` + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------------+ + | Characteristic | Value | + +=======================+=================================+ + | Datatype | enums.MarkerEventOutputBehavior | + +-----------------------+---------------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------------+ + | Repeated Capabilities | markers | + +-----------------------+---------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Marker:Output Behavior** + - C Attribute: **NIRFSG_ATTR_MARKER_EVENT_OUTPUT_BEHAVIOR** + +marker_event_pulse_width +------------------------ + + .. py:attribute:: marker_event_pulse_width + + Specifies the pulse width value for the Marker Event. Use the :py:attr:`nirfsg.Session.marker_event_pulse_width_units` property to set the units for the pulse width value. This property is valid only when the :py:attr:`nirfsg.Session.marker_event_output_behavior` property is set to :py:data:`~nirfsg.MarkerEventOutputBehavior.PULSE`. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** 200 ns + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + + + + .. tip:: This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_pulse_width` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_pulse_width` + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | markers | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Marker:Pulse:Width Value** + - C Attribute: **NIRFSG_ATTR_MARKER_EVENT_PULSE_WIDTH** + +marker_event_pulse_width_units +------------------------------ + + .. py:attribute:: marker_event_pulse_width_units + + Specifies the pulse width units for the Marker Event. This property is valid only when the :py:attr:`nirfsg.Session.marker_event_output_behavior` property is set to :py:data:`~nirfsg.MarkerEventOutputBehavior.PULSE`. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.MarkerEventPulseWidthUnits.SECONDS` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Defined Values**: + + +-----------------------------------------------------+----------------+-------------------------------------------------------+ + | Name | Value | Description | + +=====================================================+================+=======================================================+ + | :py:data:`~nirfsg.MarkerEventOutputBehavior.PULSE` | 23000 (0x59d8) | Specifies the Marker Event output behavior as pulse. | + +-----------------------------------------------------+----------------+-------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventOutputBehavior.TOGGLE` | 23001 (0x59d9) | Specifies the Marker Event output behavior as toggle. | + +-----------------------------------------------------+----------------+-------------------------------------------------------+ + + + .. tip:: This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_pulse_width_units` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_pulse_width_units` + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------------+ + | Characteristic | Value | + +=======================+==================================+ + | Datatype | enums.MarkerEventPulseWidthUnits | + +-----------------------+----------------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------------+ + | Repeated Capabilities | markers | + +-----------------------+----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Marker:Pulse:Width Units** + - C Attribute: **NIRFSG_ATTR_MARKER_EVENT_PULSE_WIDTH_UNITS** + +marker_event_terminal_name +-------------------------- + + .. py:attribute:: marker_event_terminal_name + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/Marker *X* Event, where *AWGName* is the name of your associated AWG module in MAX and *X* is Marker Event 0 through 3. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/Marker *X* Event, where *BasebandModule* is the name of the baseband module of your device in MAX and *X* is Marker Event 0 through 3. + + PXIe-5820/5840/5841: /*ModuleName*/ao/0/Marker *X* Event, where *ModuleName* is the name of your device in MAX and *X* is Marker Event 0 through 3. + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session._get_terminal_name` + + + + + .. tip:: This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_terminal_name` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_terminal_name` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | markers | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Marker:Terminal Name** + - C Attribute: **NIRFSG_ATTR_MARKER_EVENT_TERMINAL_NAME** + +marker_event_toggle_initial_state +--------------------------------- + + .. py:attribute:: marker_event_toggle_initial_state + + Specifies the initial state for the Marker Event when the :py:attr:`nirfsg.Session.marker_event_output_behavior` property is set to :py:data:`~nirfsg.MarkerEventOutputBehavior.TOGGLE`. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.MarkerEventToggleInitialState.LOW` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Defined Values**: + + +-------------------------------------------------------+----------------+----------------------------------------------------------------------------------+ + | Name | Value | Description | + +=======================================================+================+==================================================================================+ + | :py:data:`~nirfsg.MarkerEventToggleInitialState.HIGH` | 21001 (0x5209) | Specifies the initial state of the Marker Event toggle behavior as digital high. | + +-------------------------------------------------------+----------------+----------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.MarkerEventToggleInitialState.LOW` | 21000 (0x5208) | Specifies the initial state of the Marker Event toggle behavior as digital low. | + +-------------------------------------------------------+----------------+----------------------------------------------------------------------------------+ + + + .. tip:: This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_toggle_initial_state` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_toggle_initial_state` + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------+ + | Characteristic | Value | + +=======================+=====================================+ + | Datatype | enums.MarkerEventToggleInitialState | + +-----------------------+-------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------+ + | Repeated Capabilities | markers | + +-----------------------+-------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Marker:Toggle:Initial State** + - C Attribute: **NIRFSG_ATTR_MARKER_EVENT_TOGGLE_INITIAL_STATE** + +memory_size +----------- + + .. py:attribute:: memory_size + + The total amount of memory on the signal generator in bytes. + + **Units:** bytes + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Memory Options `_ + + `Phase Continuity `_ + + + + .. note:: Not all onboard memory is available for waveform storage. A portion of onboard memory stores scripts that specify how the waveforms are generated. These scripts typically require less than 1KB of onboard memory. + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Memory Size** + - C Attribute: **NIRFSG_ATTR_MEMORY_SIZE** + +module_power_consumption +------------------------ + + .. py:attribute:: module_power_consumption + + Returns the total power consumption of the device. + + **Units:** watts + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + .. note:: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:Module Power Consumption (W)** + - C Attribute: **NIRFSG_ATTR_MODULE_POWER_CONSUMPTION** + +module_revision +--------------- + + .. py:attribute:: module_revision + + Returns the module revision letter. If the NI-RFSG session is controlling multiple modules, this property returns the revision letter of the primary RF module. The NI-RFSG session is opened using the primary RF device name. + + **Supported Devices:** PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Identifying Module Revision `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:Module Revision** + - C Attribute: **NIRFSG_ATTR_MODULE_REVISION** + +output_enabled +-------------- + + .. py:attribute:: output_enabled + + Specifies whether signal output is enabled. Setting the :py:attr:`nirfsg.Session.output_enabled` property to False while in the Generation state stops signal output, although generation continues internally. For the PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653, PXI-5670/5671, and PXIe-5672/5673/5673E, setting the :py:attr:`nirfsg.Session.output_enabled` property while in the Committed state does not transition the device to the Configuration state, but output changes immediately. + + **Default Value:** True + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Output Enabled `_ + + `NI-RFSG Instrument Driver Programming Flow `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_output_enabled` + + **Defined Values**: + + +-------+-------------------------+ + | Value | Description | + +=======+=========================+ + | True | Enables signal output. | + +-------+-------------------------+ + | False | Disables signal output. | + +-------+-------------------------+ + + .. note:: - For the PXIe-5653, this property controls only the LO1 terminal. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + + - When the :py:attr:`nirfsg.Session.active_configuration_list` property is set to a valid list name, setting the :py:attr:`nirfsg.Session.output_enabled` property transitions the device to the Configuration state. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Output Enabled** + - C Attribute: **NIRFSG_ATTR_OUTPUT_ENABLED** + +output_port +----------- + + .. py:attribute:: output_port + + Specifies the connector(s) to use to generate the signal. To set this property, the NI-RFSG device must be in the Configuration state. + + You must write complex I and Q data for all options. The Q data has no effect if you set this property to I Only and set the :py:attr:`nirfsg.Session.iq_out_port_carrier_frequency` property to 0. If you set the :py:attr:`nirfsg.Session.iq_out_port_carrier_frequency` property to a value other than 0, the onboard signal processing (OSP) frequency shifts I and Q as a complex value and outputs the real portion of the result on the I connector(s) of the device. + + If you set the :py:attr:`nirfsg.Session.output_port` property to :py:data:`~nirfsg.OutputPort.I_ONLY`\_ONLY or :py:data:`~nirfsg.OutputPort.IQ_OUT`, the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property applies. + + **Default Value:** + + PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842/5860: :py:data:`~nirfsg.OutputPort.RF_OUT` + + PXIe-5820: :py:data:`~nirfsg.OutputPort.IQ_OUT` + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +---------------------------------------+----------------+------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=======================================+================+==========================================================================================+ + | :py:data:`~nirfsg.OutputPort.CAL_OUT` | 14002 (0x36b2) | Enables the CAL OUT port. | + +---------------------------------------+----------------+------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.OutputPort.I_ONLY` | 14003 (0x36b3) | Enables the I connectors of the I/Q OUT port. This value is valid on only the PXIe-5645. | + +---------------------------------------+----------------+------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.OutputPort.IQ_OUT` | 14001 (0x36b1) | Enables the I/Q OUT port. This value is valid on only the PXIe-5645 and PXIe-5820. | + +---------------------------------------+----------------+------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.OutputPort.RF_OUT` | 14000 (0x36b0) | Enables the RF OUT port. This value is not valid for the PXIe-5820. | + +---------------------------------------+----------------+------------------------------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------------+ + | Characteristic | Value | + +=======================+==================+ + | Datatype | enums.OutputPort | + +-----------------------+------------------+ + | Permissions | read-write | + +-----------------------+------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Output Port** + - C Attribute: **NIRFSG_ATTR_OUTPUT_PORT** + +overflow_error_reporting +------------------------ + + .. py:attribute:: overflow_error_reporting + + Configures error reporting for onboard signal processing (OSP) overflows. Overflows lead to clipping of the waveform. + + **Default Value:** :py:data:`~nirfsg.OverflowErrorReporting.WARNING` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +----------------------------------------------------+--------------+----------------------------------------------------------------------------+ + | Name | Value | Description | + +====================================================+==============+============================================================================+ + | :py:data:`~nirfsg.OverflowErrorReporting.DISABLED` | 1302 (0x516) | NI-RFSG does not return an error or a warning when an OSP overflow occurs. | + +----------------------------------------------------+--------------+----------------------------------------------------------------------------+ + | :py:data:`~nirfsg.OverflowErrorReporting.WARNING` | 1301 (0x515) | NI-RFSG returns a warning when an OSP overflow occurs. | + +----------------------------------------------------+--------------+----------------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------------------------+ + | Characteristic | Value | + +=======================+==============================+ + | Datatype | enums.OverflowErrorReporting | + +-----------------------+------------------------------+ + | Permissions | read-write | + +-----------------------+------------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Advanced:Overflow Error Reporting** + - C Attribute: **NIRFSG_ATTR_OVERFLOW_ERROR_REPORTING** + +p2p_data_transfer_permission_initial_credits +-------------------------------------------- + + .. py:attribute:: p2p_data_transfer_permission_initial_credits + + Specifies the initial amount of data that the writer peer can transfer over the bus into the configured endpoint when the peer-to-peer data stream is enabled. If this property is not set and the endpoint is empty, credits equal to the full endpoint size are issued to the writer peer. If data is written to the endpoint using the :py:meth:`nirfsg.Session.WriteP2pEndpointI16` method prior to enabling the stream, credits equal to the remaining space available in the endpoint are issued to the writer peer. This property is coerced up by NI-RFSG to 8-byte boundaries. This property is endpoint-based. + + **Units**: samples per channel + + **Default Value:** 1,024 + + **Supported Devices:** PXIe-5673E + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + `Configuring Flow Control `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Data Transfer Permission Initial Credits** + - C Attribute: **NIRFSG_ATTR_P2P_DATA_TRANSFER_PERMISSION_INITIAL_CREDITS** + +p2p_data_transfer_permission_interval +------------------------------------- + + .. py:attribute:: p2p_data_transfer_permission_interval + + Specifies the interval at which the RF signal generator issues credits to allow the writer peer to transfer data over the bus into the configured endpoint. This property is coerced up by NI-RFSG to the nearest 128-byte boundary. This property is endpoint-based. + + **Units**: samples per channel + + **Supported Devices:** PXIe-5673E + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + `Configuring Flow Control `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Data Transfer Permission Interval** + - C Attribute: **NIRFSG_ATTR_P2P_DATA_TRANSFER_PERMISSION_INTERVAL** + +p2p_enabled +----------- + + .. py:attribute:: p2p_enabled + + Specifies whether the RF signal generator reads data from the peer-to-peer endpoint. This property is endpoint-based. + + **Default Value**: False + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + **Defined Values**: + + +-------+------------------------------------------+ + | Value | Description | + +=======+==========================================+ + | True | Peer-to-peer data streaming is enabled. | + +-------+------------------------------------------+ + | False | Peer-to-peer data streaming is disabled. | + +-------+------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Enabled** + - C Attribute: **NIRFSG_ATTR_P2P_ENABLED** + +p2p_endpoint_count +------------------ + + .. py:attribute:: p2p_endpoint_count + + Returns the number of peer-to-peer FIFO endpoints supported by the device. + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Endpoint Count** + - C Attribute: **NIRFSG_ATTR_P2P_ENDPOINT_COUNT** + +p2p_endpoint_fullness_start_trigger_level +----------------------------------------- + + .. py:attribute:: p2p_endpoint_fullness_start_trigger_level + + Specifies the number of samples the endpoint must receive before the device starts generation. If no level is specified, NI-RFSG automatically sets this value to -1. This property applies only when the :py:attr:`nirfsg.Session.start_trigger_type` property is set to :py:data:`~nirfsg.StartTrigType.P2P_ENDPOINT_FULLNESS` + + **Default Value:** -1, which allows NI-RFSG to select the appropriate fullness value. + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Start Trigger `_ + + + + .. note:: Due to an additional internal FIFO in the RF signal generator, the writer peer actually needs to write 2,304 bytes more than the quantity of data specified by this property to satisfy the trigger level. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Start:P2P Endpoint Fullness:Level** + - C Attribute: **NIRFSG_ATTR_P2P_ENDPOINT_FULLNESS_START_TRIGGER_LEVEL** + +p2p_endpoint_size +----------------- + + .. py:attribute:: p2p_endpoint_size + + Returns the size, in samples, of the device endpoint. This property is endpoint-based. + + **Units**: samples (s) + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Endpoint Size** + - C Attribute: **NIRFSG_ATTR_P2P_ENDPOINT_SIZE** + +p2p_generation_fifo_sample_quantum +---------------------------------- + + .. py:attribute:: p2p_generation_fifo_sample_quantum + + Returns how many samples NI-RFSG pulls from the peer-to-peer FIFO per read. You can use this property to determine how many samples to send across the peer-to-peer bus to ensure that no samples are ignored. If you send a number of samples that is not a multiple of this value, the remaining samples are not read from the FIFO during generation. This property is endpoint-based. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Generation FIFO Sample Quantum** + - C Attribute: **NIRFSG_ATTR_P2P_GENERATION_FIFO_SAMPLE_QUANTUM** + +p2p_is_finite_generation +------------------------ + + .. py:attribute:: p2p_is_finite_generation + + Specifies whether peer-to-peer should continuously generate data from the peer-to-peer stream or from only a finite number of samples, according to the :py:attr:`nirfsg.Session.p2p_number_of_samples_to_generate` property. To use this property, peer-to-peer must be enabled. This property is endpoint-based. + + **Default Value**: False + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +-------+--------------------------------------------------------------+ + | Value | Description | + +=======+==============================================================+ + | True | Data is generated from only a finite number of samples. | + +-------+--------------------------------------------------------------+ + | False | Data is continuously generated from the peer-to-peer stream. | + +-------+--------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Is Finite Generation** + - C Attribute: **NIRFSG_ATTR_P2P_IS_FINITE_GENERATION** + +p2p_most_space_available_in_endpoint +------------------------------------ + + .. py:attribute:: p2p_most_space_available_in_endpoint + + Returns the largest number of samples per channel available in the endpoint since this property was last read. You can use this property to determine how much endpoint space to use as a buffer against bus traffic latencies by reading the property and keeping track of the largest value returned. This property is endpoint-based. + + If you want to minimize the latency for data to move through the endpoint and be generated by the RF signal generator, use the :py:attr:`nirfsg.Session.p2p_data_transfer_permission_initial_credits` property to grant fewer initial credits than the default of the entire endpoint size. + + **Units**: samples per channel + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Most Space Available in Endpoint** + - C Attribute: **NIRFSG_ATTR_P2P_MOST_SPACE_AVAILABLE_IN_ENDPOINT** + +p2p_number_of_samples_to_generate +--------------------------------- + + .. py:attribute:: p2p_number_of_samples_to_generate + + Specifies how many samples are generated from the peer-to-peer subsystem when it is enabled. To use this property, peer-to-peer must be enabled and set to finite generation. This property is endpoint-based. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | int | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Number Of Samples To Generate** + - C Attribute: **NIRFSG_ATTR_P2P_NUMBER_OF_SAMPLES_TO_GENERATE** + +p2p_space_available_in_endpoint +------------------------------- + + .. py:attribute:: p2p_space_available_in_endpoint + + Returns the current space available in the endpoint. You can use this property when priming the endpoint with initial data using the :py:meth:`nirfsg.Session.WriteP2pEndpointI16` method to determine how many samples you can write. You also can use this property to characterize the performance and measure the latency of the peer-to-peer stream as data moves across the bus. This property is endpoint-based. + + **Units**: samples per channel + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + `Starting Peer-to-Peer Generation `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Peer-to-Peer:Space Available In Endpoint** + - C Attribute: **NIRFSG_ATTR_P2P_SPACE_AVAILABLE_IN_ENDPOINT** + +peak_envelope_power +------------------- + + .. py:attribute:: peak_envelope_power + + Returns the maximum instantaneous power of the RF output signal. + + **Units**: dBm + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + .. note:: - This property is valid only when the :py:attr:`nirfsg.Session.power_level_type` property is set to :py:data:`~nirfsg.PowerLevelType.AVERAGE`. + + - The :py:attr:`nirfsg.Session.arb_digital_gain` property is not included in the calculation of the :py:attr:`nirfsg.Session.peak_envelope_power` property. + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Peak Envelope Power (dBm)** + - C Attribute: **NIRFSG_ATTR_PEAK_ENVELOPE_POWER** + +peak_power_adjustment +--------------------- + + .. py:attribute:: peak_power_adjustment + + Specifies the adjustment for the :py:attr:`nirfsg.Session.power_level` property. This property is valid only when you set the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. The value of the :py:attr:`nirfsg.Session.peak_power_adjustment` property adds to the :py:attr:`nirfsg.Session.power_level` property. The :py:attr:`nirfsg.Session.peak_power_adjustment` property typically specifies the peak-to-average power ratio (PAPR) of a waveform. If the PAPR is specified, the specified power level becomes the average power level of the waveform, even if the :py:attr:`nirfsg.Session.power_level_type` property is set to :py:data:`~nirfsg.PowerLevelType.PEAK`. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate a peak power adjustment with a waveform. + + + + .. note:: - For the PXIe-5673/5673E only, use this property to associate a peak power adjustment with a waveform. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Peak Power Adjustment (dB)** + - C Attribute: **NIRFSG_ATTR_PEAK_POWER_ADJUSTMENT** + +peak_power_adjustment_inheritance +--------------------------------- + + .. py:attribute:: peak_power_adjustment_inheritance + + Determines the inheritance behavior of the :py:attr:`nirfsg.Session.peak_power_adjustment` property when a script inherits values from specified waveforms. + + **Default Value:** :py:data:`~nirfsg.PpaInheritance.EXACT_MATCH` + + **Supported Devices:** PXIe-5673/5673E + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + **Defined Values**: + + +-----------------------------------------------+------------------------------------------------------------+ + | Value | Description | + +===============================================+============================================================+ + | :py:data:`~nirfsg.PpaInheritance.EXACT_MATCH` | Errors out if different values are detected in the script. | + +-----------------------------------------------+------------------------------------------------------------+ + | :py:data:`~nirfsg.PpaInheritance.MINIMUM` | Uses the minimum value found in the script. | + +-----------------------------------------------+------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+----------------------+ + | Characteristic | Value | + +=======================+======================+ + | Datatype | enums.PpaInheritance | + +-----------------------+----------------------+ + | Permissions | read-write | + +-----------------------+----------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Peak Power Adjustment Inheritance** + - C Attribute: **NIRFSG_ATTR_PEAK_POWER_ADJUSTMENT_INHERITANCE** + +phase_continuity_enabled +------------------------ + + .. py:attribute:: phase_continuity_enabled + + Specifies whether the driver maintains phase continuity in the arbitrary waveforms. When this property is set to :py:data:`~nirfsg.PhaseContinuityEnabled.ENABLE`, NI-RFSG may increase the waveform size. When this property is set to :py:data:`~nirfsg.PhaseContinuityEnabled.ENABLE`, the :py:attr:`nirfsg.Session.frequency_tolerance` property specifies the maximum allowable frequency error that can be introduced when keeping the signal phase-continuous. To set the :py:attr:`nirfsg.Session.phase_continuity_enabled` property, the NI-RFSG device must be in the Configuration state. :py:attr:`nirfsg.Session.phase_continuity_enabled` applies only when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` or :py:data:`~nirfsg.GenerationMode.SCRIPT`. + + PXI-5671: When using the PXI-5671 with I/Q rates less than or equal to 8.33MS/s, an input phase-continuous signal is always phase-continuous upon output, and this property has no effect. + + PXIe-5644/5645/5646, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Phase continuity is *always* enabled on this device. + + **Default Value:** :py:data:`~nirfsg.PhaseContinuityEnabled.AUTO` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Phase Continuity `_ + + `Arb Waveform Mode Tuning Speed Factors `_ + + **Defined Values**: + + +---------------------------------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:attr:`nirfsg.Session.phase_continuity_enabled` Property Setting | Value | With I/Q Rates > 8.33 MS/s. | + +=====================================================================+===========+==========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.PhaseContinuityEnabled.AUTO` | -1 (-0x1) | When the Generation Mode property is set to Arb Waveform, the arbitrary waveform may be repeated to ensure phase continuity after upconversion. This setting could cause waveform size to increase. When the Generation Mode property is set to Script, the Phase Continuity Enabled property indicates a warning condition. NI-RFSG cannot guarantee a phase-continuous output signal in Script mode. Phase continuity is automatically disabled in script mode, and the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. | + +---------------------------------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.PhaseContinuityEnabled.DISABLE` | 0 (0x0) | When the Generation Mode property is set to Arb Waveform, the arbitrary waveform is played back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. When the Generation Mode property is set to Script, the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. | + +---------------------------------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.PhaseContinuityEnabled.ENABLE` | 1 (0x1) | When the Generation Mode property is set to Arb Waveform, the arbitrary waveform may be repeated to ensure phase continuity after upconversion. Enabling this property could cause waveform size to increase. When the Generation Mode property is set to Script, the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. | + +---------------------------------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------------+ + | Characteristic | Value | + +=======================+==============================+ + | Datatype | enums.PhaseContinuityEnabled | + +-----------------------+------------------------------+ + | Permissions | read-write | + +-----------------------+------------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Phase Continuity Enabled** + - C Attribute: **NIRFSG_ATTR_PHASE_CONTINUITY_ENABLED** + +phase_offset +------------ + + .. py:attribute:: phase_offset + + Specifies the phase of the RF output signal. Use this property to align the phase of the RF output with the phase of the RF output of another device, as long as the two devices are phase-coherent. + + **Units**: degrees (°) + + **Default Value:** 0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Phase Synchronization and Phase Coherency `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Phase Offset (Degrees)** + - C Attribute: **NIRFSG_ATTR_PHASE_OFFSET** + +power_level +----------- + + .. py:attribute:: power_level + + Specifies either the average power level or peak power level of the generated RF signal, depending on the :py:attr:`nirfsg.Session.power_level_type` property setting. + + The PXI-5670/5671, PXIe-5672, and PXIe-5860 must be in the Configuration state to use this property. However, the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E and PXIe-5830/5831/5832/5840/5841/5842 can be in the Configuration or the Generation state to use this property. + + Refer to the specifications document for your device for allowable power level settings. + + **Units**: dBm + + **Default Values:** + + PXIe-5644/5645/5646, PXIe-5673/5673E: -100 + + PXI/PXIe-5650/5651/5652: -90 + + PXIe-5654: -7 + + PXIe-5654 with PXIe-5696: -110 + + PXI-5670/5671, PXIe-5672: -145 + + PXIe-5830/5831/5832/5840/5841/5842/5860: -174 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.ConfigureRf` + + + + .. note:: - For the PXIe-5653, this property is read-only. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Power Level (dBm)** + - C Attribute: **NIRFSG_ATTR_POWER_LEVEL** + +power_level_type +---------------- + + .. py:attribute:: power_level_type + + Specifies how NI-RFSG interprets the value of the :py:attr:`nirfsg.Session.power_level` property. The :py:attr:`nirfsg.Session.power_level_type` property also affects how waveforms are scaled. + + PXI-5670/5671: While in Script generation mode, if this property is set to :py:data:`~nirfsg.PowerLevelType.AVERAGE`, NI-RFSG scales each waveform so that all waveforms have the same average power. The average power level of each waveform matches the value set with the :py:attr:`nirfsg.Session.power_level` property. You can disable this scaling operation by setting the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. + + PXIe-5644/5645/5646, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: While in Script generation mode, this property must be set to :py:data:`~nirfsg.PowerLevelType.PEAK`. + + Converting from Average Power to Peak Power + + Typically, this property is set to :py:data:`~nirfsg.PowerLevelType.AVERAGE`. However, some instrument modes require this property to be set to :py:data:`~nirfsg.PowerLevelType.PEAK`. Use the following equations to calculate the equivalent peak power given the desired average power for your waveform: + + + Where 1 is the highest possible magnitude in the waveform. + + + + **Default Value:** + + PXIe-5820: :py:data:`~nirfsg.PowerLevelType.PEAK` + + All other devices: :py:data:`~nirfsg.PowerLevelType.AVERAGE` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Spurious Performance `_ + + `Optimizing for Low Power Generation `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_power_level_type` + + **Defined Values**: + + +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +===========================================+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.PowerLevelType.AVERAGE` | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If your write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | + +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.PowerLevelType.PEAK` | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires that the magnitude of the I/Q waveform must always be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. You can use the :py:attr:`nirfsg.Session.peak_power_adjustment` property in conjunction with the :py:attr:`nirfsg.Session.power_level` property when the :py:attr:`nirfsg.Session.power_level_type` property is set to :py:data:`~nirfsg.PowerLevelType.PEAK`. | + +-------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+----------------------+ + | Characteristic | Value | + +=======================+======================+ + | Datatype | enums.PowerLevelType | + +-----------------------+----------------------+ + | Permissions | read-write | + +-----------------------+----------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Power Level Type** + - C Attribute: **NIRFSG_ATTR_POWER_LEVEL_TYPE** + +pulse_modulation_active_level +----------------------------- + + .. py:attribute:: pulse_modulation_active_level + + Specifies the active level of the pulse modulation signal when pulse modulation is enabled. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.HIGH` + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +-------------------------------------------------------+---------------+--------------------------------------------------+ + | Name | Value | Description | + +=======================================================+===============+==================================================+ + | :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.HIGH` | 9000 (0x2328) | Trigger when the digital trigger signal is high. | + +-------------------------------------------------------+---------------+--------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigDigLevelActiveLevel.LOW` | 9001 (0x2329) | Trigger when the digital trigger signal is low. | + +-------------------------------------------------------+---------------+--------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------+ + | Characteristic | Value | + +=======================+=====================================+ + | Datatype | enums.ScriptTrigDigLevelActiveLevel | + +-----------------------+-------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:Pulse Modulation Active Level** + - C Attribute: **NIRFSG_ATTR_PULSE_MODULATION_ACTIVE_LEVEL** + +pulse_modulation_enabled +------------------------ + + .. py:attribute:: pulse_modulation_enabled + + Enables or disables pulse modulation. + + PXIe-5654/5654 with PXIe-5696: If this property is enabled and the signal at the PULSEIN front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled. + + PXIe-5673/5673E: If this property is enabled and the signal at the PLSMOD front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled. + + PXIe-5842: If this property is enabled and the signal at the PULSE IN front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled. This behavior can be modified by setting pulse modulation active level. + + **Default Value:** False + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E + + **Related Topics** + + `Pulse Modulation `_ + + **Defined Values**: + + +-------+----------------------------+ + | Value | Description | + +=======+============================+ + | True | Enables pulse modulation. | + +-------+----------------------------+ + | False | Disables pulse modulation. | + +-------+----------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Pulse:Pulse Modulation Enabled** + - C Attribute: **NIRFSG_ATTR_PULSE_MODULATION_ENABLED** + +pulse_modulation_mode +--------------------- + + .. py:attribute:: pulse_modulation_mode + + PXIe-5654/5654 with PXIe-5696: Specifies the pulse modulation mode to use. + + PXIe-5842: This property allows you to choose a tradeoff between switching speed and On/Off Ratio when using pulse modulation. Refer to the product specifications document for the switching characteristics of each mode. This property is settable while the device is generating, but some output pulses may be dropped. + + **Default Value:** :py:data:`~nirfsg.PulseModulationMode.ANALOG` + + **Supported Devices:** PXIe-5842/5654/5654 with PXIe-5696 + + **Defined Values**: + + +----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +======================================================================+=============================================================================================================================================+ + | :py:data:`~nirfsg.PulseModulationMode.OPTIMAL_MATCH` | Provides for a more optimal power output match for the device during the off cycle of the pulse mode operation. Not supported on PXIe-5842. | + +----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_PULSE_MODULATION_ANALOG_HIGH_ISOLATION` | Allows for the best on/off power ratio of the pulsed signal. | + +----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_PULSE_MODULATION_ANALOG` | Analog switch blanking. Balance between switching speed and on/off power ratio of the pulsed signal. | + +----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_PULSE_MODULATION_DIGITAL` | Digital only modulation. Provides the best on/off switching speed of the pulsed signal at the cost of signal isolation. | + +----------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------+ + | Characteristic | Value | + +=======================+===========================+ + | Datatype | enums.PulseModulationMode | + +-----------------------+---------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:Pulse Modulation Mode** + - C Attribute: **NIRFSG_ATTR_PULSE_MODULATION_MODE** + +pulse_modulation_source +----------------------- + + .. py:attribute:: pulse_modulation_source + + Specifies the source of the pulse modulation signal. When Pulse In in used, the pulse modulation is applied with the lowest latency and jitter, but is not aligned to any particular waveform sample. When a marker is used, the RF pulse is aligned to a specific sample in the arbitrary waveform. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.PulseModulationSource.PULSE_IN` + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +---------------------------------------------------+---------+----------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===================================================+=========+==============================================================================================+ + | :py:data:`~nirfsg.PulseModulationSource.PULSE_IN` | PulseIn | The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. | + +---------------------------------------------------+---------+----------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.PulseModulationSource.MARKER0` | | The trigger is received from the Marker 0. | + +---------------------------------------------------+---------+----------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.PulseModulationSource.MARKER1` | | The trigger is received from the Marker 1. | + +---------------------------------------------------+---------+----------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.PulseModulationSource.MARKER2` | | The trigger is received from the Marker 2. | + +---------------------------------------------------+---------+----------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.PulseModulationSource.MARKER3` | | The trigger is received from the Marker 3. | + +---------------------------------------------------+---------+----------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-----------------------------+ + | Characteristic | Value | + +=======================+=============================+ + | Datatype | enums.PulseModulationSource | + +-----------------------+-----------------------------+ + | Permissions | read-write | + +-----------------------+-----------------------------+ + | Repeated Capabilities | None | + +-----------------------+-----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Modulation:Pulse:Pulse Modulation Source** + - C Attribute: **NIRFSG_ATTR_PULSE_MODULATION_SOURCE** + +pxi_chassis_clk10_source +------------------------ + + .. py:attribute:: pxi_chassis_clk10_source + + Specifies the clock source for driving the PXI 10 MHz backplane Reference Clock. This property is configurable if the PXI-5610 upconverter module is installed in *only* Slot 2 of a PXI chassis. To set this property, the NI-RFSG device must be in the Configuration state. + + **Defined Values**: + + Name (Value): Description + + :py:data:`~nirfsg.PxiChassisClk10Source.NONE` (0) :Do not drive the PXI_CLK10 signal. + + :py:data:`~nirfsg.PxiChassisClk10Source.ONBOARD_CLOCK_STR` (OnboardClock) :Uses the highly stable oven-controlled onboard Reference Clock to drive the PXI_CLK signal. + + :py:data:`~nirfsg.PxiChassisClk10Source.REF_IN_STR` (RefIn) :Uses the clock present at the front panel REF IN connector to drive the PXI_CLK signal. + + **Default Value:** :py:data:`~nirfsg.PxiChassisClk10Source.NONE` + + **Supported Devices:** PXI-5610, PXI-5670/5671 + + **Related Topics** + + `Timing Configurations `_ + + `System Reference Clock `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_pxi_chassis_clk10` + + + Only certain combinations of this property and the :py:attr:`nirfsg.Session.ref_clock_source` property are valid, as shown in the following table. + + +-----------------------------------------------------------------------------------------------------------+------------------------------------------------------------+ + | :py:attr:`nirfsg.Session.pxi_chassis_clk10_source` Setting | :py:attr:`nirfsg.Session.ref_clock_source` Setting | + +===========================================================================================================+============================================================+ + | :py:data:`~nirfsg.PxiChassisClk10Source.NONE`, :py:data:`~nirfsg.PxiChassisClk10Source.ONBOARD_CLOCK_STR` | :py:data:`~nirfsg.PxiChassisClk10Source.ONBOARD_CLOCK_STR` | + +-----------------------------------------------------------------------------------------------------------+------------------------------------------------------------+ + | :py:data:`~nirfsg.PxiChassisClk10Source.NONE`, :py:data:`~nirfsg.PxiChassisClk10Source.REF_IN_STR` | :py:data:`~nirfsg.PxiChassisClk10Source.REF_IN_STR` | + +-----------------------------------------------------------------------------------------------------------+------------------------------------------------------------+ + | :py:data:`~nirfsg.PxiChassisClk10Source.NONE`, :py:data:`~nirfsg.PxiChassisClk10Source.REF_IN_STR` | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK` | + +-----------------------------------------------------------------------------------------------------------+------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-----------------------------+ + | Characteristic | Value | + +=======================+=============================+ + | Datatype | enums.PxiChassisClk10Source | + +-----------------------+-----------------------------+ + | Permissions | read-write | + +-----------------------+-----------------------------+ + | Repeated Capabilities | None | + +-----------------------+-----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:PXI Chassis Clk 10 Source** + - C Attribute: **NIRFSG_ATTR_PXI_CHASSIS_CLK10_SOURCE** + +query_instrument_status +----------------------- + + .. py:attribute:: query_instrument_status + + Specifies whether NI-RFSG queries the NI-RFSG device status after each operation. Querying the device status is useful for debugging. After you validate your program, set this property to False to disable status checking and maximize performance. + + NI-RFSG can choose to ignore status checking for particular properties, regardless of the setting of this property. Use the :py:meth:`nirfsg.Session.__init__` method to override the default value. + + **Default Value:** False + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------------------------------------------+ + | Value | Description | + +=======+=============================================================+ + | True | NI-RFSG queries the instrument status after each operation. | + +-------+-------------------------------------------------------------+ + | False | NI-RFSG does not query the instrument status. | + +-------+-------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:User Options:Query Instrument Status** + - C Attribute: **NIRFSG_ATTR_QUERY_INSTRUMENT_STATUS** + +range_check +----------- + + .. py:attribute:: range_check + + Specifies whether to validate property values and method parameters. Range checking parameters is very useful for debugging. After you validate your program, set this property to False to disable range checking and maximize performance. NI-RFSG can choose to ignore range checking for particular properties, regardless of the setting of this property. Use the :py:meth:`nirfsg.Session.__init__` method to override the default value. + + **Default Value:** True + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------+ + | Value | Description | + +=======+=========================+ + | True | Enable range checking. | + +-------+-------------------------+ + | False | Disable range checking. | + +-------+-------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:User Options:Range Check** + - C Attribute: **NIRFSG_ATTR_RANGE_CHECK** + +record_coercions +---------------- + + .. py:attribute:: record_coercions + + Specifies whether the IVI engine keeps a list of the value coercions it makes for integer and real type properties. + + **Default Value:** False + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+---------------------------------------------------+ + | Value | Description | + +=======+===================================================+ + | True | The IVI engine keeps a list of coercions. | + +-------+---------------------------------------------------+ + | False | The IVI engine does not keep a list of coercions. | + +-------+---------------------------------------------------+ + + .. note:: Enabling record value coercions is not supported. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:User Options:Record Value Coercions** + - C Attribute: **NIRFSG_ATTR_RECORD_COERCIONS** + +ref_clock_rate +-------------- + + .. py:attribute:: ref_clock_rate + + Specifies the Reference Clock rate, in Hz, of the signal present at the REF IN or CLK IN connector. This property is only valid when the :py:attr:`nirfsg.Session.ref_clock_source` property is set to :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR`, :py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR`, or :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2` + + To set this property, the NI-RFSG device must be in the Configuration state. If you are using the PXIe-5654/5654 with PXIe-5696, the NI-RFSG device must be in the Committed state to read this property. When you read this property, it returns the frequency the device is locked to during the Committed state. + + If you set this property to :py:data:`~nirfsg.ReferenceClockRate.AUTO`, NI-RFSG uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if automatic detection is supported by the device. + + **Valid Values:** + + PXIe-5654/5654 with PXIe-5696: Values between 1MHz to 20MHz in 1MHz steps are supported in addition to the :py:data:`~nirfsg.ReferenceClockRate.AUTO` and :py:data:`~nirfsg.ReferenceClockRate._10mhz` values. + + PXIe-5841 with PXIe-5655, PXIe-5842: 10 MHz, 100 MHz, 270 MHz, and 3.84 MHz + + y, where + + y is 4, 8, 16, 24, 25, or 32. + + PXIe-5860: 10 MHz, 100 MHz + + **Units**: hertz (Hz) + + **Default Value:** :py:data:`~nirfsg.ReferenceClockRate.AUTO` + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Timing Configurations `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_ref_clock` + + **Defined Values**: + + +----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +==============================================+===================================================================================================================================+ + | :py:data:`~nirfsg.ReferenceClockRate.AUTO` | Uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if the device supports it. | + +----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockRate._10mhz` | Uses a 10 MHz Reference Clock rate. | + +----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: Automatic detection of the Reference Clock rate is supported on only the PXIe-5654/5654 with PXIe-5696. For all other supported devices, NI-RFSG uses the default Reference Clock rate of 10MHz. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+--------------------------+ + | Characteristic | Value | + +=======================+==========================+ + | Datatype | enums.ReferenceClockRate | + +-----------------------+--------------------------+ + | Permissions | read-write | + +-----------------------+--------------------------+ + | Repeated Capabilities | None | + +-----------------------+--------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Reference Clock Rate (Hz)** + - C Attribute: **NIRFSG_ATTR_REF_CLOCK_RATE** + +ref_clock_source +---------------- + + .. py:attribute:: ref_clock_source + + Specifies the Reference Clock source. To set this property, the NI-RFSG device must be in the Configuration state. Only certain combinations of this property and the :py:attr:`nirfsg.Session.pxi_chassis_clk10_source` property are valid, as shown in the following table. + + **Default Value:** :py:data:`~nirfsg.ReferenceClockSource.ONBOARD_CLOCK` + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Timing Configurations `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_ref_clock` + + **Defined Values**: + + +--------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +========================================================+===============+=========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.ReferenceClockSource.ONBOARD_CLOCK` | OnboardClock | Uses the onboard Reference Clock as the clock source. **PXIe-5830/5831** —For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831/5832, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. ** PXIe-5831/5832 with PXIe-5653** —Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. **PXIe-5841 with PXIe-5655** —Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector. | + +--------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.CLK_IN` | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the Reference Clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655. | + +--------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.REF_IN` | RefIn | Uses the clock signal present at the front panel REF IN connector as the Reference Clock source. **PXIe-5830/5831** —For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831/5832, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831/5832, lock the external signal to the PXIe-3622 REF IN connector. **PXIe-5831/5832 with PXIe-5653** —Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5841 with PXIe-5655** —Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector. | + +--------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK` | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the Reference Clock source. | + +--------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2` | RefIn2 | This value is not valid on any supported devices. | + +--------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK_MASTER` | PXI_ClkMaster | This value is valid on only the PXIe-5831/5832 with PXIe-5653. **PXIe-5831/5832 with PXIe-5653** —NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK` as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +--------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: The PXI-5670/5671 and PXIe-5672 devices also allow you to drive the PXI 10 MHz backplane clock on PXI chassis *only* using the :py:attr:`nirfsg.Session.pxi_chassis_clk10_source` property. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------+ + | Characteristic | Value | + +=======================+============================+ + | Datatype | enums.ReferenceClockSource | + +-----------------------+----------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Clock:Reference Clock Source** + - C Attribute: **NIRFSG_ATTR_REF_CLOCK_SOURCE** + +ref_pll_bandwidth +----------------- + + .. py:attribute:: ref_pll_bandwidth + + Configures the loop bandwidth of the reference PLL. + + **Default Value:** :py:data:`~nirfsg.LoopBandwidth.NARROW` + + **Supported Devices:** PXIe-5653 + + **Related Topics** + + `Phase-Locked Loop Bandwidth `_ + + **Defined Values**: + + +-----------------------------------------+--------------------------------------------------------+ + | Value | Description | + +=========================================+========================================================+ + | :py:data:`~nirfsg.LoopBandwidth.NARROW` | Uses the narrowest loop bandwidth setting for the PLL. | + +-----------------------------------------+--------------------------------------------------------+ + | :py:data:`~nirfsg.LoopBandwidth.MEDIUM` | Uses the medium loop bandwidth setting for the PLL. | + +-----------------------------------------+--------------------------------------------------------+ + | :py:data:`~nirfsg.LoopBandwidth.WIDE` | Uses the widest loop bandwidth setting for the PLL. | + +-----------------------------------------+--------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+---------------------+ + | Characteristic | Value | + +=======================+=====================+ + | Datatype | enums.LoopBandwidth | + +-----------------------+---------------------+ + | Permissions | read-write | + +-----------------------+---------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:Ref PLL Bandwidth** + - C Attribute: **NIRFSG_ATTR_REF_PLL_BANDWIDTH** + +relative_delay +-------------- + + .. py:attribute:: relative_delay + + Specifies the delay, in seconds, to apply to the I/Q waveform. + + Relative delay allows for delaying the generated signal from one device relative to the generated signal of another device after those devices have been synchronized. You can achieve a negative relative delay by delaying both synchronized devices by the same value (1 μs) before generation begins and then changing the relative delay to a smaller amount than the initial value on only one of the devices. + + To set this property, the NI-RFSG device must be in the Configuration or Generation state. + + **Units:** Seconds + + **Valid Values:** + + PXIe-PXIe-5820/5830/5831/5832/5840/5841: 0 μs to 3.2 μs + + PXIe-5842: 0 μs to 6.5 μs + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `NI-TClk Overview `_ + + + + .. note:: - To obtain a negative relative delay when synchronizing the PXIe-5840/5841 with a module that does not support this property, use the NITCLK_ATTR_SAMPLE_CLOCK_DELAY property. + + - The resolution of this property is a method of the I/Q sample period at 15E(-6) of the sample period but not worse than one Sample Clock period. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Relative Delay** + - C Attribute: **NIRFSG_ATTR_RELATIVE_DELAY** + +rf_blanking_source +------------------ + + .. py:attribute:: rf_blanking_source + + Specifies the Marker Event at which RF blanking occurs. RF blanking quickly attenuates the RF OUT signal. Use Marker Events to toggle the state of RF blanking. The RF Output always starts in the unblanked state. + + To set this property, the NI-RFSG device must be in the Configuration state. + + You can specify Marker Events by using scripts to trigger blanking at a certain point in a waveform. For example, if you set this property to marker0 str}, and marker0 occurs on samples 1,000 and 2,000 of a script, then the RF Output will be blanked (attenuated) between samples 1,000 and 2,000. + + PXIe-5645: This property is ignored if you are using the I/Q ports. + + PXIe-5840/5841: RF blanking does not occur for frequencies below 120MHz. + + For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.reset_with_options` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit**parameter. + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Valid Values**: + + +-------------------+---------------------------------+ + | Value | Description | + +===================+=================================+ + | "" (empty string) | RF blanking is disabled. | + +-------------------+---------------------------------+ + | Marker0 | RF blanking is tied to marker0. | + +-------------------+---------------------------------+ + | Marker1 | RF blanking is tied to marker1. | + +-------------------+---------------------------------+ + | Marker2 | RF blanking is tied to marker2. | + +-------------------+---------------------------------+ + | Marker3 | RF blanking is tied to marker3. | + +-------------------+---------------------------------+ + + .. note:: The shortest supported blanking interval is eight microseconds. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:RF Blanking Source** + - C Attribute: **NIRFSG_ATTR_RF_BLANKING_SOURCE** + +rf_in_lo_export_enabled +----------------------- + + .. py:attribute:: rf_in_lo_export_enabled + + Specifies whether to enable the RF IN LO OUT terminal on the PXIe-5840/5841. + + Set this property to :py:data:`~nirfsg.RFInLoExportEnabled.ENABLE` to export the LO signal from the RF IN LO OUT terminal. + + When this property is enabled, if the :py:attr:`nirfsg.Session.lo_source` property is set to :py:data:`~nirfsg.LoSource.LO_IN` and you do not set the :py:attr:`nirfsg.Session.lo_frequency` or :py:attr:`nirfsg.Session.upconverter_center_frequency` properties, NI-RFSG rounds the LO frequency to approximately an LO step size as if the source was :py:data:`~nirfsg.NIRFSG_VAL_ONBOARD_CLOCK_STR`. This ensures that when you configure NI-RFSA and NI-RFSG with compatible settings that result in the same LO frequency, the rounding also is compatible. + + **Default Value:** :py:data:`~nirfsg.RFInLoExportEnabled.UNSPECIFIED` + + **Supported Devices**: PXIe-5840/5841/5842 + + **Defined Values**: + + +----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +====================================================+=========================================================================================================================================+ + | :py:data:`~nirfsg.RFInLoExportEnabled.DISABLE` | The RF In local oscillator signal is not present at the front panel LO OUT connector. | + +----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.RFInLoExportEnabled.ENABLE` | The RF In local oscillator signal is present at the front panel LO OUT connector. | + +----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.RFInLoExportEnabled.UNSPECIFIED` | The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it. | + +----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------+ + | Characteristic | Value | + +=======================+===========================+ + | Datatype | enums.RFInLoExportEnabled | + +-----------------------+---------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:RF In LO Export Enabled** + - C Attribute: **NIRFSG_ATTR_RF_IN_LO_EXPORT_ENABLED** + +script_trigger_terminal_name +---------------------------- + + .. py:attribute:: script_trigger_terminal_name + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/ScriptTrigger *X*, where *AWGName* is the name of your associated AWG module in MAX and *X* is Script Trigger 0 through 3. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/ScriptTrigger *X*, where *BasebandModule* is the name of the baseband module of your device in MAX and *X* is Script Trigger 0 through 3. + + PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/ScriptTrigger *X*, where *ModuleName* is the name of your device in MAX and *X* is Script Trigger 0 through 3. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/ScriptTrigger *X*, where *ModuleName* is the name of your device in MAX, *ChannelNumber* is the channel number (0 or 1), and *X* is Script Trigger 0 through 3. + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session._get_terminal_name` + + + + + .. tip:: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].script_trigger_terminal_name` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.script_trigger_terminal_name` + + The following table lists the characteristics of this property. + + +-----------------------+-----------------+ + | Characteristic | Value | + +=======================+=================+ + | Datatype | str | + +-----------------------+-----------------+ + | Permissions | read only | + +-----------------------+-----------------+ + | Repeated Capabilities | script_triggers | + +-----------------------+-----------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Script:Terminal Name** + - C Attribute: **NIRFSG_ATTR_SCRIPT_TRIGGER_TERMINAL_NAME** + +script_trigger_type +------------------- + + .. py:attribute:: script_trigger_type + + Specifies the Script Trigger type. Depending upon the value of this property, more properties may be needed to fully configure the trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.ScriptTrigType.NONE` + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Trigger Types `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_digital_edge_script_trigger` + + **Defined Values**: + + +-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +=================================================+===========================================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.ScriptTrigType.NONE` | No trigger is configured. Signal generation starts immediately. | + +-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigType.DIGITAL_EDGE` | The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the :py:attr:`nirfsg.Session.digital_edge_start_trigger_source` property, and the active edge is specified with the :py:attr:`nirfsg.Session.digital_edge_start_trigger_edge` property. | + +-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigType.DIGITAL_LEVEL` | The data operation does not start until the digital level is detected. The source of the digital level is specified in the :py:attr:`nirfsg.Session.digital_level_script_trigger_source` property, and the active level is specified in the :py:attr:`nirfsg.Session.digital_level_script_trigger_active_level` property. | + +-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ScriptTrigType.SOFTWARE` | The data operation does not start until a software trigger occurs. You can create a software event by calling the :py:meth:`nirfsg.Session.send_software_edge_trigger` method. | + +-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + .. tip:: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].script_trigger_type` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.script_trigger_type` + + The following table lists the characteristics of this property. + + +-----------------------+----------------------+ + | Characteristic | Value | + +=======================+======================+ + | Datatype | enums.ScriptTrigType | + +-----------------------+----------------------+ + | Permissions | read-write | + +-----------------------+----------------------+ + | Repeated Capabilities | script_triggers | + +-----------------------+----------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Script:Type** + - C Attribute: **NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE** + +selected_path +------------- + + .. py:attribute:: selected_path + + Specifies which path to configure to generate a signal. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Signal Path:Advanced:Selected Path** + - C Attribute: **NIRFSG_ATTR_SELECTED_PATH** + +selected_ports +-------------- + + .. py:attribute:: selected_ports + + Specifies the port to configure. + + **Valid Values**: + + PXIe-5644/5645/5646, PXIe-5820/5840/5841: "" (empty string) + + PXIe-5830: if0, if1 + + PXIe-5831/5832: if0, if1, rf*0-1*/port*x*, where *0-1* indicates one (*0*) or two (*1*) mmRH-5582 connections and *x* is the port number on the mmRH-5582 front panel. + + **Default Value:** + + PXIe-5644/5645/5646, PXIe-5820/5840/5841/5842/5860: "" (empty string) + + PXIe-5830/5831/5832: if0 + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + :py:attr:`nirfsg.Session.available_ports` + + + + .. note:: When using RF list mode, ports cannot be shared with NI-RFSA. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Selected Ports** + - C Attribute: **NIRFSG_ATTR_SELECTED_PORTS** + +selected_script +--------------- + + .. py:attribute:: selected_script + + Specifies the script in onboard memory to generate upon calling the :py:meth:`nirfsg.Session._initiate` method when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.SCRIPT`. + + The :py:attr:`nirfsg.Session.selected_script` property is ignored when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` or :py:data:`~nirfsg.GenerationMode.CW`. To set the :py:attr:`nirfsg.Session.selected_script` property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + `Scripting Instructions `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Selected Script** + - C Attribute: **NIRFSG_ATTR_SELECTED_SCRIPT** + +self_calibration_temperature +---------------------------- + + .. py:attribute:: self_calibration_temperature + + Indicates, in degrees Celsius, the temperature of the device at the time of the last self calibration. + + **Supported Devices:** PXIe-5644/5645/5646 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | float | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Self Calibration:Last Self Calibration Temperature** + - C Attribute: **NIRFSG_ATTR_SELF_CALIBRATION_TEMPERATURE** + +serial_number +------------- + + .. py:attribute:: serial_number + + Returns the serial number of the RF module. If the NI-RFSG session is controlling multiple modules, this property returns the serial number of the primary RF module. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:Serial Number** + - C Attribute: **NIRFSG_ATTR_SERIAL_NUMBER** + +signal_bandwidth +---------------- + + .. py:attribute:: signal_bandwidth + + Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× :py:attr:`nirfsg.Session.iq_rate`). + + NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f*\ :sub:`max`\ - *f*\ :sub:`min`\ . + + This property applies only when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` or :py:data:`~nirfsg.GenerationMode.SCRIPT`, except for when using the PXIe-5830/5831/5832/5840/5841, which supports setting this property in all supported generation modes. To set the :py:attr:`nirfsg.Session.signal_bandwidth` property, the NI-RFSG device must be in the Configuration state. + + PXI-5670/5671, PXIe-5672: Based on your signal bandwidth, NI-RFSG determines whether to configure the upconverter center frequency in increments of 1MHz or 5MHz. Failure to configure this property may result in the signal being placed outside the upconverter passband. + + PXIe-5644/5645/5646, PXIe-5673/5673E: This property is used only for error-checking purposes. Otherwise, this property is ignored. + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Based on your signal bandwidth, NI-RFSG decides the equalized bandwidth. If this property is not set, NI-RFSG uses the maximum available signal bandwidth. For the PXIe-5840/5841, the maximum allowed signal bandwidth depends on the upconverter center frequency. Refer to the specifications document for your device for more information about signal bandwidth. The device specifications depend on the signal bandwidth. + + **Units**: hertz (Hz) + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Phase-Locked Loop Bandwidth `_ + + `Frequency Tuning Times `_ + + `PXIe-5830 Frequency and Bandwidth Selection `_ + + `PXIe-5831/5832 Frequency and Bandwidth Selection `_ + + `PXIe-5841 Frequency and Bandwidth Selection `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Signal Bandwidth (Hz)** + - C Attribute: **NIRFSG_ATTR_SIGNAL_BANDWIDTH** + +simulate +-------- + + .. py:attribute:: simulate + + Returns whether NI-RFSG simulates I/O operations. This property is useful for debugging applications without using hardware. After a session is opened, you cannot change the simulation state. Use the :py:meth:`nirfsg.Session.__init__` method to enable simulation. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------+ + | Value | Description | + +=======+=========================+ + | True | Simulation is enabled. | + +-------+-------------------------+ + | False | Simulation is disabled. | + +-------+-------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | bool | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:User Options:Simulate** + - C Attribute: **NIRFSG_ATTR_SIMULATE** + +specific_driver_class_spec_major_version +---------------------------------------- + + .. py:attribute:: specific_driver_class_spec_major_version + + Returns the major version number of the class specification with which NI-RFSG is compliant. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Identification:Class Specification Major Version** + - C Attribute: **NIRFSG_ATTR_SPECIFIC_DRIVER_CLASS_SPEC_MAJOR_VERSION** + +specific_driver_class_spec_minor_version +---------------------------------------- + + .. py:attribute:: specific_driver_class_spec_minor_version + + Returns the minor version number of the class specification with which NI-RFSG is compliant. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Identification:Class Specification Minor Version** + - C Attribute: **NIRFSG_ATTR_SPECIFIC_DRIVER_CLASS_SPEC_MINOR_VERSION** + +specific_driver_description +--------------------------- + + .. py:attribute:: specific_driver_description + + Returns a string that contains a brief description of NI-RFSG. This property returns + + National Instruments RF Signal Generator Instrument Driver. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Identification:Description** + - C Attribute: **NIRFSG_ATTR_SPECIFIC_DRIVER_DESCRIPTION** + +specific_driver_prefix +---------------------- + + .. py:attribute:: specific_driver_prefix + + Returns a string that contains the prefix for NI-RFSG. The name of each user-callable method in NI-RFSG starts with this prefix. This property returns + + niRFSG. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Identification:Driver Prefix** + - C Attribute: **NIRFSG_ATTR_SPECIFIC_DRIVER_PREFIX** + +specific_driver_revision +------------------------ + + .. py:attribute:: specific_driver_revision + + Returns a string that contains additional version information about NI-RFSG. For example, NI-RFSG can return + + Driver: NI-RFSG14.5.0, Compiler: MSVC9.00, Components: IVI Engine4.00, VISA-Spec4.00 as the value of this property. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Identification:Revision** + - C Attribute: **NIRFSG_ATTR_SPECIFIC_DRIVER_REVISION** + +specific_driver_vendor +---------------------- + + .. py:attribute:: specific_driver_vendor + + Returns a string that contains the name of the vendor that supplies NI-RFSG. This property returns + + National Instruments. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Identification:Driver Vendor** + - C Attribute: **NIRFSG_ATTR_SPECIFIC_DRIVER_VENDOR** + +started_event_terminal_name +--------------------------- + + .. py:attribute:: started_event_terminal_name + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/StartedEvent, where *AWGName* is the name of your associated AWG module in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/StartedEvent, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841: /*ModuleName*/ao/0/StartedEvent, where *ModuleName* is the name of your device in MAX. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/StartedEvent, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1). + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session._get_terminal_name` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Started Event Terminal Name** + - C Attribute: **NIRFSG_ATTR_STARTED_EVENT_TERMINAL_NAME** + +start_trigger_terminal_name +--------------------------- + + .. py:attribute:: start_trigger_terminal_name + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXIe-5654/5654 with PXIe-5696: /*ModuleName*/StartTrigger, where *ModuleName* is the name of your device in MAX. + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/StartTrigger, where *ModuleName* is the name of your associated AWG module in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/StartTrigger, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/StartTrigger, where *ModuleName* is the name of your device in MAX. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/StartTrigger, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1). + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session._get_terminal_name` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Start:Terminal Name** + - C Attribute: **NIRFSG_ATTR_START_TRIGGER_TERMINAL_NAME** + +start_trigger_type +------------------ + + .. py:attribute:: start_trigger_type + + Specifies the Start Trigger type. Depending upon the value of this property, more properties may be needed to fully configure the trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** :py:data:`~nirfsg.StartTrigType.NONE` + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Trigger Types `_ + + **High-Level Methods**: + + - :py:meth:`nirfsg.Session.configure_digital_edge_start_trigger` + - :py:meth:`nirfsg.Session.configure_software_start_trigger` + - :py:meth:`nirfsg.Session.disable_start_trigger` + + **Defined Values**: + + +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +========================================================+============================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.StartTrigType.NONE` | No trigger is configured. | + +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigType.DIGITAL_EDGE` | The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the :py:attr:`nirfsg.Session.digital_edge_start_trigger_source` property, and the active edge is specified in the :py:attr:`nirfsg.Session.digital_edge_start_trigger_edge` property. | + +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigType.SOFTWARE` | The data operation does not start until a software event occurs. You may create a software trigger by calling the :py:meth:`nirfsg.Session.send_software_edge_trigger` method. | + +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.StartTrigType.P2P_ENDPOINT_FULLNESS` | The data operation does not start until the endpoint reaches the threshold specified in the :py:attr:`nirfsg.Session.p2p_endpoint_fullness_start_trigger_level` property. | + +--------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------+ + | Characteristic | Value | + +=======================+=====================+ + | Datatype | enums.StartTrigType | + +-----------------------+---------------------+ + | Permissions | read-write | + +-----------------------+---------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Triggers:Start:Type** + - C Attribute: **NIRFSG_ATTR_START_TRIGGER_TYPE** + +streaming_enabled +----------------- + + .. py:attribute:: streaming_enabled + + Enables and disables continuous streaming of waveform data. + + **Default Value:** False + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + **Defined Values**: + + +-------+------------------------+ + | Value | Description | + +=======+========================+ + | True | Streaming is enabled. | + +-------+------------------------+ + | False | Streaming is disabled. | + +-------+------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Streaming:Streaming Enabled** + - C Attribute: **NIRFSG_ATTR_STREAMING_ENABLED** + +streaming_space_available_in_waveform +------------------------------------- + + .. py:attribute:: streaming_space_available_in_waveform + + Indicates the space available, in samples, in the streaming waveform for writing new data. For optimal performance, write new data to the waveform in a fixed size that is an integer divisor of the total size of the streaming waveform. This waveform size ensures that writes do not have to wrap around from the end to the beginning of the waveform buffer. + + To read this property, the NI-RFSG device must be in the Committed state. + + **Units**: samples + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Streaming:Space Available In Streaming Waveform (Samples)** + - C Attribute: **NIRFSG_ATTR_STREAMING_SPACE_AVAILABLE_IN_WAVEFORM** + +streaming_waveform_name +----------------------- + + .. py:attribute:: streaming_waveform_name + + Specifies the name of the waveform used to continually stream data during generation. + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Streaming Waveform Data `_ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Streaming:Streaming Waveform Name** + - C Attribute: **NIRFSG_ATTR_STREAMING_WAVEFORM_NAME** + +streaming_write_timeout +----------------------- + + .. py:attribute:: streaming_write_timeout + + Indicates the maximum amount of time allowed to complete a streaming write operation. + + **Default Value:** 10.0seconds + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Streaming Waveform Data `_ + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------------------------+ + | Characteristic | Value | + +=======================+=============================================================+ + | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | + +-----------------------+-------------------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Data Transfer:Streaming:Streaming Write Timeout** + - C Attribute: **NIRFSG_ATTR_STREAMING_WRITE_TIMEOUT** + +supported_instrument_models +--------------------------- + + .. py:attribute:: supported_instrument_models + + Returns a string that contains a model code of the NI-RFSG device. For drivers that support more than one device, this property contains a comma-separated list of supported devices. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | str | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | None | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Inherent IVI Attributes:Driver Capabilities:Supported Instrument Models** + - C Attribute: **NIRFSG_ATTR_SUPPORTED_INSTRUMENT_MODELS** + +sync_sample_clock_dist_line +--------------------------- + + .. py:attribute:: sync_sample_clock_dist_line + + Specifies which external trigger line distributes the Sample Clock sync signal. When synchronizing the Sample Clock between multiple devices, configure all devices to use the same Sample Clock sync distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0 + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5646 + + **Related Topics** + + `Synchronization Using NI-RFSA and NI-RFSG `_—Refer to this topic for more information about PXIe-5646 device synchronization. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Triggers:Sync Sample Clock Dist Line** + - C Attribute: **NIRFSG_ATTR_SYNC_SAMPLE_CLOCK_DIST_LINE** + +sync_sample_clock_master +------------------------ + + .. py:attribute:: sync_sample_clock_master + + Specifies whether the device is the master device when synchronizing the Sample Clock between multiple devices. The master device distributes the Sample Clock sync signal to all devices in the system through the Sample Clock sync distribution line. + + When synchronizing the Sample Clock, one device must always be designated as the master. The master device actively drives the Sample Clock sync distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5646 + + **Related Topics** + + `Synchronization Using NI-RFSA and NI-RFSG `_—Refer to this topic for more information about PXIe-5646 device synchronization. + + **Defined Values**: + + +-------+---------------------------------------------------------------------+ + | Value | Description | + +=======+=====================================================================+ + | True | The device is the master device for synchronizing the Sample Clock. | + +-------+---------------------------------------------------------------------+ + | False | The device is not the master for synchronizing the Sample Clock. | + +-------+---------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Triggers:Sync Sample Clock Master** + - C Attribute: **NIRFSG_ATTR_SYNC_SAMPLE_CLOCK_MASTER** + +sync_script_trigger_dist_line +----------------------------- + + .. py:attribute:: sync_script_trigger_dist_line + + Specifies which external trigger line distributes the synchronized Script Trigger signal. When synchronizing the Script Trigger, configure all devices to use the same Script Trigger distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0 + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Script Trigger `_ + + `Synchronizing Sample Clock and Sampled Reference Clock Signals `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Triggers:Sync Script Trigger Dist Line** + - C Attribute: **NIRFSG_ATTR_SYNC_SCRIPT_TRIGGER_DIST_LINE** + +sync_script_trigger_master +-------------------------- + + .. py:attribute:: sync_script_trigger_master + + Specifies whether the device is the master device when synchronizing the Script Trigger. + + The master device distributes the synchronized Script Trigger to all devices in the system through the Script Trigger distribution line. + + When synchronizing the Script trigger, one device must always be designated as the master. The master device actively drives the Script Trigger distribution line. For slave devices, set the :py:attr:`nirfsg.Session.script_trigger_type` property to digital edge, and set the :py:attr:`nirfsg.Session.digital_edge_script_trigger_source` property to sync_script. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Script Trigger `_ + + `Synchronizing Sample Clock and Sampled Reference Clock Signals `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + + **Defined Values**: + + +-------+-----------------------------------------------------------------------+ + | Value | Description | + +=======+=======================================================================+ + | True | The device is the master device for synchronizing the Script Trigger. | + +-------+-----------------------------------------------------------------------+ + | False | The device is not the master for synchronizing the Script Trigger. | + +-------+-----------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Triggers:Sync Script Trigger Master** + - C Attribute: **NIRFSG_ATTR_SYNC_SCRIPT_TRIGGER_MASTER** + +sync_start_trigger_dist_line +---------------------------- + + .. py:attribute:: sync_start_trigger_dist_line + + Specifies which external trigger line distributes the synchronized Start Trigger signal. When synchronizing the Start Trigger, configure all devices to use the same Start Trigger distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0 + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Start Trigger `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | str | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Triggers:Sync Start Trigger Dist Line** + - C Attribute: **NIRFSG_ATTR_SYNC_START_TRIGGER_DIST_LINE** + +sync_start_trigger_master +------------------------- + + .. py:attribute:: sync_start_trigger_master + + Specifies whether the device is the master device when synchronizing the Start Trigger. The master device distributes the synchronized Start Trigger to all devices in the system through the Start Trigger distribution line. + + When synchronizing the Start Trigger, one device must always be designated as the master. The master device actively drives the Start Trigger distribution line. For slave devices, set the :py:attr:`nirfsg.Session.start_trigger_type` property to digital edge, and set the :py:attr:`nirfsg.Session.digital_edge_start_trigger_source` property to sync_script. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Start Trigger `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + + **Defined Values**: + + +-------+----------------------------------------------------------------------+ + | Value | Description | + +=======+======================================================================+ + | True | The device is the master device for synchronizing the Start Trigger. | + +-------+----------------------------------------------------------------------+ + | False | The device is not the master for synchronizing the Start Trigger. | + +-------+----------------------------------------------------------------------+ + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | bool | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Triggers:Sync Start Trigger Master** + - C Attribute: **NIRFSG_ATTR_SYNC_START_TRIGGER_MASTER** + +temperature_read_interval +------------------------- + + .. py:attribute:: temperature_read_interval + + Specifies the minimum time between temperature sensor readings. + + **Units:** Seconds + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------------------------+ + | Characteristic | Value | + +=======================+=============================================================+ + | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | + +-----------------------+-------------------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Characteristics:Temperature Read Interval** + - C Attribute: **NIRFSG_ATTR_TEMPERATURE_READ_INTERVAL** + +thermal_correction_headroom_range +--------------------------------- + + .. py:attribute:: thermal_correction_headroom_range + + Specifies the expected thermal operating range of the instrument from the self-calibration temperature, in degrees Celsius, returned from the :py:attr:`nirfsg.Session.device_temperature` property. + + For example, if this property is set to 5.0, and the device is self-calibrated at 35°C, then you can expect to run the device from 30°C to 40°C with corrected accuracy and no overflows. Setting this property with a smaller value can result in improved dynamic range, but you must ensure thermal stability while the instrument is running. Operating the instrument outside of the specified range may cause degraded performance or DSP overflows. + + **Units:** degrees Celsius (°C) + + **Default Value**: + + **PXIe-5830/5831/5832/5842/5860**: 5 + + **PXIe-5840/5841**: 10 + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:Thermal Correction Headroom Range (Degrees C)** + - C Attribute: **NIRFSG_ATTR_THERMAL_CORRECTION_HEADROOM_RANGE** + +thermal_correction_temperature_resolution +----------------------------------------- + + .. py:attribute:: thermal_correction_temperature_resolution + + Specifies the temperature change, in degrees Celsius, that is required before NI-RFSG recalculates the thermal correction settings when entering the Generation state. + + **Units:** degrees Celsius (°C) + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Default Values:** + + PXIe-5830/5831/5832/5842/5860: 0.2 + + PXIe-5840/5841: 1.0 + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:Thermal Correction Temperature Resolution (Degrees C)** + - C Attribute: **NIRFSG_ATTR_THERMAL_CORRECTION_TEMPERATURE_RESOLUTION** + +timer_event_interval +-------------------- + + .. py:attribute:: timer_event_interval + + Specifies the time before the timer emits an event after the task is started and specifies the time interval between Timer events after the first event. + + **Units**: seconds (s) + + **Default Value:** 0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + + + .. note:: For the PXIe-5820/5840/5841/5842/5860, this property must be set for the timer to start. If you do not set this property, the timer is disabled. + + The following table lists the characteristics of this property. + + +-----------------------+-------------------------------------------------------------+ + | Characteristic | Value | + +=======================+=============================================================+ + | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | + +-----------------------+-------------------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Events:Timer:Interval** + - C Attribute: **NIRFSG_ATTR_TIMER_EVENT_INTERVAL** + +upconverter_center_frequency +---------------------------- + + .. py:attribute:: upconverter_center_frequency + + Indicates the center frequency of the passband containing the upconverted RF signal. Writing a value to this property while using the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, or PXIe-5820/5840/5841 device enables in-band retuning. In-band retuning increases the speed of frequency sweeps by reducing the amount of upconverter retunes. + + **Units**: hertz (Hz) + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + + + .. note:: - This property is read/write on the PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842, and is read-only on the PXI-5670/5671. + + - Resetting this property disables in-band retuning, however, for the PXIe-5820, in-band retuning is always enabled. + + - For the PXIe-5820, the only valid value for this property is 0. + + - Setting this property while the PXIe-5644/5645/5646, PXIe-5673/5673E, or PXIe-5820/5830/5831/5832/5840/5841/5842 device is generating has no effect until a dynamic property is set. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Upconverter:Center Frequency (Hz)** + - C Attribute: **NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY** + +upconverter_frequency_offset +---------------------------- + + .. py:attribute:: upconverter_frequency_offset + + This property offsets the :py:attr:`nirfsg.Session.upconverter_center_frequency` from the RF frequency. Use this property to keep the local oscillator (LO) leakage at a determined offset from the RF signal. + + **Valid Values:** + + PXIe-5644/5645: -42MHz to +42MHz + + PXIe-5646: -100MHz to +100MHz + + PXIe-5830/5831/5832/5840/5841: -500MHz to +500MHz + + PXI-5842 (500 MHz bandwidth option): -250MHz to +250MHz + + PXI-5842 (1 GHz bandwidth option): -500MHz to +500MHz + + PXI-5842 (2 GHz bandwidth option): -1GHz to +1GHz + + PXIe-5842 (4 GHz bandwidth option) using the Standard personality: -1GHz to +1GHz + + PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality: -2GHz to +2GHz + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `PXIe-5830 Frequency and Bandwidth Selection `_ + + `PXIe-5831/5832 Frequency and Bandwidth Selection `_ + + `PXIe-5841 Frequency and Bandwidth Selection `_ + + + + .. note:: - You cannot set the :py:attr:`nirfsg.Session.upconverter_center_frequency` property or the :py:attr:`nirfsg.Session.arb_carrier_frequency` property at the same time as the :py:attr:`nirfsg.Session.upconverter_frequency_offset` property. + + - Resetting this property disables the upconverter frequency offset. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Upconverter:Frequency Offset (Hz)** + - C Attribute: **NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET** + +upconverter_frequency_offset_mode +--------------------------------- + + .. py:attribute:: upconverter_frequency_offset_mode + + Specifies whether to allow NI-RFSG to select the upconverter frequency offset. You can either set an offset yourself or let NI-RFSG select one for you. + + Placing the upconverter center frequency outside the bandwidth of your waveform can help avoid issues such as LO leakage. + + To set an offset yourself, set this property to :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.AUTO` or :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.USER_DEFINED`, and set either the :py:attr:`nirfsg.Session.upconverter_center_frequency` or the :py:attr:`nirfsg.Session.upconverter_frequency_offset` property. + + To allow NI-RFSG to automatically select the upconverter frequency offset, set this property to :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.AUTO` or :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.ENABLE` and set the :py:attr:`nirfsg.Session.signal_bandwidth` to describe the bandwidth of your waveform. The signal bandwidth must be no greater than half the value of the :py:attr:`nirfsg.Session.device_instantaneous_bandwidth` property, minus a device-specific guard band. Do not set the :py:attr:`nirfsg.Session.upconverter_center_frequency` or :py:attr:`nirfsg.Session.upconverter_frequency_offset` properties. If all conditions are met, NI-RFSG places the upconverter center frequency outside the signal bandwidth. Set this property to :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.ENABLE` if you want to receive an error any time NI-RFSG is unable to apply automatic offset. + + When you set an offset yourself or do not use an offset, the reference frequency for gain is near the upconverter center frequency, and :py:attr:`nirfsg.Session.upconverter_frequency_offset_mode` returns :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.USER_DEFINED`. When NI-RFSG automatically sets an offset, the reference frequency for gain is near the :py:attr:`nirfsg.Session.frequency` and :py:attr:`nirfsg.Session.upconverter_frequency_offset_mode` returns :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.ENABLE`. + + **Default Value:** :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.AUTO` + + **Supported Devices**: PXIe-5830/5831/5832/5841/5842 + + **Related Topics** + + `PXIe-5830 Automatic Frequency Offset `_ + + `PXIe-5831/5832 Automatic Frequency Offset `_ + + `PXIe-5841 Automatic Frequency Offset `_ + + **Defined Values**: + + +----------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +================================================================+============================================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.ENABLE` | NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the :py:attr:`nirfsg.Session.signal_bandwidth` property has been set and can be avoided. NI-RFSG returns an error if the :py:attr:`nirfsg.Session.signal_bandwidth` property has not been set, or if the signal bandwidth is too large. | + +----------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.AUTO` | NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the :py:attr:`nirfsg.Session.signal_bandwidth` property has been set and can be avoided. | + +----------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.USER_DEFINED` | NI-RFSG uses the offset that you specified with the :py:attr:`nirfsg.Session.upconverter_frequency_offset` or :py:attr:`nirfsg.Session.upconverter_center_frequency` properties. | + +----------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: Below 120 MHz, the PXIe-5841 does not use an LO and :py:data:`~nirfsg.UpconverterFrequencyOffsetMode.ENABLE` is unavailable. Refer to the *PXIe-5841 Automatic Frequency Offset* topic for more information about using an automatic offset with an external LO. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+--------------------------------------+ + | Characteristic | Value | + +=======================+======================================+ + | Datatype | enums.UpconverterFrequencyOffsetMode | + +-----------------------+--------------------------------------+ + | Permissions | read-write | + +-----------------------+--------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+--------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Upconverter:Frequency Offset Mode** + - C Attribute: **NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET_MODE** + +upconverter_gain +---------------- + + .. py:attribute:: upconverter_gain + + Specifies the gain the upconverter applies to the signal. + + **Units**: dB + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + .. note:: This property is read/write on the PXI-5610 and PXIe-5611 and is read-only on the PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Upconverter:Gain (dB)** + - C Attribute: **NIRFSG_ATTR_UPCONVERTER_GAIN** + +waveform_iq_rate +---------------- + + .. py:attribute:: waveform_iq_rate + + Specifies the I/Q rate of the waveform. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate an I/Q rate with a waveform. + + `Digital Upconverter `_ + + + + + .. tip:: This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_iq_rate` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_iq_rate` + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | waveform | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Attributes:Waveform IQ Rate (S/s)** + - C Attribute: **NIRFSG_ATTR_WAVEFORM_IQ_RATE** + +waveform_papr +------------- + + .. py:attribute:: waveform_papr + + Specifies the peak-to-average power ratio (PAPR). + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + + .. tip:: This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_papr` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_papr` + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | waveform | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Attributes:Waveform PAPR (dB)** + - C Attribute: **NIRFSG_ATTR_WAVEFORM_PAPR** + +waveform_rf_blanking +-------------------- + + .. py:attribute:: waveform_rf_blanking + + **Defined Values**: + + Name (Value): Description + + :py:data:`~nirfsg.RFBlanking.DISABLE` (0): RF blanking is disabled. + + :py:data:`~nirfsg.RFBlanking.ENABLE` (1): RF blanking is enabled. + + **Default Value:** :py:data:`~nirfsg.RFBlanking.DISABLE` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + Enables or disables RF blanking. + + +---------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+-----------------------------------------------------------------------------------------------------------+ + | :py:attr:`nirfsg.Session.rf_blanking_source` | :py:attr:`nirfsg.Session.waveform_rf_blanking` | Behaviour | + +===============================================================================================================================================================+================================================+===========================================================================================================+ + | "" (empty string) | :py:data:`~nirfsg.RFBlanking.DISABLE` | No blanking performed. | + +---------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+-----------------------------------------------------------------------------------------------------------+ + | "" (empty string) | :py:data:`~nirfsg.RFBlanking.ENABLE` | Blanking performed based on burst start and stop values and blanking source set to private marker. | + +---------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+-----------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_MARKER0`, :py:data:`~nirfsg.NIRFSG_VAL_MARKER1`, :py:data:`~nirfsg.NIRFSG_VAL_MARKER2`, or :py:data:`~nirfsg.NIRFSG_VAL_MARKER3` | :py:data:`~nirfsg.RFBlanking.DISABLE` | Blanking performed based on the marker locations for the marker that the user set in the blanking source. | + +---------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+-----------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_MARKER0`, :py:data:`~nirfsg.NIRFSG_VAL_MARKER1`, :py:data:`~nirfsg.NIRFSG_VAL_MARKER2`, or :py:data:`~nirfsg.NIRFSG_VAL_MARKER3` | :py:data:`~nirfsg.RFBlanking.ENABLE` | Error is shown. | + +---------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+-----------------------------------------------------------------------------------------------------------+ + + .. note:: For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.reset_with_options` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + + .. tip:: This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_rf_blanking` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_rf_blanking` + + The following table lists the characteristics of this property. + + +-----------------------+------------------+ + | Characteristic | Value | + +=======================+==================+ + | Datatype | enums.RFBlanking | + +-----------------------+------------------+ + | Permissions | read-write | + +-----------------------+------------------+ + | Repeated Capabilities | waveform | + +-----------------------+------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Attributes:Waveform RF Blanking** + - C Attribute: **NIRFSG_ATTR_WAVEFORM_RF_BLANKING** + +waveform_runtime_scaling +------------------------ + + .. py:attribute:: waveform_runtime_scaling + + Specifies the waveform runtime scaling. The waveform runtime scaling is applied to the waveform data before any other signal processing. + + **Units**: dB + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860, PXIe-5841 with PXIe-5655 + + + + + .. tip:: This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_runtime_scaling` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_runtime_scaling` + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | waveform | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Attributes:Waveform Runtime Scaling** + - C Attribute: **NIRFSG_ATTR_WAVEFORM_RUNTIME_SCALING** + +waveform_signal_bandwidth +------------------------- + + .. py:attribute:: waveform_signal_bandwidth + + Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× :py:attr:`nirfsg.Session.iq_rate`). + + **Units**: hertz (Hz) + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + + .. tip:: This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_signal_bandwidth` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_signal_bandwidth` + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | waveform | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Attributes:Waveform Signal Bandwidth (Hz)** + - C Attribute: **NIRFSG_ATTR_WAVEFORM_SIGNAL_BANDWIDTH** + +waveform_waveform_size +---------------------- + + .. py:attribute:: waveform_waveform_size + + Specifies the size of the waveform specified by an active channel. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5841 with PXIe-5655/5842/5860 + + + + + .. tip:: This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_waveform_size` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_waveform_size` + + The following table lists the characteristics of this property. + + +-----------------------+-----------+ + | Characteristic | Value | + +=======================+===========+ + | Datatype | int | + +-----------------------+-----------+ + | Permissions | read only | + +-----------------------+-----------+ + | Repeated Capabilities | waveform | + +-----------------------+-----------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Waveform Attributes:Waveform Size** + - C Attribute: **NIRFSG_ATTR_WAVEFORM_WAVEFORM_SIZE** + +write_waveform_burst_detection +------------------------------ + + .. py:attribute:: write_waveform_burst_detection + + Enables the detection of burst start and burst stop locations in the waveform. You can read the detected burst start and burst stop locations using :py:meth:`nirfsg.Session._get_waveform_burst_start_locations` and :py:meth:`nirfsg.Session._get_waveform_burst_stop_locations` methods respectively. + + **Default Value:** :py:data:`~nirfsg.WriteWaveformBurstDetection.DISABLE` + + **Supported Devices:**PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +--------------------------------------------------------+------------------------------+ + | Value | Description | + +========================================================+==============================+ + | :py:data:`~nirfsg.WriteWaveformBurstDetection.ENABLE` | Burst detection is enabled. | + +--------------------------------------------------------+------------------------------+ + | :py:data:`~nirfsg.WriteWaveformBurstDetection.DISABLE` | Burst detection is disabled. | + +--------------------------------------------------------+------------------------------+ + + .. note:: - When you download a waveform using :py:meth:`nirfsg.Session.ReadAndDownloadWaveformFromFileTdms` method and if :py:attr:`nirfsg.Session.waveform_rf_blanking` property is enabled, you must set the :py:attr:`nirfsg.Session.write_waveform_burst_detection` property to :py:data:`~nirfsg.WriteWaveformBurstDetection.DISABLE`. + + - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.reset_with_options` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+-----------------------------------+ + | Characteristic | Value | + +=======================+===================================+ + | Datatype | enums.WriteWaveformBurstDetection | + +-----------------------+-----------------------------------+ + | Permissions | read-write | + +-----------------------+-----------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Write Waveform Burst Detection:Enabled** + - C Attribute: **NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION** + +write_waveform_burst_detection_mode +----------------------------------- + + .. py:attribute:: write_waveform_burst_detection_mode + + Specifies the algorithm that NI-RFSG uses to detect the burst start and burst stop locations in the waveform when burst detection is enabled using the :py:attr:`nirfsg.Session.write_waveform_burst_detection` property. When you set :py:attr:`nirfsg.Session.write_waveform_burst_detection_mode` to :py:data:`~nirfsg.WriteWaveformBurstDetectionMode.AUTO`, NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform. To fine-tune the burst detection process parameters yourself, you can set this property to :py:data:`~nirfsg.WriteWaveformBurstDetectionMode.MANUAL` and specify the burst detection parameters using the write waveform burst detection minimum quiet time, :py:attr:`nirfsg.Session.write_waveform_burst_detection_power_threshold`, write waveform burst detection minimum burst time properties. + + **Default Value:** :py:data:`~nirfsg.WriteWaveformBurstDetectionMode.AUTO` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------+ + | Value | Description | + +===========================================================+===================================================================================================+ + | :py:data:`~nirfsg.WriteWaveformBurstDetectionMode.AUTO` | NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform. | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.WriteWaveformBurstDetectionMode.MANUAL` | User sets the burst detection parameters. | + +-----------------------------------------------------------+---------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+---------------------------------------+ + | Characteristic | Value | + +=======================+=======================================+ + | Datatype | enums.WriteWaveformBurstDetectionMode | + +-----------------------+---------------------------------------+ + | Permissions | read-write | + +-----------------------+---------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+---------------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Write Waveform Burst Detection:Mode** + - C Attribute: **NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION_MODE** + +write_waveform_burst_detection_power_threshold +---------------------------------------------- + + .. py:attribute:: write_waveform_burst_detection_power_threshold + + Specifies the relative power level at which burst start or stop locations are detected. The threshold is relative to the peak power in the waveform. NI-RFSG detects burst start (or burst stop) locations when the signal exceeds (or falls below) the level specified by this property. This property is ignored when you disable the :py:attr:`nirfsg.Session.write_waveform_burst_detection` property or when you set the :py:attr:`nirfsg.Session.write_waveform_burst_detection_mode` property to :py:data:`~nirfsg.NIRFSG_VAL_AUTO`. + + **Units:** dB + + **Default Value:** 0 + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------+ + | Characteristic | Value | + +=======================+============+ + | Datatype | float | + +-----------------------+------------+ + | Permissions | read-write | + +-----------------------+------------+ + | Repeated Capabilities | None | + +-----------------------+------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Write Waveform Burst Detection:Power Threshold** + - C Attribute: **NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION_POWER_THRESHOLD** + +write_waveform_normalization +---------------------------- + + .. py:attribute:: write_waveform_normalization + + Specifies whether to perform the normalization on a waveform. + + **Default Value:** :py:data:`~nirfsg.WriteWaveformNormalization.DISABLE` + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +=======================================================+=========================================================================================================================+ + | :py:data:`~nirfsg.WriteWaveformNormalization.ENABLE` | Enables normalization on a waveform to transform the waveform data so that its maximum is 1.00 and its minimum is -1.00 | + +-------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.WriteWaveformNormalization.DISABLE` | Disables normalization on the waveform. | + +-------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + + .. note:: You can not set :py:attr:`nirfsg.Session.write_waveform_normalization` and :py:attr:`nirfsg.Session.power_level_type` properties at the same time. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+----------------------------------+ + | Characteristic | Value | + +=======================+==================================+ + | Datatype | enums.WriteWaveformNormalization | + +-----------------------+----------------------------------+ + | Permissions | read-write | + +-----------------------+----------------------------------+ + | Repeated Capabilities | None | + +-----------------------+----------------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **Arb:Write Waveform Normalization** + - C Attribute: **NIRFSG_ATTR_WRITE_WAVEFORM_NORMALIZATION** + +yig_main_coil_drive +------------------- + + .. py:attribute:: yig_main_coil_drive + + Adjusts the dynamics of the current driving the YIG main coil. + + **Default Value:** :py:data:`~nirfsg.YigMainCoilDrive.MANUAL` + + **Supported Devices:** PXIe-5653 + + **Defined Values**: + + +------------------------------------------+--------------------------------------------------------+ + | Value | Description | + +==========================================+========================================================+ + | :py:data:`~nirfsg.NIRFSG_VAL_SLOW` | Adjusts the YIG main coil for an underdamped response. | + +------------------------------------------+--------------------------------------------------------+ + | :py:data:`~nirfsg.YigMainCoilDrive.FAST` | Adjusts the YIG main coil for an overdamped response. | + +------------------------------------------+--------------------------------------------------------+ + + .. note:: Setting this property to :py:data:`~nirfsg.YigMainCoilDrive.FAST` on the PXIe-5653 allows the frequency to settle significantly faster for some frequency transitions at the expense of increased phase noise. + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + The following table lists the characteristics of this property. + + +-----------------------+------------------------+ + | Characteristic | Value | + +=======================+========================+ + | Datatype | enums.YigMainCoilDrive | + +-----------------------+------------------------+ + | Permissions | read-write | + +-----------------------+------------------------+ + | Repeated Capabilities | None | + +-----------------------+------------------------+ + + .. tip:: + This property corresponds to the following LabVIEW Property or C Attribute: + + - LabVIEW Property: **RF:Advanced:YIG Main Coil Drive** + - C Attribute: **NIRFSG_ATTR_YIG_MAIN_COIL_DRIVE** + + +NI-TClk Support +=============== + + .. py:attribute:: tclk + + This is used to get and set NI-TClk attributes on the session. + + .. seealso:: See :py:class:`nitclk.SessionReference` for a complete list of attributes. + + +.. contents:: Session diff --git a/docs/nirfsg/conf.py b/docs/nirfsg/conf.py new file mode 100644 index 0000000000..a9f3b4cd65 --- /dev/null +++ b/docs/nirfsg/conf.py @@ -0,0 +1,197 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# +# NI-RFSG Python API documentation build configuration file, created by +# sphinx-quickstart on Fri Jul 14 13:04:36 2017. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +# +import os +import sys +sys.path.insert(0, os.path.abspath('../generated')) + + +# -- General configuration ------------------------------------------------ + +# If your documentation needs a minimal Sphinx version, state it here. +# +# needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = ['sphinx.ext.autodoc', + 'sphinx.ext.doctest', + 'sphinx.ext.intersphinx', + 'sphinx.ext.todo', + 'sphinx.ext.coverage', + 'sphinx.ext.mathjax', + 'sphinx.ext.ifconfig', + 'sphinx.ext.viewcode', + 'sphinx.ext.githubpages'] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix(es) of source filenames. +# You can specify multiple suffix as a list of string: +# +# source_suffix = ['.rst', '.md'] +source_suffix = '.rst' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = 'NI-RFSG Python API' +copyright = '2017-2025, National Instruments Corporation' +author = 'NI' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The full version, including alpha/beta/rc tags. +release = '1.4.8.dev0' +# The short X.Y version. +version = release[:3] + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +# +# This is also used if you do content translation via gettext catalogs. +# Usually you set "language" from the command line for these cases. +language = 'en' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This patterns also effect to html_static_path and html_extra_path +exclude_patterns = [] + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# If true, `todo` and `todoList` produce output, else they produce nothing. +todo_include_todos = True + + +# -- Options for HTML output ---------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +# +html_theme = 'sphinx_rtd_theme' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +# +html_theme_options = { + 'navigation_depth': -1, +} + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['../_static'] + +# Fix wide tables of RTD per https://github.com/rtfd/sphinx_rtd_theme/issues/117#issuecomment-41571653 +def setup(app): + app.add_css_file('theme_overrides.css') + +# Custom sidebar templates, must be a dictionary that maps document names +# to template names. +# +# This is required for the alabaster theme +# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars +html_sidebars = { + '**': [ + 'about.html', + 'navigation.html', + 'relations.html', # needs 'show_related': True theme option to display + 'searchbox.html', + 'donate.html', + ] +} + + +# -- Options for HTMLHelp output ------------------------------------------ + +# Output file base name for HTML help builder. +htmlhelp_basename = 'NIModularInstrumentsPythonAPIdoc' + + +# -- Options for LaTeX output --------------------------------------------- + +latex_elements = { + # The paper size ('letterpaper' or 'a4paper'). + # + # 'papersize': 'letterpaper', + + # The font size ('10pt', '11pt' or '12pt'). + # + # 'pointsize': '10pt', + + # Additional stuff for the LaTeX preamble. + # + # 'preamble': '', + + # Latex figure (float) alignment + # + # 'figure_align': 'htbp', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + (master_doc, 'NIRFSGPythonAPI.tex', 'NI-RFSG Python API Documentation', + 'NI', 'manual'), +] + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + (master_doc, 'nirfsgpythonapi', 'NI-RFSG Python API Documentation', + [author], 1) +] + + +# -- Options for Texinfo output ------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + (master_doc, 'NIRFSGPythonAPI', 'NI-RFSG Python API Documentation', + author, 'NIRFSGPythonAPI', 'One line description of project.', + 'Miscellaneous'), +] + +# Example configuration for intersphinx: refer to the Python standard library. +intersphinx_mapping = { + 'python': ('https://docs.python.org/3', None), + 'nidcpower': ('https://nidcpower.readthedocs.io/en/latest/', None), + 'nidigital': ('https://nidigital.readthedocs.io/en/latest/', None), + 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), + 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), + 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), + 'nise': ('https://nise.readthedocs.io/en/latest/', None), + 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), + 'nitclk': ('https://nitclk.readthedocs.io/en/latest/', None), +} diff --git a/docs/nirfsg/enums.rst b/docs/nirfsg/enums.rst new file mode 100644 index 0000000000..511c8d3096 --- /dev/null +++ b/docs/nirfsg/enums.rst @@ -0,0 +1,4934 @@ +Enums +===== + +Enums used in NI-RFSG + +.. py:currentmodule:: nirfsg + + +AllowOutOfSpecificationUserSettings +----------------------------------- + +.. py:class:: AllowOutOfSpecificationUserSettings + + .. py:attribute:: AllowOutOfSpecificationUserSettings.DISABLE + + + + Disables out-of-specification user settings. + + + + + + .. py:attribute:: AllowOutOfSpecificationUserSettings.ENABLE + + + + Enables out-of-specification user settings. + + + + + +AmpPath +------- + +.. py:class:: AmpPath + + .. py:attribute:: AmpPath.HIGH_POWER + + + + Sets the amplification path to use the high power path. + + + + + + .. py:attribute:: AmpPath.LOW_HARMONIC + + + + Sets the amplification path to use the low harmonic path. + + + + + +AnlgModFmBand +------------- + +.. py:class:: AnlgModFmBand + + .. py:attribute:: AnlgModFmBand.NARROWBAND + + + + Specifies narrowband frequency modulation. + + + + + + .. py:attribute:: AnlgModFmBand.WIDEBAND + + + + Specifies wideband frequency modulation. + + + + + +AnlgModFmNarrowbandIntegrator +----------------------------- + +.. py:class:: AnlgModFmNarrowbandIntegrator + + .. py:attribute:: AnlgModFmNarrowbandIntegrator._100hzto1khz + + + + Specifies a range from 100Hz to 1kHz. + + + + + + .. py:attribute:: AnlgModFmNarrowbandIntegrator._1khzto10khz + + + + Specifies a range from 1kHz to 10kHz. + + + + + + .. py:attribute:: AnlgModFmNarrowbandIntegrator._10khzto100khz + + + + Specifies a range from 10kHz to 100kHz. + + + + + +AnlgModPmMode +------------- + +.. py:class:: AnlgModPmMode + + .. py:attribute:: AnlgModPmMode.HIGH_DEVIATION + + + + Specifies high deviation. High deviation comes at the expense of a higher phase noise. + + + + + + .. py:attribute:: AnlgModPmMode.LOW_PHASE_NOISE + + + + Specifies low phase noise. Low phase noise comes at the expense of a lower maximum deviation. + + + + + +AnlgModType +----------- + +.. py:class:: AnlgModType + + .. py:attribute:: AnlgModType.NONE + + + + Disables analog modulation. + + + + + + .. py:attribute:: AnlgModType.FM + + + + Specifies that the analog modulation type is FM. + + + + + + .. py:attribute:: AnlgModType.PM + + + + Specifies that the analog modulation type is PM. + + + + + + .. py:attribute:: AnlgModType.AM + + + + Specifies that the analog modulation type is AM. + + + + + +AnlgModWfmType +-------------- + +.. py:class:: AnlgModWfmType + + .. py:attribute:: AnlgModWfmType.SINE + + + + Specifies that the analog modulation waveform type is sine. + + + + + + .. py:attribute:: AnlgModWfmType.SQUARE + + + + Specifies that the analog modulation waveform type is square. + + + + + + .. py:attribute:: AnlgModWfmType.TRIANGLE + + + + Specifies that the analog modulation waveform type is triangle. + + + + + +ArbOnboardSampleClockMode +------------------------- + +.. py:class:: ArbOnboardSampleClockMode + + .. py:attribute:: ArbOnboardSampleClockMode.HIGH_RESOLUTION + + + + Sample rates are generated by a high-resolution clock. + + + + + + .. py:attribute:: ArbOnboardSampleClockMode.DIVIDE_DOWN + + + + Sample rates are generated by dividing the source frequency. + + + + + +ArbSampleClockSource +-------------------- + +.. py:class:: ArbSampleClockSource + + .. py:attribute:: ArbSampleClockSource.ONBOARD_CLOCK + + + + Uses the AWG module onboard clock as the Sample Clock source. + + + + + + .. py:attribute:: ArbSampleClockSource.CLK_IN + + + + Uses the external clock as the Sample Clock source. + + + + + +AutomaticLevelControl +--------------------- + +.. py:class:: AutomaticLevelControl + + .. py:attribute:: AutomaticLevelControl.DISABLE + + + + Disables ALC. + + + + + + .. py:attribute:: AutomaticLevelControl.ENABLE + + + + Enables the ALC. + + + + + +AutomaticPowerSearch +-------------------- + +.. py:class:: AutomaticPowerSearch + + .. py:attribute:: AutomaticPowerSearch.DISABLE + + + + Disables automatic power search. + + + + + + .. py:attribute:: AutomaticPowerSearch.ENABLE + + + + Enables automatic power search. + + + + + +AutomaticThermalCorrection +-------------------------- + +.. py:class:: AutomaticThermalCorrection + + .. py:attribute:: AutomaticThermalCorrection.DISABLE + + + + Automatic thermal correction is disabled. + + + + + + .. py:attribute:: AutomaticThermalCorrection.ENABLE + + + + Automatic thermal correction is enabled. + + + + + +ConfigListTrigDigEdgeEdge +------------------------- + +.. py:class:: ConfigListTrigDigEdgeEdge + + .. py:attribute:: ConfigListTrigDigEdgeEdge.EDGE + + + + Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level. + + + + + +ConfigListTrigDigEdgeSource +--------------------------- + +.. py:class:: ConfigListTrigDigEdgeSource + + .. py:attribute:: ConfigListTrigDigEdgeSource.PFI0 + + + + The trigger is received on PFI 0. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PFI1 + + + + The trigger is received on PFI 1. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG0 + + + + The trigger is received on PXI trigger line 0. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG1 + + + + The trigger is received on PXI trigger line 1. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG2 + + + + The trigger is received on PXI trigger line 2. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG3 + + + + The trigger is received on PXI trigger line 3. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG4 + + + + The trigger is received on PXI trigger line 4. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG5 + + + + The trigger is received on PXI trigger line 5. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG6 + + + + The trigger is received on PXI trigger line 6. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_TRIG7 + + + + The trigger is received on PXI trigger line 7. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXI_STAR + + + + The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.PXIE_DSTARB + + + + The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.MARKER0_EVENT + + + + The trigger is received from the Marker Event 0. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.MARKER1_EVENT + + + + The trigger is received from the Marker Event 1. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.MARKER2_EVENT + + + + The trigger is received from the Marker Event 2. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.MARKER3_EVENT + + + + The trigger is received from the Marker Event 3. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.TIMER_EVENT + + + + The trigger is received from the Timer Event. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.TRIG_IN + + + + The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigDigEdgeSource.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +ConfigListTrigExportOutputTerm +------------------------------ + +.. py:class:: ConfigListTrigExportOutputTerm + + .. py:attribute:: ConfigListTrigExportOutputTerm.DO_NOT_EXPORT + + + + The signal is not exported. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PFI0 + + + + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PFI1 + + + + The signal is exported on PFI 1 connector. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXI_TRIG0 + + + + The signal is exported to the PXI trigger line 0. . + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXI_TRIG1 + + + + The signal is exported to the PXI trigger line 0. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXI_TRIG2 + + + + The signal is exported to the PXI trigger line 2. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXI_TRIG3 + + + + The signal is exported to the PXI trigger line 3. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXI_TRIG4 + + + + The signal is exported to the PXI trigger line 4. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXI_TRIG5 + + + + The signal is exported to the PXI trigger line 5. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXI_TRIG6 + + + + The signal is exported to the PXI trigger line 6. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.PXIE_DSTARC + + + + The trigger is received on the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.TRIG_OUT + + + + The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: ConfigListTrigExportOutputTerm.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +ConfigListTrigType +------------------ + +.. py:class:: ConfigListTrigType + + .. py:attribute:: ConfigListTrigType.NONE + + + + Generation starts immediately, but the list does not advance. + + + + + + .. py:attribute:: ConfigListTrigType.DIGITAL_EDGE + + + + Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the %property{digital edge configuration list step trigger source} property, and the active edge is always rising. + + + + + +ConfigurationListRepeat +----------------------- + +.. py:class:: ConfigurationListRepeat + + .. py:attribute:: ConfigurationListRepeat.CONTINUOUS + + + + NI-RFSG runs the configuration list continuously. + + + + + + .. py:attribute:: ConfigurationListRepeat.MANUAL + + + + .. py:attribute:: ConfigurationListRepeat.SINGLE + + + + NI-RFSG runs the configuration list only once. + + + + + + .. py:attribute:: ConfigurationListRepeat.SCRIPT_TRIGGER + + + +ConfigurationSettledEventExportOutputTerm +----------------------------------------- + +.. py:class:: ConfigurationSettledEventExportOutputTerm + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.DO_NOT_EXPORT + + + + The signal is not exported. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXI_TRIG0 + + + + PXI trigger line 0. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXI_TRIG1 + + + + PXI trigger line 1. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXI_TRIG2 + + + + PXI trigger line 2. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXI_TRIG3 + + + + PXI trigger line 3. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXI_TRIG4 + + + + PXI trigger line 4. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXI_TRIG5 + + + + PXI trigger line 5. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXI_TRIG6 + + + + PXI trigger line 6. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.PXIE_DSTARC + + + + PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842. + + + + + + .. py:attribute:: ConfigurationSettledEventExportOutputTerm.TRIG_OUT + + + + TRIG IN/OUT terminal. + + + + + +DeembeddingTypeAttrVals +----------------------- + +.. py:class:: DeembeddingTypeAttrVals + + .. py:attribute:: DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE + + + + De-embedding is not applied to the measurement. + + + + + + .. py:attribute:: DeembeddingTypeAttrVals.NONE + + + + .. py:attribute:: DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR + + + + De-embeds the measurement using only the gain term. + + + + + + .. py:attribute:: DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR + + + + De-embeds the measurement using the gain term and the reflection term. + + + + + +DigModType +---------- + +.. py:class:: DigModType + + .. py:attribute:: DigModType.NONE + + + + Disables digital modulation. + + + + + + .. py:attribute:: DigModType.FSK + + + + Specifies that the digital modulation type is frequency-shift keying (FSK). + + + + + + .. py:attribute:: DigModType.OOK + + + + Specifies that the digital modulation type is on-off keying (OOK). + + + + + + .. py:attribute:: DigModType.PSK + + + + Specifies that the digital modulation type is phase-shift keying (PSK). + + + + + +DigModWfmType +------------- + +.. py:class:: DigModWfmType + + .. py:attribute:: DigModWfmType.PRBS + + + + Specifies that the digital modulation waveform type is pseudorandom bit sequence (PRBS). + + + + + + .. py:attribute:: DigModWfmType.USER_DEFINED + + + + Specifies that the digital modulation waveform type is user defined. To specify the user-defined waveform, call the %method{configure digital modulation user defined waveform} method. + + + + + +DigitalEqualizationEnabled +-------------------------- + +.. py:class:: DigitalEqualizationEnabled + + .. py:attribute:: DigitalEqualizationEnabled.DISABLE + + + + Filter is not applied + + + + + + .. py:attribute:: DigitalEqualizationEnabled.ENABLE + + + + Filter is applied. + + + + + +DirectDownload +-------------- + +.. py:class:: DirectDownload + + .. py:attribute:: DirectDownload.DISABLE + + + + The RF In local oscillator signal is not present at the front panel LO OUT connector. + + + + + + .. py:attribute:: DirectDownload.ENABLE + + + + The RF In local oscillator signal is present at the front panel LO OUT connector. + + + + + + .. py:attribute:: DirectDownload.UNSPECIFIED + + + + The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it. + + + + + +DoneEventExportOutputTerm +------------------------- + +.. py:class:: DoneEventExportOutputTerm + + .. py:attribute:: DoneEventExportOutputTerm.DO_NOT_EXPORT + + + + The signal is not exported. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PFI0 + + + + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PFI1 + + + + The signal is exported to the PFI 1 connector. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PFI4 + + + + The signal is exported to the PFI 4 connector. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PFI5 + + + + The signal is exported to the PFI 5 connector. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXI_TRIG0 + + + + The signal is exported to the PXI trigger line 0. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXI_TRIG1 + + + + The signal is exported to the PXI trigger line 1. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXI_TRIG2 + + + + The signal is exported to the PXI trigger line 2. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXI_TRIG3 + + + + The signal is exported to the PXI trigger line 3. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXI_TRIG4 + + + + The signal is exported to the PXI trigger line 4. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXI_TRIG5 + + + + The signal is exported to the PXI trigger line 5. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXI_TRIG6 + + + + The signal is exported to the PXI trigger line 6. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.PXIE_DSTARC + + + + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: DoneEventExportOutputTerm.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +FilterType +---------- + +.. py:class:: FilterType + + .. py:attribute:: FilterType.NONE + + + + No filter type is applied. + + + + + + .. py:attribute:: FilterType.ARB_FILTER_TYPE_ROOT_RAISED_COSINE + + + + Applies a root-raised cosine filter to the data with the alpha value specified with the %property{arb filter root raised cosine alpha} property. + + + + + + .. py:attribute:: FilterType.ARB_FILTER_TYPE_RAISED_COSINE + + + + Applies a raised cosine filter to the data with the alpha value specified with the %property{arb filter raised cosine alpha} property. + + + + + +Format +------ + +.. py:class:: Format + + .. py:attribute:: Format.MAGNITUDE_AND_PHASE + + + + Results in a linear interpolation of the magnitude and a separate linear interpolation of the phase. + + + + + + .. py:attribute:: Format.MAGNITUDE_DB_AND_PHASE + + + + Results in a linear interpolation of the magnitude, in decibels, and a separate linear interpolation of the phase. + + + + + + .. py:attribute:: Format.REAL_AND_IMAGINARY + + + + Results in a linear interpolation of the real portion of the complex number and a separate linear interpolation of the complex portion. + + + + + +FrequencySettlingUnits +---------------------- + +.. py:class:: FrequencySettlingUnits + + .. py:attribute:: FrequencySettlingUnits.TIME_AFTER_LOCK + + + + Specifies the time to wait after the frequency PLL locks. + + + + + + .. py:attribute:: FrequencySettlingUnits.TIME_AFTER_IO + + + + Specifies the time to wait after all writes occur to change the frequency + + + + + + .. py:attribute:: FrequencySettlingUnits.PPM + + + + Specifies the minimum frequency accuracy when settling completes. Units are in parts per million (PPM or 1E-6). + + + + + +GenerationMode +-------------- + +.. py:class:: GenerationMode + + .. py:attribute:: GenerationMode.CW + + + + Configures the RF signal generator to generate a CW signal. + + + + + + .. py:attribute:: GenerationMode.ARB_WAVEFORM + + + + Configures the RF signal generator to generate the arbitrary waveform specified by the %property{arb selected waveform} property. + + + + + + .. py:attribute:: GenerationMode.SCRIPT + + + + Configures the RF signal generator to generate arbitrary waveforms as directed by the %property{selected script} property. + + + + + +IQOutPortTermCfg +---------------- + +.. py:class:: IQOutPortTermCfg + + .. py:attribute:: IQOutPortTermCfg.DIFFERENTIAL + + + + Sets the terminal configuration to differential. + + + + + + .. py:attribute:: IQOutPortTermCfg.SINGLE_ENDED + + + + Sets the terminal configuration to single-ended. + + + + + +Lo1OutputFilter +--------------- + +.. py:class:: Lo1OutputFilter + + .. py:attribute:: Lo1OutputFilter.MANUAL + + + + yet to be defined + + + + + + .. py:attribute:: Lo1OutputFilter.SCRIPT_TRIGGER + + + + yet to be defined + + + + + +LoFilter +-------- + +.. py:class:: LoFilter + + .. py:attribute:: LoFilter.CONFIGURATION_SETTLED_EVENT + + + + Exports a Configuration Settled Event. + + + + + + .. py:attribute:: LoFilter.CONFIGURATION_LIST_STEP_TRIGGER + + + + Exports a Configuration List Step Trigger. + + + + + + .. py:attribute:: LoFilter.DONE_EVENT + + + + Exports a Done Event. + + + + + + .. py:attribute:: LoFilter.MARKER_EVENT + + + + Exports a Marker Event. + + + + + + .. py:attribute:: LoFilter.REF_CLOCK + + + + Exports the Reference Clock. + + + + + + .. py:attribute:: LoFilter.SCRIPT_TRIGGER + + + + Exports a Script Trigger. + + + + + + .. py:attribute:: LoFilter.START_TRIGGER + + + + Exports a Start Trigger. + + + + + + .. py:attribute:: LoFilter.STARTED_EVENT + + + + Exports a Started Event. + + + + + +LoOutEnabled +------------ + +.. py:class:: LoOutEnabled + + .. py:attribute:: LoOutEnabled.DISABLE + + + + The local oscillator signal is present at the LO OUT front panel connector. + + + + + + .. py:attribute:: LoOutEnabled.MANUAL + + + + .. py:attribute:: LoOutEnabled.ENABLE + + + + The local oscillator signal is not present at the LO OUT front panel connector.. + + + + + + .. py:attribute:: LoOutEnabled.SCRIPT_TRIGGER + + + +LoOutExportConfigureFromRFSaEnable +---------------------------------- + +.. py:class:: LoOutExportConfigureFromRFSaEnable + + .. py:attribute:: LoOutExportConfigureFromRFSaEnable.DISABLE + + + + Do not allow NI-RFSA to control the NI-RFSG local oscillator export. + + + + + + .. py:attribute:: LoOutExportConfigureFromRFSaEnable.MANUAL + + + + .. py:attribute:: LoOutExportConfigureFromRFSaEnable.ENABLE + + + + Allow NI-RFSA to control the NI-RFSG local oscillator export. + + + + + + .. py:attribute:: LoOutExportConfigureFromRFSaEnable.SCRIPT_TRIGGER + + + +LoPlLfractionalModeEnabled +-------------------------- + +.. py:class:: LoPlLfractionalModeEnabled + + .. py:attribute:: LoPlLfractionalModeEnabled.DISABLE + + + + Disables fractional mode for the LO PLL. + + + + + + .. py:attribute:: LoPlLfractionalModeEnabled.MANUAL + + + + .. py:attribute:: LoPlLfractionalModeEnabled.ENABLE + + + + Enables fractional mode for the LO PLL. + + + + + + .. py:attribute:: LoPlLfractionalModeEnabled.SCRIPT_TRIGGER + + + +LoSource +-------- + +.. py:class:: LoSource + + .. py:attribute:: LoSource.ONBOARD + + + + Uses an internal LO as the LO source. If you specify an internal LO source, the LO is generated inside the device itself. + + + + + + .. py:attribute:: LoSource.LO_IN + + + + Uses an external LO as the LO source. Connect a signal to the LO IN connector on the device and use the %property{upconverter center frequency} property to specify the LO frequency. + + + + + + .. py:attribute:: LoSource.SECONDARY + + + + Uses the PXIe-5831/5840 internal LO as the LO source. This value is valid only on the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653. + + + + + + .. py:attribute:: LoSource.SG_SA_SHARED + + + + Uses the same internal LO during NI-RFSA and NI-RFSG sessions. NI-RFSG selects an internal synthesizer and the synthesizer signal is switched to both the RF In and RF Out mixers. This value is valid only on the PXIe-5830/5831/5832/5841 with PXIe-5655/5842. + + + + + + .. py:attribute:: LoSource.AUTOMATIC_SG_SA_SHARED + + + + NI-RFSG internally makes the configuration to share the LO between NI-RFSA and NI-RFSG. This value is valid only on the PXIe-5820/5830/5831/5832/5840/5841/5842. + + + + + +LoadOptions +----------- + +.. py:class:: LoadOptions + + .. py:attribute:: LoadOptions.SKIP_NONE + + + + NI-RFSG loads all the configurations to the session. + + + + + + .. py:attribute:: LoadOptions.MANUAL + + + + .. py:attribute:: LoadOptions.SKIP_WAVEFORM + + + + NI-RFSG skips loading the waveform configurations to the session. + + + + + + .. py:attribute:: LoadOptions.SCRIPT_TRIGGER + + + +LoopBandwidth +------------- + +.. py:class:: LoopBandwidth + + .. py:attribute:: LoopBandwidth.NARROW + + + + Uses the narrowest loop bandwidth setting for the PLL. + + + + + + .. py:attribute:: LoopBandwidth.MEDIUM + + + + Uses the medium loop bandwidth setting for the PLL. + + + + + + .. py:attribute:: LoopBandwidth.WIDE + + + + Uses the widest loop bandwidth setting for the PLL. + + + + + +MarkerEventExportOutputTerm +--------------------------- + +.. py:class:: MarkerEventExportOutputTerm + + .. py:attribute:: MarkerEventExportOutputTerm.DO_NOT_EXPORT + + + + The signal is not exported. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PFI0 + + + + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PFI1 + + + + The signal is exported to the PFI 1 connector. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PFI4 + + + + The signal is exported to the PFI 4 connector. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PFI5 + + + + The signal is exported to the PFI 5 connector. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXI_TRIG0 + + + + The signal is exported to PXI trigger line 0. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXI_TRIG1 + + + + The signal is exported to PXI trigger line 1. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXI_TRIG2 + + + + The signal is exported to PXI trigger line 2. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXI_TRIG3 + + + + The signal is exported to PXI trigger line 3. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXI_TRIG4 + + + + The signal is exported to PXI trigger line 4. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXI_TRIG5 + + + + The signal is exported to PXI trigger line 5. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXI_TRIG6 + + + + The signal is exported to PXI trigger line 6. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.PXIE_DSTARC + + + + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: MarkerEventExportOutputTerm.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +MarkerEventOutputBehavior +------------------------- + +.. py:class:: MarkerEventOutputBehavior + + .. py:attribute:: MarkerEventOutputBehavior.PULSE + + + + Specifies the Marker Event output behavior as pulse. + + + + + + .. py:attribute:: MarkerEventOutputBehavior.TOGGLE + + + + Specifies the Marker Event output behavior as toggle. + + + + + +MarkerEventPulseWidthUnits +-------------------------- + +.. py:class:: MarkerEventPulseWidthUnits + + .. py:attribute:: MarkerEventPulseWidthUnits.SECONDS + + + + Specifies the Marker Event pulse width units as seconds. + + + + + + .. py:attribute:: MarkerEventPulseWidthUnits.SAMPLE_CLOCK_PERIODS + + + + Specifies the Marker Event pulse width units as Sample Clock periods. + + + + + +MarkerEventToggleInitialState +----------------------------- + +.. py:class:: MarkerEventToggleInitialState + + .. py:attribute:: MarkerEventToggleInitialState.LOW + + + + Specifies the initial state of the Marker Event toggle behavior as digital low. + + + + + + .. py:attribute:: MarkerEventToggleInitialState.HIGH + + + + Specifies the initial state of the Marker Event toggle behavior as digital high. + + + + + +Module +------ + +.. py:class:: Module + + .. py:attribute:: Module.AWG + + + + The AWG associated with the primary module. + + + + + + .. py:attribute:: Module.LO + + + + The LO associated with the primary module. + + + + + + .. py:attribute:: Module.PRIMARY_MODULE + + + + The stand-alone device or the main module in a multi-module device. + + + + + +OffsetUnits +----------- + +.. py:class:: OffsetUnits + + .. py:attribute:: OffsetUnits.PERCENT + + + + Specifies the unit in percentage. + + + + + + .. py:attribute:: OffsetUnits.VOLTS + + + + Specifies the unit in volts. + + + + + +OutputPort +---------- + +.. py:class:: OutputPort + + .. py:attribute:: OutputPort.RF_OUT + + + + Enables the RF OUT port. This value is not valid for the PXIe-5820. + + + + + + .. py:attribute:: OutputPort.IQ_OUT + + + + Enables the I/Q OUT port. This value is valid on only the PXIe-5645 and PXIe-5820. + + + + + + .. py:attribute:: OutputPort.CAL_OUT + + + + Enables the CAL OUT port. + + + + + + .. py:attribute:: OutputPort.I_ONLY + + + + Enables the I connectors of the I/Q OUT port. This value is valid on only the PXIe-5645. + + + + + +OverflowErrorReporting +---------------------- + +.. py:class:: OverflowErrorReporting + + .. py:attribute:: OverflowErrorReporting.WARNING + + + + NI-RFSG returns a warning when an OSP overflow occurs. + + + + + + .. py:attribute:: OverflowErrorReporting.DISABLED + + + + NI-RFSG does not return an error or a warning when an OSP overflow occurs. + + + + + +PhaseContinuityEnabled +---------------------- + +.. py:class:: PhaseContinuityEnabled + + .. py:attribute:: PhaseContinuityEnabled.AUTO + + + + The arbitrary waveform may be repeated to ensure phase continuity after upconversion. This setting could cause waveform size to increase. + + + + + + .. py:attribute:: PhaseContinuityEnabled.DISABLE + + + + The arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. + + + + + + .. py:attribute:: PhaseContinuityEnabled.ENABLE + + + + The arbitrary waveform may be repeated to ensure phase continuity after upconversion. Enabling this property could cause waveform size to increase. + + + + + +PortTypes +--------- + +.. py:class:: PortTypes + + .. py:attribute:: PortTypes.OUT + + + + Specifies the PXIe-5840 RF OUT port. + + + + + + .. py:attribute:: PortTypes.IN + + + + Specifies the PXIe-5840 RF IN port. This value is not supported as the first element of an array. + + + + + +PowerLevelType +-------------- + +.. py:class:: PowerLevelType + + .. py:attribute:: PowerLevelType.AVERAGE + + + + Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If your write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. + + + + + + .. py:attribute:: PowerLevelType.PEAK + + + + Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires that the magnitude of the I/Q waveform must always be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the %property{arb waveform software scaling factor} property. You can use the %property{peak power adjustment} property in conjunction with the %property{power level} property when the %property{power level type} property is set to %enum_value{power level type.peak power}. + + + + + +PpaInheritance +-------------- + +.. py:class:: PpaInheritance + + .. py:attribute:: PpaInheritance.EXACT_MATCH + + + + Errors out if different values are detected in the script. + + + + + + .. py:attribute:: PpaInheritance.MINIMUM + + + + Uses the minimum value found in the script. + + + + + + .. py:attribute:: PpaInheritance.MAXIMUM + + + + Uses the maximum value found in the script. + + + + + +PulseModulationMode +------------------- + +.. py:class:: PulseModulationMode + + .. py:attribute:: PulseModulationMode.OPTIMAL_MATCH + + + + Provides for a more optimal power output match for the device during the off cycle of the pulse mode operation. Not supported on PXIe-5842 + + + + + + .. py:attribute:: PulseModulationMode.HIGH_ISOLATION + + + + Allows for the best on/off power ratio of the pulsed signal. + + + + + + .. py:attribute:: PulseModulationMode.ANALOG + + + + Analog switch blanking. Balance between switching speed and on/off power ratio of the pulsed signal. + + + + + + .. py:attribute:: PulseModulationMode.DIGITAL + + + + Digital only modulation. Provides the best on/off switching speed of the pulsed signal at the cost of signal isolation. + + + + + +PulseModulationOutputTerm +------------------------- + +.. py:class:: PulseModulationOutputTerm + + .. py:attribute:: PulseModulationOutputTerm.DO_NOT_EXPORT + + + + yet to be defined + + + + + + .. py:attribute:: PulseModulationOutputTerm.PULSE_OUT + + + + yet to be defined + + + + + +PulseModulationSource +--------------------- + +.. py:class:: PulseModulationSource + + .. py:attribute:: PulseModulationSource.PULSE_IN + + + + The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. + + + + + + .. py:attribute:: PulseModulationSource.MARKER0 + + + + The trigger is received from the Marker 0. + + + + + + .. py:attribute:: PulseModulationSource.MARKER1 + + + + The trigger is received from the Marker 1. + + + + + + .. py:attribute:: PulseModulationSource.MARKER2 + + + + The trigger is received from the Marker 2. + + + + + + .. py:attribute:: PulseModulationSource.MARKER3 + + + + The trigger is received from the Marker 3. + + + + + +PxiChassisClk10Source +--------------------- + +.. py:class:: PxiChassisClk10Source + + .. py:attribute:: PxiChassisClk10Source.NONE + + + + Do not drive the PXI_CLK10 signal. + + + + + + .. py:attribute:: PxiChassisClk10Source.DO_NOT_EXPORT_STR + + + + .. py:attribute:: PxiChassisClk10Source.ONBOARD_CLOCK_STR + + + + Uses the highly stable oven-controlled onboard Reference Clock to drive the PXI_CLK signal. + + + + + + .. py:attribute:: PxiChassisClk10Source.REF_IN_STR + + + + Uses the clock present at the front panel REF IN connector to drive the PXI_CLK signal. + + + + + +RFBlanking +---------- + +.. py:class:: RFBlanking + + .. py:attribute:: RFBlanking.DISABLE + + + + RF blanking is disabled. + + + + + + .. py:attribute:: RFBlanking.ENABLE + + + + RF blanking is enabled. + + + + + +RFFilter +-------- + +.. py:class:: RFFilter + + .. py:attribute:: RFFilter.HI_FREQ_MOD + + + + yet to be defined + + + + + + .. py:attribute:: RFFilter.CONFIGURATION_SETTLED_EVENT + + + + .. py:attribute:: RFFilter.LO_FREQ_MOD_4000 + + + + yet to be defined + + + + + + .. py:attribute:: RFFilter.LO_FREQ_MOD_2500 + + + + yet to be defined + + + + + +RFInLoExportEnabled +------------------- + +.. py:class:: RFInLoExportEnabled + + .. py:attribute:: RFInLoExportEnabled.UNSPECIFIED + + + + The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may + + + + + + .. py:attribute:: RFInLoExportEnabled.DISABLE + + + + The RF In local oscillator signal is not present at the front panel LO OUT connector. + + + + + + .. py:attribute:: RFInLoExportEnabled.MANUAL + + + + .. py:attribute:: RFInLoExportEnabled.ENABLE + + + + The RF In local oscillator signal is present at the front panel LO OUT connector. + + + + + + .. py:attribute:: RFInLoExportEnabled.SCRIPT_TRIGGER + + + +ReferenceClockExportOutputTerminal +---------------------------------- + +.. py:class:: ReferenceClockExportOutputTerminal + + .. py:attribute:: ReferenceClockExportOutputTerminal.DO_NOT_EXPORT + + + + The Reference Clock signal is not exported. + + + + + + .. py:attribute:: ReferenceClockExportOutputTerminal.REF_OUT + + + + Exports the Reference Clock signal to the REF OUT connector of the device. + + + + + + .. py:attribute:: ReferenceClockExportOutputTerminal.REF_OUT2 + + + + Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. + + + + + + .. py:attribute:: ReferenceClockExportOutputTerminal.CLK_OUT + + + + Exports the Reference Clock signal to the CLK OUT connector of the device. + + + + + +ReferenceClockExportedRate +-------------------------- + +.. py:class:: ReferenceClockExportedRate + + .. py:attribute:: ReferenceClockExportedRate._10mhz + + + + Uses a 10MHz Reference Clock rate. + + + + + + .. py:attribute:: ReferenceClockExportedRate._100mhz + + + + Uses a 100MHz Reference Clock rate. + + + + + + .. py:attribute:: ReferenceClockExportedRate._1ghz + + + + Uses a 1GHz Reference Clock rate. + + + + + +ReferenceClockRate +------------------ + +.. py:class:: ReferenceClockRate + + .. py:attribute:: ReferenceClockRate.AUTO + + + + Uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if the device supports it. + + + + + + .. py:attribute:: ReferenceClockRate._10mhz + + + + Uses a 10MHz Reference Clock rate. + + + + + +ReferenceClockSource +-------------------- + +.. py:class:: ReferenceClockSource + + .. py:attribute:: ReferenceClockSource.ONBOARD_CLOCK + + + + Uses the onboard Reference Clock as the clock source. + + + + + + .. py:attribute:: ReferenceClockSource.REF_IN + + + + Uses the clock signal present at the front panel REF IN connector as the Reference Clock source. + + + + + + .. py:attribute:: ReferenceClockSource.PXI_CLK + + + + Uses the PXI_CLK signal, which is present on the PXI backplane, as the Reference Clock source. + + + + + + .. py:attribute:: ReferenceClockSource.CLK_IN + + + + Uses the clock signal present at the front panel CLK IN connector as the Reference Clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655. + + + + + + .. py:attribute:: ReferenceClockSource.REF_IN_2 + + + + This value is not valid on any supported devices. + + + + + + .. py:attribute:: ReferenceClockSource.PXI_CLK_MASTER + + + + This value is valid on only the PXIe-5831/5832 with PXIe-5653.**PXIe-5831/5832 with PXIe-5653—**NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use %enum_value{reference clock source.pxi clk str} as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. + + + + + +RelativeTo +---------- + +.. py:class:: RelativeTo + + .. py:attribute:: RelativeTo.CURRENT_POSITION + + + + The reference position is relative to the current position. + + + + + + .. py:attribute:: RelativeTo.START_OF_WAVEFORM + + + + The reference position is relative to the start of the waveform. + + + + + +ResetOptions +------------ + +.. py:class:: ResetOptions + + .. py:attribute:: ResetOptions.SKIP_WAVEFORMS + + + + NI-RFSG skips resetting the waveform configurations. + + + + + + .. py:attribute:: ResetOptions.MANUAL + + + + .. py:attribute:: ResetOptions.SKIP_DEEMBEDDING_TABLES + + + + NI-RFSG skips resetting the de-embedding tables. + + + + + + .. py:attribute:: ResetOptions.SCRIPT_TRIGGER + + + + .. py:attribute:: ResetOptions.SKIP_SCRIPTS + + + + NI-RFSG skips resetting the scripts. + + + + + + .. py:attribute:: ResetOptions.MARKER_EVENT + + + + .. py:attribute:: ResetOptions.SKIP_NONE + + + + NI-RFSG resets all configurations. + + + + + + .. py:attribute:: ResetOptions.SELF_CAL_IMAGE_SUPPRESSION + + + +ScriptTrigDigEdgeEdge +--------------------- + +.. py:class:: ScriptTrigDigEdgeEdge + + .. py:attribute:: ScriptTrigDigEdgeEdge.RISING + + + + Asserts the trigger when the signal transitions from low level to high level. + + + + + + .. py:attribute:: ScriptTrigDigEdgeEdge.FALLING + + + + Asserts the trigger when the signal transitions from high level to low level. + + + + + +ScriptTrigDigEdgeSource +----------------------- + +.. py:class:: ScriptTrigDigEdgeSource + + .. py:attribute:: ScriptTrigDigEdgeSource.PFI0 + + + + The trigger is received on PFI 0. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PFI1 + + + + The trigger is received on PFI 1. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PFI2 + + + + The trigger is received on PFI 2. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PFI3 + + + + The trigger is received on PFI 3. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG0 + + + + The trigger is received on PXI trigger line 0. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG1 + + + + The trigger is received on PXI trigger line 1. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG2 + + + + The trigger is received on PXI trigger line 2. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG3 + + + + The trigger is received on PXI trigger line 3. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG4 + + + + The trigger is received on PXI trigger line 4. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG5 + + + + The trigger is received on PXI trigger line 5. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG6 + + + + The trigger is received on PXI trigger line 6. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_TRIG7 + + + + The trigger is received on PXI trigger line 7. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXI_STAR + + + + The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PXIE_DSTARB + + + + The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/ + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.PULSE_IN + + + + The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigEdgeSource.SYNC_SCRIPT_TRIGGER + + + + The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646. + + + + + +ScriptTrigDigLevelActiveLevel +----------------------------- + +.. py:class:: ScriptTrigDigLevelActiveLevel + + .. py:attribute:: ScriptTrigDigLevelActiveLevel.HIGH + + + + Trigger when the digital trigger signal is high. + + + + + + .. py:attribute:: ScriptTrigDigLevelActiveLevel.LOW + + + + Trigger when the digital trigger signal is low. + + + + + +ScriptTrigDigLevelSource +------------------------ + +.. py:class:: ScriptTrigDigLevelSource + + .. py:attribute:: ScriptTrigDigLevelSource.PFI0 + + + + The trigger is received on PFI 0. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PFI1 + + + + The trigger is received on PFI 1. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PFI2 + + + + The trigger is received on PFI 2. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PFI3 + + + + The trigger is received on PFI 3. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG0 + + + + The trigger is received on PXI trigger line 0. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG1 + + + + The trigger is received on PXI trigger line 1. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG2 + + + + The trigger is received on PXI trigger line 2. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG3 + + + + The trigger is received on PXI trigger line 3. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG4 + + + + The trigger is received on PXI trigger line 4. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG5 + + + + The trigger is received on PXI trigger line 5. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG6 + + + + The trigger is received on PXI trigger line 6. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_TRIG7 + + + + The trigger is received on PXI trigger line 7. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXI_STAR + + + + The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PXIE_DSTARB + + + + The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/ + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.PULSE_IN + + + + The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigDigLevelSource.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +ScriptTrigExportOutputTerm +-------------------------- + +.. py:class:: ScriptTrigExportOutputTerm + + .. py:attribute:: ScriptTrigExportOutputTerm.DO_NOT_EXPORT + + + + The signal is not exported. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PFI0 + + + + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PFI1 + + + + The signal is exported to the PFI 1 connector. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PFI4 + + + + The signal is exported to the PFI 4 connector. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PFI5 + + + + The signal is exported to the PFI 5 connector. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXI_TRIG0 + + + + The signal is exported to the PXI trigger line 0. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXI_TRIG1 + + + + The signal is exported to the PXI trigger line 1. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXI_TRIG2 + + + + The signal is exported to the PXI trigger line 2. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXI_TRIG3 + + + + The signal is exported to the PXI trigger line 3. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXI_TRIG4 + + + + The signal is exported to the PXI trigger line 4. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXI_TRIG5 + + + + The signal is exported to the PXI trigger line 5. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXI_TRIG6 + + + + The signal is exported to the PXI trigger line 6. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.PXIE_DSTARC + + + + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/ + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: ScriptTrigExportOutputTerm.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +ScriptTrigType +-------------- + +.. py:class:: ScriptTrigType + + .. py:attribute:: ScriptTrigType.NONE + + + + No trigger is configured. Signal generation starts immediately. + + + + + + .. py:attribute:: ScriptTrigType.DIGITAL_EDGE + + + + The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the %property{digital edge start trigger source} property, and the active edge is specified with the %property{digital edge start trigger edge} property. + + + + + + .. py:attribute:: ScriptTrigType.DIGITAL_LEVEL + + + + The data operation does not start until the digital level is detected. The source of the digital level is specified in the %property{digital level script trigger source} property, and the active level is specified in the %property{digital level script trigger active level} property. + + + + + + .. py:attribute:: ScriptTrigType.SOFTWARE + + + + The data operation does not start until a software trigger occurs. You can create a software event by calling the %method{send software edge trigger} method. + + + + + +SelfCalibrateRange +------------------ + +.. py:class:: SelfCalibrateRange + + .. py:attribute:: SelfCalibrateRange.IMAGE_SUPPRESSION + + + + Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. + + + + + + .. py:attribute:: SelfCalibrateRange.LO_SELF_CAL + + + + Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. + + + + + + .. py:attribute:: SelfCalibrateRange.OMIT_NONE + + + + No calibration steps are omitted. + + + + + + .. py:attribute:: SelfCalibrateRange.POWER_LEVEL_ACCURACY + + + + Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. + + + + + + .. py:attribute:: SelfCalibrateRange.RESIDUAL_LO_POWER + + + + Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. + + + + + + .. py:attribute:: SelfCalibrateRange.SYNTHESIZER_ALIGNMENT + + + + Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. + + + + + +SignalIdentifier +---------------- + +.. py:class:: SignalIdentifier + + .. py:attribute:: SignalIdentifier.MARKER_EVENT0 + + + + Specifies Marker 0. + + + + + + .. py:attribute:: SignalIdentifier.MARKER_EVENT1 + + + + Specifies Marker 1. + + + + + + .. py:attribute:: SignalIdentifier.MARKER_EVENT2 + + + + Specifies Marker 2. + + + + + + .. py:attribute:: SignalIdentifier.MARKER_EVENT3 + + + + Specifies Marker 3. + + + + + + .. py:attribute:: SignalIdentifier.SCRIPT_TRIGGER0 + + + + Specifies Script Trigger 0. + + + + + + .. py:attribute:: SignalIdentifier.SCRIPT_TRIGGER1 + + + + Specifies Script Trigger 1. + + + + + + .. py:attribute:: SignalIdentifier.SCRIPT_TRIGGER2 + + + + Specifies Script Trigger 2. + + + + + + .. py:attribute:: SignalIdentifier.SCRIPT_TRIGGER3 + + + + Specifies Script Trigger 3. + + + + + +SparameterOrientation +--------------------- + +.. py:class:: SparameterOrientation + + .. py:attribute:: SparameterOrientation.PORT1 + + + + Port 1 of the S2P is oriented towards the DUT port. + + + + + + .. py:attribute:: SparameterOrientation.PORT2 + + + + Port 2 of the S2P is oriented towards the DUT port. + + + + + +StartTrigDigEdgeEdge +-------------------- + +.. py:class:: StartTrigDigEdgeEdge + + .. py:attribute:: StartTrigDigEdgeEdge.RISING + + + + Occurs when the signal transitions from low level to high level. + + + + + + .. py:attribute:: StartTrigDigEdgeEdge.FALLING + + + + Occurs when the signal transitions from high level to low level. + + + + + +StartTrigDigEdgeSource +---------------------- + +.. py:class:: StartTrigDigEdgeSource + + .. py:attribute:: StartTrigDigEdgeSource.PFI0 + + + + The trigger is received on PFI 0. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PFI1 + + + + The trigger is received on PFI 1. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PFI2 + + + + The trigger is received on PFI 2. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PFI3 + + + + The trigger is received on PFI 3. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG0 + + + + The trigger is received on PXI trigger line 0. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG1 + + + + The trigger is received on PXI trigger line 1. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG2 + + + + The trigger is received on PXI trigger line 2. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG3 + + + + The trigger is received on PXI trigger line 3. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG4 + + + + The trigger is received on PXI trigger line 4. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG5 + + + + The trigger is received on PXI trigger line 5. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG6 + + + + The trigger is received on PXI trigger line 6. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_TRIG7 + + + + The trigger is received on PXI trigger line 7. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXI_STAR + + + + The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.PXIE_DSTARB + + + + The trigger is received on the PXI DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.TRIG_IN + + + + The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigDigEdgeSource.SYNC_START_TRIGGER + + + + The trigger is received on the Sync Start trigger line. This value is valid on only the PXIe-5644/5645/5646. + + + + + +StartTrigExportOutputTerm +------------------------- + +.. py:class:: StartTrigExportOutputTerm + + .. py:attribute:: StartTrigExportOutputTerm.DO_NOT_EXPORT + + + + The signal is not exported. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PFI0 + + + + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PFI1 + + + + The signal is exported to the PFI 1 connector. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PFI4 + + + + The signal is exported to the PFI 4 connector. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PFI5 + + + + The signal is exported to the PFI 5 connector. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXI_TRIG0 + + + + The signal is exported to the PXI trigger line 0. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXI_TRIG1 + + + + The signal is exported to the PXI trigger line 1. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXI_TRIG2 + + + + The signal is exported to the PXI trigger line 2. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXI_TRIG3 + + + + The signal is exported to the PXI trigger line 3. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXI_TRIG4 + + + + The signal is exported to the PXI trigger line 4. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXI_TRIG5 + + + + The signal is exported to the PXI trigger line 5. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXI_TRIG6 + + + + The signal is exported to the PXI trigger line 6. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.PXIE_DSTARC + + + + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.TRIG_OUT + + + + The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartTrigExportOutputTerm.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +StartTrigType +------------- + +.. py:class:: StartTrigType + + .. py:attribute:: StartTrigType.NONE + + + + No trigger is configured. + + + + + + .. py:attribute:: StartTrigType.DIGITAL_EDGE + + + + The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the %property{digital edge start trigger source} property, and the active edge is specified in the %property{digital edge start trigger edge} property. + + + + + + .. py:attribute:: StartTrigType.SOFTWARE + + + + The data operation does not start until a software event occurs. You may create a software trigger by calling the %method{send software edge trigger} method. + + + + + + .. py:attribute:: StartTrigType.P2P_ENDPOINT_FULLNESS + + + + The data operation does not start until the endpoint reaches the threshold specified in the %property{p2p endpoint fullness start trigger level} property. + + + + + +StartedEventExportOutputTerm +---------------------------- + +.. py:class:: StartedEventExportOutputTerm + + .. py:attribute:: StartedEventExportOutputTerm.DO_NOT_EXPORT + + + + The signal is not exported. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PFI0 + + + + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PFI1 + + + + The signal is exported to the PFI 1 connector. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PFI4 + + + + The signal is exported to the PFI 4 connector. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PFI5 + + + + The signal is exported to the PFI 5 connector. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXI_TRIG0 + + + + The signal is exported to the PXI trigger line 0. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXI_TRIG1 + + + + The signal is exported to the PXI trigger line 1. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXI_TRIG2 + + + + The signal is exported to the PXI trigger line 2. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXI_TRIG3 + + + + The signal is exported to the PXI trigger line 3. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXI_TRIG4 + + + + The signal is exported to the PXI trigger line 4. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXI_TRIG5 + + + + The signal is exported to the PXI trigger line 5. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXI_TRIG6 + + + + The signal is exported to the PXI trigger line 6. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.PXIE_DSTARC + + + + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO0 + + + + The trigger is received on PFI0 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO1 + + + + The trigger is received on PFI1 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO2 + + + + The trigger is received on PFI2 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO3 + + + + The trigger is received on PFI3 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO4 + + + + The trigger is received on PFI4 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO5 + + + + The trigger is received on PFI5 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO6 + + + + The trigger is received on PFI6 from the front panel DIO terminal. + + + + + + .. py:attribute:: StartedEventExportOutputTerm.DIO7 + + + + The trigger is received on PFI7 from the front panel DIO terminal. + + + + + +StepsToOmit +----------- + +.. py:class:: StepsToOmit + + .. py:attribute:: StepsToOmit.DEEMBEDDING_TABLES + + + + Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840. + + + + + + .. py:attribute:: StepsToOmit.NONE + + + + No step is omitted during reset. + + + + + + .. py:attribute:: StepsToOmit.ROUTES + + + + Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset. + + + + + + .. py:attribute:: StepsToOmit.SCRIPTS + + + + Omits clearing scripts. + + + + + + .. py:attribute:: StepsToOmit.WAVEFORMS + + + + Omits clearing waveforms. + + + + + +Trigger +------- + +.. py:class:: Trigger + + .. py:attribute:: Trigger.SCRIPT + + + + Specifies the Script Trigger. + + + + + + .. py:attribute:: Trigger.START + + + + Specifies the Start Trigger. + + + + + +TriggerIdentifier +----------------- + +.. py:class:: TriggerIdentifier + + .. py:attribute:: TriggerIdentifier.TRIGGER0 + + + + Specifies Script Trigger 0. + + + + + + .. py:attribute:: TriggerIdentifier.TRIGGER1 + + + + Specifies Script Trigger 1. + + + + + + .. py:attribute:: TriggerIdentifier.TRIGGER2 + + + + Specifies Script Trigger 2. + + + + + + .. py:attribute:: TriggerIdentifier.TRIGGER3 + + + + Specifies Script Trigger 3. + + + + + +UpconverterFrequencyOffsetMode +------------------------------ + +.. py:class:: UpconverterFrequencyOffsetMode + + .. py:attribute:: UpconverterFrequencyOffsetMode.AUTO + + + + NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the %property{signal bandwidth} property has been set and can be avoided. + + + + + + .. py:attribute:: UpconverterFrequencyOffsetMode.AUTOMATIC + + + + .. py:attribute:: UpconverterFrequencyOffsetMode.ENABLE + + + + NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the %property{signal bandwidth} property has been set and can be avoided. NI-RFSG returns an error if the %property{signal bandwidth} property has not been set, or if the signal bandwidth is too large. + + + + + + .. py:attribute:: UpconverterFrequencyOffsetMode.SCRIPT_TRIGGER + + + + .. py:attribute:: UpconverterFrequencyOffsetMode.USER_DEFINED + + + + NI-RFSG uses the offset that you specified with the %property{upconverter frequency offset} or %property{upconverter center frequency} properties. + + + + + +WriteWaveformBurstDetection +--------------------------- + +.. py:class:: WriteWaveformBurstDetection + + .. py:attribute:: WriteWaveformBurstDetection.DISABLE + + + + Burst detection is disabled. + + + + + + .. py:attribute:: WriteWaveformBurstDetection.ENABLE + + + + Burst detection is enabled. + + + + + +WriteWaveformBurstDetectionMode +------------------------------- + +.. py:class:: WriteWaveformBurstDetectionMode + + .. py:attribute:: WriteWaveformBurstDetectionMode.AUTO + + + + NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform. + + + + + + .. py:attribute:: WriteWaveformBurstDetectionMode.MANUAL + + + + User sets the burst detection parameters. + + + + + +WriteWaveformNormalization +-------------------------- + +.. py:class:: WriteWaveformNormalization + + .. py:attribute:: WriteWaveformNormalization.DISABLE + + + + Disables normalization on the waveform. + + + + + + .. py:attribute:: WriteWaveformNormalization.ENABLE + + + + Enables normalization on a waveform to transform the waveform data so that its maximum is 1.00 and its minimum is -1.00 + + + + + +YigMainCoilDrive +---------------- + +.. py:class:: YigMainCoilDrive + + .. py:attribute:: YigMainCoilDrive.MANUAL + + + + Adjusts the YIG main coil for an underdamped response. + + + + + + .. py:attribute:: YigMainCoilDrive.FAST + + + + Adjusts the YIG main coil for an overdamped response. + + + + + + + diff --git a/docs/nirfsg/errors.rst b/docs/nirfsg/errors.rst new file mode 100644 index 0000000000..1ff5f65ae3 --- /dev/null +++ b/docs/nirfsg/errors.rst @@ -0,0 +1,90 @@ +Exceptions and Warnings +======================= + +Error +----- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: Error + + Base exception type that all NI-RFSG exceptions derive from + + +DriverError +----------- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: DriverError + + An error originating from the NI-RFSG driver + + +UnsupportedConfigurationError +----------------------------- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: UnsupportedConfigurationError + + An error due to using this module in an usupported platform. + +DriverNotInstalledError +----------------------- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: DriverNotInstalledError + + An error due to using this module without the driver runtime installed. + +DriverTooOldError +----------------- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: DriverTooOldError + + An error due to using this module with an older version of the NI-RFSG driver runtime. + +DriverTooNewError +----------------- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: DriverTooNewError + + An error due to the NI-RFSG driver runtime being too new for this module. + +InvalidRepeatedCapabilityError +------------------------------ + + .. py:currentmodule:: nirfsg.errors + + .. exception:: InvalidRepeatedCapabilityError + + An error due to an invalid character in a repeated capability + + +SelfTestError +------------- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: SelfTestError + + An error due to a failed self-test + + +DriverWarning +------------- + + .. py:currentmodule:: nirfsg.errors + + .. exception:: DriverWarning + + A warning originating from the NI-RFSG driver + + + diff --git a/docs/nirfsg/examples.rst b/docs/nirfsg/examples.rst new file mode 100644 index 0000000000..19de74178a --- /dev/null +++ b/docs/nirfsg/examples.rst @@ -0,0 +1,5 @@ +Examples +======== + +`You can download all nirfsg examples for latest version here `_ + diff --git a/docs/nirfsg/index.rst b/docs/nirfsg/index.rst new file mode 100644 index 0000000000..2ab3c1f3d8 --- /dev/null +++ b/docs/nirfsg/index.rst @@ -0,0 +1,31 @@ + +NI-RFSG Python API Documentation +================================ + +.. include:: about_nirfsg.inc + +.. include:: ../_static/contributing.inc + +.. include:: ../_static/support.inc + +.. toctree:: + :maxdepth: 3 + :caption: Documentation + + nirfsg + +Additional Documentation +------------------------ + +Refer to your driver documentation for device-specific information and detailed API documentation. + +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. + +.. include:: ../_static/license.inc + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/docs/nirfsg/installation.inc b/docs/nirfsg/installation.inc new file mode 100644 index 0000000000..d0a7acbbf3 --- /dev/null +++ b/docs/nirfsg/installation.inc @@ -0,0 +1,13 @@ + +.. _nirfsg_installation-section: + +Installation +------------ + +As a prerequisite to using the **nirfsg** module, you must install the NI-RFSG runtime on your system. Visit `ni.com/downloads `_ to download the driver runtime for your devices. + +The nimi-python modules (i.e. for **NI-RFSG**) can be installed with `pip `_:: + + $ python -m pip install nirfsg + + diff --git a/docs/nirfsg/nirfsg.rst b/docs/nirfsg/nirfsg.rst new file mode 100644 index 0000000000..17ca31595a --- /dev/null +++ b/docs/nirfsg/nirfsg.rst @@ -0,0 +1,9 @@ +nirfsg module +============= + +.. include:: installation.inc + +.. include:: ../_static/nirfsg_usage.inc + +.. include:: toc.inc + diff --git a/docs/nirfsg/rep_caps.rst b/docs/nirfsg/rep_caps.rst new file mode 100644 index 0000000000..14ba2b49e8 --- /dev/null +++ b/docs/nirfsg/rep_caps.rst @@ -0,0 +1,116 @@ +.. py:module:: nirfsg + :noindex: + +.. py:currentmodule:: nirfsg.Session + +.. role:: c(code) + :language: c + +.. role:: python(code) + :language: python + +Repeated Capabilities +===================== + + Repeated capabilities attributes are used to set the `channel_string` parameter to the + underlying driver function call. This can be the actual function based on the :py:class:`Session` + method being called, or it can be the appropriate Get/Set Attribute function, such as :c:`niRFSG_SetAttributeViInt32()`. + + Repeated capabilities attributes use the indexing operator :python:`[]` to indicate the repeated capabilities. + The parameter can be a string, list, tuple, or slice (range). Each element of those can be a string or + an integer. If it is a string, you can indicate a range using the same format as the driver: :python:`'0-2'` or + :python:`'0:2'` + + Some repeated capabilities use a prefix before the number and this is optional + +markers +------- + + .. py:attribute:: nirfsg.Session.markers[] + + If no prefix is added to the items in the parameter, the correct prefix will be added when + the driver function call is made. + + .. code:: python + + session.markers['0-2'].channel_enabled = True + + passes a string of :python:`'marker0, marker1, marker2'` to the set attribute function. + + If an invalid repeated capability is passed to the driver, the driver will return an error. + + You can also explicitly use the prefix as part of the parameter, but it must be the correct prefix + for the specific repeated capability. + + .. code:: python + + session.markers['marker0-marker2'].channel_enabled = True + + passes a string of :python:`'marker0, marker1, marker2'` to the set attribute function. + + +script_triggers +--------------- + + .. py:attribute:: nirfsg.Session.script_triggers[] + + If no prefix is added to the items in the parameter, the correct prefix will be added when + the driver function call is made. + + .. code:: python + + session.script_triggers['0-2'].channel_enabled = True + + passes a string of :python:`'scripttrigger0, scripttrigger1, scripttrigger2'` to the set attribute function. + + If an invalid repeated capability is passed to the driver, the driver will return an error. + + You can also explicitly use the prefix as part of the parameter, but it must be the correct prefix + for the specific repeated capability. + + .. code:: python + + session.script_triggers['scripttrigger0-scripttrigger2'].channel_enabled = True + + passes a string of :python:`'scripttrigger0, scripttrigger1, scripttrigger2'` to the set attribute function. + + +waveform +-------- + + .. py:attribute:: nirfsg.Session.waveform[] + + If no prefix is added to the items in the parameter, the correct prefix will be added when + the driver function call is made. + + .. code:: python + + session.waveform['0-2'].channel_enabled = True + + passes a string of :python:`'waveform::0, waveform::1, waveform::2'` to the set attribute function. + + If an invalid repeated capability is passed to the driver, the driver will return an error. + + You can also explicitly use the prefix as part of the parameter, but it must be the correct prefix + for the specific repeated capability. + + .. code:: python + + session.waveform['waveform::0-waveform::2'].channel_enabled = True + + passes a string of :python:`'waveform::0, waveform::1, waveform::2'` to the set attribute function. + + +deembedding_port +---------------- + + .. py:attribute:: nirfsg.Session.deembedding_port[] + + .. code:: python + + session.deembedding_port['0-2'].channel_enabled = True + + passes a string of :python:`'0, 1, 2'` to the set attribute function. + + + diff --git a/docs/nirfsg/status.inc b/docs/nirfsg/status.inc new file mode 100644 index 0000000000..6a65381d63 --- /dev/null +++ b/docs/nirfsg/status.inc @@ -0,0 +1,46 @@ + +NI-RFSG Python API Status +------------------------- + ++-------------------------------+-----------------------+ +| NI-RFSG (nirfsg) | | ++===============================+=======================+ +| Driver Version Tested Against | 2023 Q1.1 | ++-------------------------------+-----------------------+ +| PyPI Version | |nirfsgLatestVersion| | ++-------------------------------+-----------------------+ +| Supported Python Version | |nirfsgPythonVersion| | ++-------------------------------+-----------------------+ +| Documentation | |nirfsgDocs| | ++-------------------------------+-----------------------+ +| Open Issues | |nirfsgOpenIssues| | ++-------------------------------+-----------------------+ +| Open Pull Requests | |nirfsgOpenPRs| | ++-------------------------------+-----------------------+ + + +.. |nirfsgLatestVersion| image:: http://img.shields.io/pypi/v/nirfsg.svg + :alt: Latest NI-RFSG Version + :target: http://pypi.python.org/pypi/nirfsg + + +.. |nirfsgPythonVersion| image:: http://img.shields.io/pypi/pyversions/nirfsg.svg + :alt: NI-RFSG supported Python versions + :target: http://pypi.python.org/pypi/nirfsg + + +.. |nirfsgDocs| image:: https://readthedocs.org/projects/nirfsg/badge/?version=latest + :alt: NI-RFSG Python API Documentation Status + :target: https://nirfsg.readthedocs.io/en/latest + + +.. |nirfsgOpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python/nirfsg.svg + :alt: Open Issues + Pull Requests for NI-RFSG + :target: https://github.com/ni/nimi-python/issues?q=is%3Aopen+is%3Aissue+label%3Anirfsg + + +.. |nirfsgOpenPRs| image:: https://img.shields.io/github/issues-pr/ni/nimi-python/nirfsg.svg + :alt: Pull Requests for NI-RFSG + :target: https://github.com/ni/nimi-python/pulls?q=is%3Aopen+is%3Aissue+label%3Anirfsg + + diff --git a/docs/nirfsg/toc.inc b/docs/nirfsg/toc.inc new file mode 100644 index 0000000000..baf1751097 --- /dev/null +++ b/docs/nirfsg/toc.inc @@ -0,0 +1,11 @@ +API Reference +-------------- + +.. toctree:: + + class + rep_caps + enums + errors + examples + diff --git a/generated/nirfsg/README.rst b/generated/nirfsg/README.rst new file mode 100644 index 0000000000..d2209f5eb8 --- /dev/null +++ b/generated/nirfsg/README.rst @@ -0,0 +1,168 @@ +Overall Status +-------------- + ++----------------------+------------------------------------------------------------------------------------------------------------------------------------+ +| master branch status | |BuildStatus| |MITLicense| |CoverageStatus| | ++----------------------+------------------------------------------------------------------------------------------------------------------------------------+ +| GitHub status | |OpenIssues| |OpenPullRequests| | ++----------------------+------------------------------------------------------------------------------------------------------------------------------------+ + +=========== ============================================================================================================================ +Info Python bindings for NI Modular Instrument drivers. See `GitHub `_ for the latest source. +Author NI +=========== ============================================================================================================================ + +.. |BuildStatus| image:: https://api.travis-ci.com/ni/nimi-python.svg + :alt: Build Status - master branch + :target: https://travis-ci.org/ni/nimi-python + +.. |MITLicense| image:: https://img.shields.io/badge/License-MIT-yellow.svg + :alt: MIT License + :target: https://opensource.org/licenses/MIT + +.. |CoverageStatus| image:: https://codecov.io/github/ni/nimi-python/graph/badge.svg + :alt: Test Coverage - master branch + :target: https://codecov.io/github/ni/nimi-python + +.. |OpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python.svg + :alt: Open Issues + Pull Requests + :target: https://github.com/ni/nimi-python/issues + +.. |OpenPullRequests| image:: https://img.shields.io/github/issues-pr/ni/nimi-python.svg + :alt: Open Pull Requests + :target: https://github.com/ni/nimi-python/pulls + + +.. _about-section: + +About +===== + +The **nirfsg** module provides a Python API for NI-RFSG. The code is maintained in the Open Source repository for `nimi-python `_. + +Support Policy +-------------- +**nirfsg** supports all the Operating Systems supported by NI-RFSG. + +It follows `Python Software Foundation `_ support policy for different versions of CPython. + + +NI-RFSG Python API Status +------------------------- + ++-------------------------------+-----------------------+ +| NI-RFSG (nirfsg) | | ++===============================+=======================+ +| Driver Version Tested Against | 2023 Q1.1 | ++-------------------------------+-----------------------+ +| PyPI Version | |nirfsgLatestVersion| | ++-------------------------------+-----------------------+ +| Supported Python Version | |nirfsgPythonVersion| | ++-------------------------------+-----------------------+ +| Documentation | |nirfsgDocs| | ++-------------------------------+-----------------------+ +| Open Issues | |nirfsgOpenIssues| | ++-------------------------------+-----------------------+ +| Open Pull Requests | |nirfsgOpenPRs| | ++-------------------------------+-----------------------+ + + +.. |nirfsgLatestVersion| image:: http://img.shields.io/pypi/v/nirfsg.svg + :alt: Latest NI-RFSG Version + :target: http://pypi.python.org/pypi/nirfsg + + +.. |nirfsgPythonVersion| image:: http://img.shields.io/pypi/pyversions/nirfsg.svg + :alt: NI-RFSG supported Python versions + :target: http://pypi.python.org/pypi/nirfsg + + +.. |nirfsgDocs| image:: https://readthedocs.org/projects/nirfsg/badge/?version=latest + :alt: NI-RFSG Python API Documentation Status + :target: https://nirfsg.readthedocs.io/en/latest + + +.. |nirfsgOpenIssues| image:: https://img.shields.io/github/issues/ni/nimi-python/nirfsg.svg + :alt: Open Issues + Pull Requests for NI-RFSG + :target: https://github.com/ni/nimi-python/issues?q=is%3Aopen+is%3Aissue+label%3Anirfsg + + +.. |nirfsgOpenPRs| image:: https://img.shields.io/github/issues-pr/ni/nimi-python/nirfsg.svg + :alt: Pull Requests for NI-RFSG + :target: https://github.com/ni/nimi-python/pulls?q=is%3Aopen+is%3Aissue+label%3Anirfsg + + + +.. _nirfsg_installation-section: + +Installation +------------ + +As a prerequisite to using the **nirfsg** module, you must install the NI-RFSG runtime on your system. Visit `ni.com/downloads `_ to download the driver runtime for your devices. + +The nimi-python modules (i.e. for **NI-RFSG**) can be installed with `pip `_:: + + $ python -m pip install nirfsg + + +Contributing +============ + +We welcome contributions! You can clone the project repository, build it, and install it by `following these instructions `_. + +Usage +------ + +The following is a basic example of using the **nirfsg** module to open a session to a Function Generator and generate a sine wave for 5 seconds. + +.. code-block:: python + + import nirfsg + with nirfsg.Session('SwitchExecutiveExample') as session: + session.connect('DIOToUUT') + +`Other usage examples can be found on GitHub. `_ + +.. _support-section: + +Support / Feedback +================== + +For support specific to the Python API, follow the processs in `Bugs / Feature Requests`_. +For support with hardware, the driver runtime or any other questions not specific to the Python API, please visit `NI Community Forums `_. + +.. _bugs-section: + +Bugs / Feature Requests +======================= + +To report a bug or submit a feature request specific to Python API, please use the +`GitHub issues page `_. + +Fill in the issue template as completely as possible and we will respond as soon +as we can. + + +.. _documentation-section: + +Documentation +============= + +Documentation is available `here `_. + + +.. _license-section: + +License +======= + +**nimi-python** is licensed under an MIT-style license (`see +LICENSE `_). +Other incorporated projects may be licensed under different licenses. All +licenses allow for non-commercial and commercial use. + + +**gRPC Features** + +For driver APIs that support it, passing a GrpcSessionOptions instance as a parameter to Session.__init__() is +subject to the NI General Purpose EULA (`see NILICENSE `_). \ No newline at end of file diff --git a/generated/nirfsg/nirfsg/VERSION b/generated/nirfsg/nirfsg/VERSION new file mode 100644 index 0000000000..2524fcf42a --- /dev/null +++ b/generated/nirfsg/nirfsg/VERSION @@ -0,0 +1,2 @@ +1.4.8.dev0 + diff --git a/generated/nirfsg/nirfsg/__init__.py b/generated/nirfsg/nirfsg/__init__.py new file mode 100644 index 0000000000..b46ee49fc9 --- /dev/null +++ b/generated/nirfsg/nirfsg/__init__.py @@ -0,0 +1,107 @@ +# -*- coding: utf-8 -*- +# This file was generated + + +__version__ = '1.4.8.dev0' + +from nirfsg.enums import * # noqa: F403,F401,H303 +from nirfsg.errors import DriverWarning # noqa: F401 +from nirfsg.errors import Error # noqa: F401 +from nirfsg.session import Session # noqa: F401 + + +def get_diagnostic_information(): + '''Get diagnostic information about the system state that is suitable for printing or logging + + returns: dict + + note: Python bitness may be incorrect when running in a virtual environment + ''' + import importlib.metadata + import os + import platform + import struct + import sys + + def is_python_64bit(): + return (struct.calcsize("P") == 8) + + def is_os_64bit(): + return platform.machine().endswith('64') + + def is_venv(): + return 'VIRTUAL_ENV' in os.environ + + info = {} + info['os'] = {} + info['python'] = {} + info['driver'] = {} + info['module'] = {} + if platform.system() == 'Windows': + try: + import winreg as winreg + except ImportError: + import _winreg as winreg + + os_name = 'Windows' + try: + driver_version_key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\National Instruments\NI-RFSG\CurrentVersion") + driver_version = winreg.QueryValueEx(driver_version_key, "Version")[0] + except WindowsError: + driver_version = 'Unknown' + elif platform.system() == 'Linux': + os_name = 'Linux' + driver_version = 'Unknown' + else: + raise SystemError('Unsupported platform: {}'.format(platform.system())) + + if sys.version_info[1] >= 10: + installed_packages_names = [ + name + for name_list in importlib.metadata.packages_distributions().values() + for name in name_list + ] + installed_packages_names = set(installed_packages_names) + installed_packages_list = [ + {'name': name, 'version': importlib.metadata.distribution(name).version} + for name in sorted(installed_packages_names) + ] + else: + import pkg_resources + installed_packages = pkg_resources.working_set + installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages] + + info['os']['name'] = os_name + info['os']['version'] = platform.version() + info['os']['bits'] = '64' if is_os_64bit() else '32' + info['driver']['name'] = "NI-RFSG" + info['driver']['version'] = driver_version + info['module']['name'] = 'nirfsg' + info['module']['version'] = "1.4.8.dev0" + info['python']['version'] = sys.version + info['python']['bits'] = '64' if is_python_64bit() else '32' + info['python']['is_venv'] = is_venv() + info['python']['packages'] = installed_packages_list + + return info + + +def print_diagnostic_information(): + '''Print diagnostic information in a format suitable for issue report + + note: Python bitness may be incorrect when running in a virtual environment + ''' + info = get_diagnostic_information() + + row_format = ' {:<10} {}' + for type in ['OS', 'Driver', 'Module', 'Python']: + typename = type.lower() + print(type + ':') + for item in info[typename]: + if item != 'packages': + print(row_format.format(item.title() + ':', info[typename][item])) + print(' Installed Packages:') + for p in info['python']['packages']: + print((' ' * 8) + p['name'] + '==' + p['version']) + + return info diff --git a/generated/nirfsg/nirfsg/_attributes.py b/generated/nirfsg/nirfsg/_attributes.py new file mode 100644 index 0000000000..03783cd31f --- /dev/null +++ b/generated/nirfsg/nirfsg/_attributes.py @@ -0,0 +1,149 @@ +# -*- coding: utf-8 -*- +# This file was generated +import nirfsg._converters as _converters +import nirfsg.errors as errors + +import hightime + + +class Attribute(object): + '''Base class for all typed attributes.''' + + def __init__(self, attribute_id): + self._attribute_id = attribute_id + + +class AttributeViInt32(Attribute): + + def __get__(self, session, session_type): + return session._get_attribute_vi_int32(self._attribute_id) + + def __set__(self, session, value): + session._set_attribute_vi_int32(self._attribute_id, value) + + +class AttributeViInt32TimeDeltaMilliseconds(Attribute): + + def __get__(self, session, session_type): + return hightime.timedelta(milliseconds=session._get_attribute_vi_int32(self._attribute_id)) + + def __set__(self, session, value): + session._set_attribute_vi_int32(self._attribute_id, _converters.convert_timedelta_to_milliseconds_int32(value)) + + +class AttributeViInt64(Attribute): + + def __get__(self, session, session_type): + return session._get_attribute_vi_int64(self._attribute_id) + + def __set__(self, session, value): + session._set_attribute_vi_int64(self._attribute_id, value) + + +class AttributeViReal64(Attribute): + + def __get__(self, session, session_type): + return session._get_attribute_vi_real64(self._attribute_id) + + def __set__(self, session, value): + session._set_attribute_vi_real64(self._attribute_id, value) + + +class AttributeViReal64TimeDeltaSeconds(Attribute): + + def __get__(self, session, session_type): + return hightime.timedelta(seconds=session._get_attribute_vi_real64(self._attribute_id)) + + def __set__(self, session, value): + session._set_attribute_vi_real64(self._attribute_id, _converters.convert_timedelta_to_seconds_real64(value)) + + +class AttributeViString(Attribute): + + def __get__(self, session, session_type): + return session._get_attribute_vi_string(self._attribute_id) + + def __set__(self, session, value): + session._set_attribute_vi_string(self._attribute_id, value) + + +class AttributeViStringRepeatedCapability(Attribute): + + def __get__(self, session, session_type): + return session._get_attribute_vi_string(self._attribute_id) + + def __set__(self, session, value): + session._set_attribute_vi_string(self._attribute_id, _converters.convert_repeated_capabilities_without_prefix(value)) + + +class AttributeViBoolean(Attribute): + + def __get__(self, session, session_type): + return session._get_attribute_vi_boolean(self._attribute_id) + + def __set__(self, session, value): + session._set_attribute_vi_boolean(self._attribute_id, value) + + +class AttributeEnum(Attribute): + + def __init__(self, underlying_attribute_meta_class, enum_meta_class, attribute_id): + super(AttributeEnum, self).__init__(attribute_id) + self._underlying_attribute = underlying_attribute_meta_class(attribute_id) + self._attribute_type = enum_meta_class + + def __get__(self, session, session_type): + return self._attribute_type(self._underlying_attribute.__get__(session, session_type)) + + def __set__(self, session, value): + if type(value) is not self._attribute_type: + raise TypeError('must be ' + str(self._attribute_type.__name__) + ' not ' + str(type(value).__name__)) + return self._underlying_attribute.__set__(session, value.value) + + +class AttributeEnumWithConverter(Attribute): + '''Class for attributes that use enums internally but are exposed in the nirfsg Python module as something else, thus need conversion.''' + + def __init__(self, underlying_attribute_enum, getter_converter, setter_converter): + '''Creates and returns an instance of AttributeEnumWithConverter attribute meta class. + + Args: + underlying_attribute_enum (AttributeEnum): The AttributeEnum instance for the underlying + enum + + getter_converter (function): The function that converts the enum value to its converted + value + + setter_converter (function): The function that converts the converted value back to the + enum value + ''' + super(AttributeEnumWithConverter, self).__init__(underlying_attribute_enum._attribute_id) + self._underlying_attribute_enum = underlying_attribute_enum + self._getter_converter = getter_converter + self._setter_converter = setter_converter + + def __get__(self, session, session_type): + try: + return self._getter_converter( + self._underlying_attribute_enum.__get__(session, session_type) + ) + except (KeyError, ValueError): + raise errors.DriverTooNewError() + + def __set__(self, session, value): + try: + return self._underlying_attribute_enum.__set__(session, self._setter_converter(value)) + except KeyError: + raise ValueError(f'Invalid value: {value}') + + +# nitclk specific attribute type +class AttributeSessionReference(Attribute): + + def __get__(self, session, session_type): + # Import here to avoid a circular dependency when initial import happens + from nirfsg.session import SessionReference + return SessionReference(session._get_attribute_vi_session(self._attribute_id)) + + def __set__(self, session, value): + session._set_attribute_vi_session(self._attribute_id, _converters.convert_to_nitclk_session_number(value)) diff --git a/generated/nirfsg/nirfsg/_converters.py b/generated/nirfsg/nirfsg/_converters.py new file mode 100644 index 0000000000..f42fd92f5f --- /dev/null +++ b/generated/nirfsg/nirfsg/_converters.py @@ -0,0 +1,345 @@ +# -*- coding: utf-8 -*- +# This file was generated +import nirfsg._visatype as _visatype +import nirfsg.errors as errors + +import array +import collections +import hightime +import numbers + +from functools import singledispatch + + +@singledispatch +def _convert_repeated_capabilities(arg, prefix): # noqa: F811 + '''Base version that should not be called + + Overall purpose is to convert the repeated capabilities to a list of strings with prefix from what ever form + + Supported types: + - str - List (comma delimited) + - str - Range (using '-' or ':') + - str - single item + - int + - tuple + - range + - slice + + Each instance should return a list of strings, without prefix + - '0' --> ['0'] + - 0 --> ['0'] + - '0, 1' --> ['0', '1'] + - 'ScriptTrigger0, ScriptTrigger1' --> ['0', '1'] + - '0-1' --> ['0', '1'] + - '0:1' --> ['0', '1'] + - '0-1,4' --> ['0', '1', '4'] + - range(0, 2) --> ['0', '1'] + - slice(0, 2) --> ['0', '1'] + - (0, 1, 4) --> ['0', '1', '4'] + - ('0-1', 4) --> ['0', '1', '4'] + - (slice(0, 1), '2', [4, '5-6'], '7-9', '11:14', '16, 17') --> + ['0', '2', '4', '5', '6', '7', '8', '9', '11', '12', '13', '14', '16', '17'] + ''' + raise errors.InvalidRepeatedCapabilityError('Invalid type', type(arg)) + + +@_convert_repeated_capabilities.register(numbers.Integral) # noqa: F811 +def _(repeated_capability, prefix): + '''Integer version''' + return [str(repeated_capability)] + + +# This parsing function duplicate the parsing in the driver, so if changes to the allowed format are made there, they will need to be replicated here. +@_convert_repeated_capabilities.register(str) # noqa: F811 +def _(repeated_capability, prefix): + '''String version (this is the most complex) + + We need to deal with a range ('0-3' or '0:3'), a list ('0,1,2,3') and a single item + ''' + # First we deal with a list + rep_cap_list = repeated_capability.split(',') + if len(rep_cap_list) > 1: + # We have a list so call ourselves again to let the iterable instance handle it + return _convert_repeated_capabilities(rep_cap_list, prefix) + + # Now we deal with ranges + # We remove any prefix and change ':' to '-' + r = repeated_capability.strip().replace(prefix, '').replace(':', '-') + rc = r.split('-') + if len(rc) > 1: + if len(rc) > 2: + raise errors.InvalidRepeatedCapabilityError("Multiple '-' or ':'", repeated_capability) + try: + start = int(rc[0]) + end = int(rc[1]) + except ValueError: + # This exception is raised when repeated_capability is of the form "dev/0-1". rc[0] == "dev/0" in this case. + # Just return the repeated_capability string as-is in that case. + pass + else: + if end < start: + rng = range(start, end - 1, -1) + else: + rng = range(start, end + 1) + return _convert_repeated_capabilities(rng, prefix) + + # If we made it here, it must be a simple item so we remove any prefix and return + return [repeated_capability.replace(prefix, '').strip()] + + +# We cannot use collections.abc.Iterable here because strings are also iterable and then this +# instance is what gets called instead of the string one. +@_convert_repeated_capabilities.register(list) # noqa: F811 +@_convert_repeated_capabilities.register(range) # noqa: F811 +@_convert_repeated_capabilities.register(tuple) # noqa: F811 +def _(repeated_capability, prefix): + '''Iterable version - can handle lists, ranges, and tuples''' + rep_cap_list = [] + for r in repeated_capability: + rep_cap_list += _convert_repeated_capabilities(r, prefix) + return rep_cap_list + + +@_convert_repeated_capabilities.register(slice) # noqa: F811 +def _(repeated_capability, prefix): + '''slice version''' + def ifnone(a, b): + return b if a is None else a + # Turn the slice into a list and call ourselves again to let the iterable instance handle it + rng = range(ifnone(repeated_capability.start, 0), repeated_capability.stop, ifnone(repeated_capability.step, 1)) + return _convert_repeated_capabilities(rng, prefix) + + +def convert_repeated_capabilities(repeated_capability, prefix=''): + '''Convert a repeated capabilities object to a comma delimited list + + Args: + repeated_capability (str, list, tuple, slice, None) - + prefix (str) - common prefix for all strings + + Returns: + rep_cap_list (list of str) - list of each repeated capability item with ranges expanded and prefix added + ''' + # We need to explicitly handle None here. Everything else we can pass on to the singledispatch functions + if repeated_capability is None: + return [] + return [prefix + r for r in _convert_repeated_capabilities(repeated_capability, prefix)] + + +def convert_repeated_capabilities_without_prefix(repeated_capability): + '''Convert a repeated capabilities object, without any prefix, to a comma delimited list + + Args: + repeated_capability - Supported types: + - str - list (comma-delimited) + - str - range (using '-' or ':') + - str - single item + - int + - list of str + - tuple of str + - range of str + - slice of str + - None + + Returns: + rep_cap (str) - comma delimited string of each repeated capability item with ranges expanded + ''' + return ','.join(convert_repeated_capabilities(repeated_capability, '')) + + +def expand_channel_string(channel_string, all_channels_in_session): + '''Expands a channel_string to a list of individual channel names. + + The individual channel names may or may not be fully qualified channel names as applicable for + the session. In other words, the individual channel names will be a subset of + all_channels_in_session. + + Examples: + - expand_channel_string('1', ['0', '1', '2', '3']) --> ['1'] + - expand_channel_string('4,1:2', ['1', '2', '4']) --> ['4', '1', '2'] + - expand_channel_string('2:3,0', ['Dev1/0', 'Dev1/1', 'Dev1/2', 'Dev1/3']) + --> ['Dev1/2', 'Dev1/3', 'Dev1/0'] + - expand_channel_string('Dev1/1', ['Dev1/0', 'Dev1/1', 'Dev1/2', 'Dev1/3']) + --> ['Dev1/1'] + - expand_channel_string('4,Dev1/1:2', ['Dev1/1', 'Dev1/2', 'Dev1/4']) + --> ['Dev1/4', 'Dev1/1', 'Dev1/2'] + - expand_channel_string('Dev1/4,Dev1/2,Dev1/3', ['Dev1/2', 'Dev1/3', 'Dev1/4']) + --> ['Dev1/4', 'Dev1/2', 'Dev1/3'] + - expand_channel_string('Dev1/1,Dev2/2', ['Dev1/0', 'Dev1/1', 'Dev1/2', 'Dev1/3', 'Dev2/0', 'Dev2/1', 'Dev2/2', 'Dev2/3']) + --> ['Dev1/1', 'Dev2/2'] + - expand_channel_string(' Dev1 / 1 : 2 , 4 ', ['Dev1/1', 'Dev1/2', 'Dev1/4']) + --> ['Dev1/1', 'Dev1/2', 'Dev1/4'] + - expand_channel_string('DEV1/0-1 , Dev1/3', ['dev1/0', 'dev1/1', 'dev1/2', 'dev1/3']) + --> ['dev1/0', 'dev1/1', 'dev1/3'] + + Args: + channel_string (str) - refer to _convert_repeated_capabilities() for the + supported formats (this string is expected to be used as the index of session.channels) + + all_channels_in_session (list of str) - names of all the channels in the session as returned + by get_channel_names() + + Returns: + channel_names (list of str) - A list in which each element is the name of a single channel, + with the exact capitalization used by the driver runtime. + ''' + if channel_string.strip() == '': + return all_channels_in_session + + # Rule 1: If all_channels_in_session is fully-qualified then returned channel names should be + # fully-qualified, otherwise returned channel names should not be fully-qualified. + # Rule 2: If any channel in the input is not fully-qualified, but we need to return + # fully-qualified channels because of Rule 1, then use the channel qualifier obtained + # from all_channels_in_session. This can only happen on a single-instrument session, + # so all the channel qualifiers are the same and we pick the first one. + + instrument, separator, channel = all_channels_in_session[0].rpartition('/') + default_channel_qualifier = instrument + separator + + expanded_channel_list = [] + for token in channel_string.split(','): + instrument, separator, channel = token.rpartition('/') + instrument = instrument.strip() + channel_qualifier = instrument + separator if instrument else default_channel_qualifier + expanded_channel_list.extend( + convert_repeated_capabilities(channel.strip(), channel_qualifier) + ) + + # Convert the expanded channel names to their canonical form based on all_channels_in_session + lowercase_channel_name_to_session_channel_name_dict = { + channel_name.lower(): channel_name for channel_name in all_channels_in_session + } + return [ + lowercase_channel_name_to_session_channel_name_dict[channel_name.lower()] + for channel_name in expanded_channel_list + ] + + +def _convert_timedelta(value, library_type, scaling): + try: + # We first assume it is a timedelta object + scaled_value = value.total_seconds() * scaling + except AttributeError: + # If that doesn't work, assume it is a value in seconds + # cast to float so scaled_value is always a float. This allows `timeout=10` to work as expected + scaled_value = float(value) * scaling + + # ctype integer types don't convert to int from float so we need to + if library_type in [_visatype.ViInt64, _visatype.ViInt32, _visatype.ViUInt32, _visatype.ViInt16, _visatype.ViUInt16, _visatype.ViInt8]: + scaled_value = int(scaled_value) + + return scaled_value + + +def convert_timedelta_to_seconds_real64(value): + return _convert_timedelta(value, _visatype.ViReal64, 1) + + +def convert_timedelta_to_milliseconds_int32(value): + return _convert_timedelta(value, _visatype.ViInt32, 1000) + + +def convert_timedeltas_to_seconds_real64(values): + return [convert_timedelta_to_seconds_real64(i) for i in values] + + +def convert_seconds_real64_to_timedelta(value): + return hightime.timedelta(seconds=value) + + +def convert_seconds_real64_to_timedeltas(values): + return [convert_seconds_real64_to_timedelta(i) for i in values] + + +def convert_month_to_timedelta(months): + return hightime.timedelta(days=(30.4167 * months)) + + +# This converter is not called from the normal codegen path for function. Instead it is +# call from init and is a special case. +def convert_init_with_options_dictionary(values): + if type(values) is str: + init_with_options_string = values + else: + good_keys = { + 'rangecheck': 'RangeCheck', + 'queryinstrstatus': 'QueryInstrStatus', + 'cache': 'Cache', + 'simulate': 'Simulate', + 'recordcoercions': 'RecordCoercions', + 'interchangecheck': 'InterchangeCheck', + 'driversetup': 'DriverSetup', + 'range_check': 'RangeCheck', + 'query_instr_status': 'QueryInstrStatus', + 'record_coercions': 'RecordCoercions', + 'interchange_check': 'InterchangeCheck', + 'driver_setup': 'DriverSetup', + } + init_with_options = [] + for k in sorted(values.keys()): + value = None + if k.lower() in good_keys and not good_keys[k.lower()] == 'DriverSetup': + value = good_keys[k.lower()] + ('=1' if values[k] is True else '=0') + elif k.lower() in good_keys and good_keys[k.lower()] == 'DriverSetup': + if not isinstance(values[k], dict): + raise TypeError('DriverSetup must be a dictionary') + value = 'DriverSetup=' + (';'.join([key + ':' + values[k][key] for key in sorted(values[k])])) + else: + value = k + ('=1' if values[k] is True else '=0') + + init_with_options.append(value) + + init_with_options_string = ','.join(init_with_options) + + return init_with_options_string + + +# convert value to bytes +@singledispatch +def _convert_to_bytes(value): # noqa: F811 + pass + + +@_convert_to_bytes.register(list) # noqa: F811 +@_convert_to_bytes.register(bytes) # noqa: F811 +@_convert_to_bytes.register(bytearray) # noqa: F811 +@_convert_to_bytes.register(array.array) # noqa: F811 +def _(value): + return value + + +@_convert_to_bytes.register(str) # noqa: F811 +def _(value): + return value.encode() + + +def convert_to_bytes(value): # noqa: F811 + return bytes(_convert_to_bytes(value)) + + +def convert_comma_separated_string_to_list(comma_separated_string): + return [x.strip() for x in comma_separated_string.split(',')] + + +def convert_chained_repeated_capability_to_parts(chained_repeated_capability): + '''Convert a chained repeated capabilities string to a list of comma-delimited repeated capabilities string. + + Converter assumes that the input contains the full cartesian product of its parts. + e.g. If chained_repeated_capability is 'site0/PinA,site0/PinB,site1/PinA,site1/PinB', + ['site0,site1', 'PinA,PinB'] is returned. + + Args: + chained_repeated_capability (str) - comma-delimited repeated capabilities string where each + item is a chain of slash-delimited repeated capabilities + + Returns: + rep_cap_list (list of str) - list of comma-delimited repeated capabilities string + ''' + chained_repeated_capability_items = convert_comma_separated_string_to_list(chained_repeated_capability) + repeated_capability_lists = [[] for _ in range(chained_repeated_capability_items[0].count('/') + 1)] + for item in chained_repeated_capability_items: + repeated_capability_lists = [x + [y] for x, y in zip(repeated_capability_lists, item.split('/'))] + return [','.join(collections.OrderedDict.fromkeys(x)) for x in repeated_capability_lists] + + diff --git a/generated/nirfsg/nirfsg/_library.py b/generated/nirfsg/nirfsg/_library.py new file mode 100644 index 0000000000..35e331e437 --- /dev/null +++ b/generated/nirfsg/nirfsg/_library.py @@ -0,0 +1,982 @@ +# -*- coding: utf-8 -*- +# This file was generated + +import ctypes +import nirfsg.errors as errors +import threading + +from nirfsg._visatype import * # noqa: F403,H303 + + +class Library(object): + '''Library + + Wrapper around driver library. + Class will setup the correct ctypes information for every function on first call. + ''' + + def __init__(self, ctypes_library): + self._func_lock = threading.Lock() + self._library = ctypes_library + # We cache the cfunc object from the ctypes.CDLL object + self.niRFSG_Abort_cfunc = None + self.niRFSG_AllocateArbWaveform_cfunc = None + self.niRFSG_ChangeExternalCalibrationPassword_cfunc = None + self.niRFSG_CheckAttributeViBoolean_cfunc = None + self.niRFSG_CheckAttributeViInt32_cfunc = None + self.niRFSG_CheckAttributeViInt64_cfunc = None + self.niRFSG_CheckAttributeViReal64_cfunc = None + self.niRFSG_CheckAttributeViSession_cfunc = None + self.niRFSG_CheckAttributeViString_cfunc = None + self.niRFSG_CheckGenerationStatus_cfunc = None + self.niRFSG_CheckIfConfigurationListExists_cfunc = None + self.niRFSG_CheckIfScriptExists_cfunc = None + self.niRFSG_CheckIfWaveformExists_cfunc = None + self.niRFSG_ClearAllArbWaveforms_cfunc = None + self.niRFSG_ClearArbWaveform_cfunc = None + self.niRFSG_ClearError_cfunc = None + self.niRFSG_ClearSelfCalibrateRange_cfunc = None + self.niRFSG_Commit_cfunc = None + self.niRFSG_ConfigureDeembeddingTableInterpolationLinear_cfunc = None + self.niRFSG_ConfigureDeembeddingTableInterpolationNearest_cfunc = None + self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc = None + self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc = None + self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc = None + self.niRFSG_ConfigureDigitalEdgeStartTrigger_cfunc = None + self.niRFSG_ConfigureDigitalLevelScriptTrigger_cfunc = None + self.niRFSG_ConfigureDigitalModulationUserDefinedWaveform_cfunc = None + self.niRFSG_ConfigureGenerationMode_cfunc = None + self.niRFSG_ConfigureOutputEnabled_cfunc = None + self.niRFSG_ConfigureP2PEndpointFullnessStartTrigger_cfunc = None + self.niRFSG_ConfigurePowerLevelType_cfunc = None + self.niRFSG_ConfigurePxiChassisClk10_cfunc = None + self.niRFSG_ConfigureRF_cfunc = None + self.niRFSG_ConfigureRefClock_cfunc = None + self.niRFSG_ConfigureSignalBandwidth_cfunc = None + self.niRFSG_ConfigureSoftwareScriptTrigger_cfunc = None + self.niRFSG_ConfigureSoftwareStartTrigger_cfunc = None + self.niRFSG_CreateConfigurationList_cfunc = None + self.niRFSG_CreateConfigurationListStep_cfunc = None + self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc = None + self.niRFSG_DeleteAllDeembeddingTables_cfunc = None + self.niRFSG_DeleteConfigurationList_cfunc = None + self.niRFSG_DeleteDeembeddingTable_cfunc = None + self.niRFSG_Disable_cfunc = None + self.niRFSG_DisableConfigurationListStepTrigger_cfunc = None + self.niRFSG_DisableScriptTrigger_cfunc = None + self.niRFSG_DisableStartTrigger_cfunc = None + self.niRFSG_ErrorMessage_cfunc = None + self.niRFSG_ErrorQuery_cfunc = None + self.niRFSG_ExportSignal_cfunc = None + self.niRFSG_GetAllNamedWaveformNames_cfunc = None + self.niRFSG_GetAllScriptNames_cfunc = None + self.niRFSG_GetAttributeViBoolean_cfunc = None + self.niRFSG_GetAttributeViInt32_cfunc = None + self.niRFSG_GetAttributeViInt64_cfunc = None + self.niRFSG_GetAttributeViReal64_cfunc = None + self.niRFSG_GetAttributeViSession_cfunc = None + self.niRFSG_GetAttributeViString_cfunc = None + self.niRFSG_GetChannelName_cfunc = None + self.niRFSG_GetDeembeddingSparameters_cfunc = None + self.niRFSG_GetError_cfunc = None + self.niRFSG_GetExternalCalibrationLastDateAndTime_cfunc = None + self.niRFSG_GetMaxSettablePower_cfunc = None + self.niRFSG_GetSelfCalibrationDateAndTime_cfunc = None + self.niRFSG_GetSelfCalibrationTemperature_cfunc = None + self.niRFSG_GetStreamEndpointHandle_cfunc = None + self.niRFSG_GetTerminalName_cfunc = None + self.niRFSG_GetWaveformBurstStartLocations_cfunc = None + self.niRFSG_GetWaveformBurstStopLocations_cfunc = None + self.niRFSG_GetWaveformMarkerEventLocations_cfunc = None + self.niRFSG_InitWithOptions_cfunc = None + self.niRFSG_Initiate_cfunc = None + self.niRFSG_LoadConfigurationsFromFile_cfunc = None + self.niRFSG_LockSession_cfunc = None + self.niRFSG_PerformPowerSearch_cfunc = None + self.niRFSG_PerformThermalCorrection_cfunc = None + self.niRFSG_QueryArbWaveformCapabilities_cfunc = None + self.niRFSG_ReadAndDownloadWaveformFromFileTDMS_cfunc = None + self.niRFSG_Reset_cfunc = None + self.niRFSG_ResetAttribute_cfunc = None + self.niRFSG_ResetDevice_cfunc = None + self.niRFSG_ResetWithDefaults_cfunc = None + self.niRFSG_ResetWithOptions_cfunc = None + self.niRFSG_RevisionQuery_cfunc = None + self.niRFSG_SaveConfigurationsToFile_cfunc = None + self.niRFSG_SelectArbWaveform_cfunc = None + self.niRFSG_SelfCal_cfunc = None + self.niRFSG_SelfCalibrateRange_cfunc = None + self.niRFSG_SelfTest_cfunc = None + self.niRFSG_SendSoftwareEdgeTrigger_cfunc = None + self.niRFSG_SetArbWaveformNextWritePosition_cfunc = None + self.niRFSG_SetAttributeViBoolean_cfunc = None + self.niRFSG_SetAttributeViInt32_cfunc = None + self.niRFSG_SetAttributeViInt64_cfunc = None + self.niRFSG_SetAttributeViReal64_cfunc = None + self.niRFSG_SetAttributeViSession_cfunc = None + self.niRFSG_SetAttributeViString_cfunc = None + self.niRFSG_SetWaveformBurstStartLocations_cfunc = None + self.niRFSG_SetWaveformBurstStopLocations_cfunc = None + self.niRFSG_SetWaveformMarkerEventLocations_cfunc = None + self.niRFSG_UnlockSession_cfunc = None + self.niRFSG_WaitUntilSettled_cfunc = None + self.niRFSG_WriteArbWaveform_cfunc = None + self.niRFSG_WriteArbWaveformF32_cfunc = None + self.niRFSG_WriteP2PEndpointI16_cfunc = None + self.niRFSG_WriteScript_cfunc = None + self.niRFSG_close_cfunc = None + + def _get_library_function(self, name): + try: + function = getattr(self._library, name) + except AttributeError as e: + raise errors.DriverTooOldError() from e + return function + + def niRFSG_Abort(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_Abort_cfunc is None: + self.niRFSG_Abort_cfunc = self._get_library_function('niRFSG_Abort') + self.niRFSG_Abort_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_Abort_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_Abort_cfunc(vi) + + def niRFSG_AllocateArbWaveform(self, vi, waveform_name, size_in_samples): # noqa: N802 + with self._func_lock: + if self.niRFSG_AllocateArbWaveform_cfunc is None: + self.niRFSG_AllocateArbWaveform_cfunc = self._get_library_function('niRFSG_AllocateArbWaveform') + self.niRFSG_AllocateArbWaveform_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32] # noqa: F405 + self.niRFSG_AllocateArbWaveform_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_AllocateArbWaveform_cfunc(vi, waveform_name, size_in_samples) + + def niRFSG_ChangeExternalCalibrationPassword(self, vi, old_password, new_password): # noqa: N802 + with self._func_lock: + if self.niRFSG_ChangeExternalCalibrationPassword_cfunc is None: + self.niRFSG_ChangeExternalCalibrationPassword_cfunc = self._get_library_function('niRFSG_ChangeExternalCalibrationPassword') + self.niRFSG_ChangeExternalCalibrationPassword_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ChangeExternalCalibrationPassword_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ChangeExternalCalibrationPassword_cfunc(vi, old_password, new_password) + + def niRFSG_CheckAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckAttributeViBoolean_cfunc is None: + self.niRFSG_CheckAttributeViBoolean_cfunc = self._get_library_function('niRFSG_CheckAttributeViBoolean') + self.niRFSG_CheckAttributeViBoolean_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViBoolean] # noqa: F405 + self.niRFSG_CheckAttributeViBoolean_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckAttributeViBoolean_cfunc(vi, channel_name, attribute, value) + + def niRFSG_CheckAttributeViInt32(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckAttributeViInt32_cfunc is None: + self.niRFSG_CheckAttributeViInt32_cfunc = self._get_library_function('niRFSG_CheckAttributeViInt32') + self.niRFSG_CheckAttributeViInt32_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViInt32] # noqa: F405 + self.niRFSG_CheckAttributeViInt32_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckAttributeViInt32_cfunc(vi, channel_name, attribute, value) + + def niRFSG_CheckAttributeViInt64(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckAttributeViInt64_cfunc is None: + self.niRFSG_CheckAttributeViInt64_cfunc = self._get_library_function('niRFSG_CheckAttributeViInt64') + self.niRFSG_CheckAttributeViInt64_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViInt64] # noqa: F405 + self.niRFSG_CheckAttributeViInt64_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckAttributeViInt64_cfunc(vi, channel_name, attribute, value) + + def niRFSG_CheckAttributeViReal64(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckAttributeViReal64_cfunc is None: + self.niRFSG_CheckAttributeViReal64_cfunc = self._get_library_function('niRFSG_CheckAttributeViReal64') + self.niRFSG_CheckAttributeViReal64_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViReal64] # noqa: F405 + self.niRFSG_CheckAttributeViReal64_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckAttributeViReal64_cfunc(vi, channel_name, attribute, value) + + def niRFSG_CheckAttributeViSession(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckAttributeViSession_cfunc is None: + self.niRFSG_CheckAttributeViSession_cfunc = self._get_library_function('niRFSG_CheckAttributeViSession') + self.niRFSG_CheckAttributeViSession_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViSession] # noqa: F405 + self.niRFSG_CheckAttributeViSession_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckAttributeViSession_cfunc(vi, channel_name, attribute, value) + + def niRFSG_CheckAttributeViString(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckAttributeViString_cfunc is None: + self.niRFSG_CheckAttributeViString_cfunc = self._get_library_function('niRFSG_CheckAttributeViString') + self.niRFSG_CheckAttributeViString_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_CheckAttributeViString_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckAttributeViString_cfunc(vi, channel_name, attribute, value) + + def niRFSG_CheckGenerationStatus(self, vi, is_done): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckGenerationStatus_cfunc is None: + self.niRFSG_CheckGenerationStatus_cfunc = self._get_library_function('niRFSG_CheckGenerationStatus') + self.niRFSG_CheckGenerationStatus_cfunc.argtypes = [ViSession, ctypes.POINTER(ViBoolean)] # noqa: F405 + self.niRFSG_CheckGenerationStatus_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckGenerationStatus_cfunc(vi, is_done) + + def niRFSG_CheckIfConfigurationListExists(self, vi, list_name, list_exists): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckIfConfigurationListExists_cfunc is None: + self.niRFSG_CheckIfConfigurationListExists_cfunc = self._get_library_function('niRFSG_CheckIfConfigurationListExists') + self.niRFSG_CheckIfConfigurationListExists_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViBoolean)] # noqa: F405 + self.niRFSG_CheckIfConfigurationListExists_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckIfConfigurationListExists_cfunc(vi, list_name, list_exists) + + def niRFSG_CheckIfScriptExists(self, vi, script_name, script_exists): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckIfScriptExists_cfunc is None: + self.niRFSG_CheckIfScriptExists_cfunc = self._get_library_function('niRFSG_CheckIfScriptExists') + self.niRFSG_CheckIfScriptExists_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViBoolean)] # noqa: F405 + self.niRFSG_CheckIfScriptExists_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckIfScriptExists_cfunc(vi, script_name, script_exists) + + def niRFSG_CheckIfWaveformExists(self, vi, waveform_name, waveform_exists): # noqa: N802 + with self._func_lock: + if self.niRFSG_CheckIfWaveformExists_cfunc is None: + self.niRFSG_CheckIfWaveformExists_cfunc = self._get_library_function('niRFSG_CheckIfWaveformExists') + self.niRFSG_CheckIfWaveformExists_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViBoolean)] # noqa: F405 + self.niRFSG_CheckIfWaveformExists_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CheckIfWaveformExists_cfunc(vi, waveform_name, waveform_exists) + + def niRFSG_ClearAllArbWaveforms(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_ClearAllArbWaveforms_cfunc is None: + self.niRFSG_ClearAllArbWaveforms_cfunc = self._get_library_function('niRFSG_ClearAllArbWaveforms') + self.niRFSG_ClearAllArbWaveforms_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_ClearAllArbWaveforms_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ClearAllArbWaveforms_cfunc(vi) + + def niRFSG_ClearArbWaveform(self, vi, name): # noqa: N802 + with self._func_lock: + if self.niRFSG_ClearArbWaveform_cfunc is None: + self.niRFSG_ClearArbWaveform_cfunc = self._get_library_function('niRFSG_ClearArbWaveform') + self.niRFSG_ClearArbWaveform_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ClearArbWaveform_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ClearArbWaveform_cfunc(vi, name) + + def niRFSG_ClearError(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_ClearError_cfunc is None: + self.niRFSG_ClearError_cfunc = self._get_library_function('niRFSG_ClearError') + self.niRFSG_ClearError_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_ClearError_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ClearError_cfunc(vi) + + def niRFSG_ClearSelfCalibrateRange(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_ClearSelfCalibrateRange_cfunc is None: + self.niRFSG_ClearSelfCalibrateRange_cfunc = self._get_library_function('niRFSG_ClearSelfCalibrateRange') + self.niRFSG_ClearSelfCalibrateRange_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_ClearSelfCalibrateRange_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ClearSelfCalibrateRange_cfunc(vi) + + def niRFSG_Commit(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_Commit_cfunc is None: + self.niRFSG_Commit_cfunc = self._get_library_function('niRFSG_Commit') + self.niRFSG_Commit_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_Commit_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_Commit_cfunc(vi) + + def niRFSG_ConfigureDeembeddingTableInterpolationLinear(self, vi, port, table_name, format): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDeembeddingTableInterpolationLinear_cfunc is None: + self.niRFSG_ConfigureDeembeddingTableInterpolationLinear_cfunc = self._get_library_function('niRFSG_ConfigureDeembeddingTableInterpolationLinear') + self.niRFSG_ConfigureDeembeddingTableInterpolationLinear_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar), ViInt32] # noqa: F405 + self.niRFSG_ConfigureDeembeddingTableInterpolationLinear_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDeembeddingTableInterpolationLinear_cfunc(vi, port, table_name, format) + + def niRFSG_ConfigureDeembeddingTableInterpolationNearest(self, vi, port, table_name): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDeembeddingTableInterpolationNearest_cfunc is None: + self.niRFSG_ConfigureDeembeddingTableInterpolationNearest_cfunc = self._get_library_function('niRFSG_ConfigureDeembeddingTableInterpolationNearest') + self.niRFSG_ConfigureDeembeddingTableInterpolationNearest_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ConfigureDeembeddingTableInterpolationNearest_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDeembeddingTableInterpolationNearest_cfunc(vi, port, table_name) + + def niRFSG_ConfigureDeembeddingTableInterpolationSpline(self, vi, port, table_name): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc is None: + self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc = self._get_library_function('niRFSG_ConfigureDeembeddingTableInterpolationSpline') + self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc(vi, port, table_name) + + def niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger(self, vi, source, edge): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc is None: + self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc = self._get_library_function('niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger') + self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32] # noqa: F405 + self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc(vi, source, edge) + + def niRFSG_ConfigureDigitalEdgeScriptTrigger(self, vi, trigger_id, source, edge): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc is None: + self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc = self._get_library_function('niRFSG_ConfigureDigitalEdgeScriptTrigger') + self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar), ViInt32] # noqa: F405 + self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc(vi, trigger_id, source, edge) + + def niRFSG_ConfigureDigitalEdgeStartTrigger(self, vi, source, edge): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDigitalEdgeStartTrigger_cfunc is None: + self.niRFSG_ConfigureDigitalEdgeStartTrigger_cfunc = self._get_library_function('niRFSG_ConfigureDigitalEdgeStartTrigger') + self.niRFSG_ConfigureDigitalEdgeStartTrigger_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32] # noqa: F405 + self.niRFSG_ConfigureDigitalEdgeStartTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDigitalEdgeStartTrigger_cfunc(vi, source, edge) + + def niRFSG_ConfigureDigitalLevelScriptTrigger(self, vi, trigger_id, source, level): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDigitalLevelScriptTrigger_cfunc is None: + self.niRFSG_ConfigureDigitalLevelScriptTrigger_cfunc = self._get_library_function('niRFSG_ConfigureDigitalLevelScriptTrigger') + self.niRFSG_ConfigureDigitalLevelScriptTrigger_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar), ViInt32] # noqa: F405 + self.niRFSG_ConfigureDigitalLevelScriptTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDigitalLevelScriptTrigger_cfunc(vi, trigger_id, source, level) + + def niRFSG_ConfigureDigitalModulationUserDefinedWaveform(self, vi, number_of_samples, user_defined_waveform): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureDigitalModulationUserDefinedWaveform_cfunc is None: + self.niRFSG_ConfigureDigitalModulationUserDefinedWaveform_cfunc = self._get_library_function('niRFSG_ConfigureDigitalModulationUserDefinedWaveform') + self.niRFSG_ConfigureDigitalModulationUserDefinedWaveform_cfunc.argtypes = [ViSession, ViInt32, ctypes.POINTER(ViInt8)] # noqa: F405 + self.niRFSG_ConfigureDigitalModulationUserDefinedWaveform_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureDigitalModulationUserDefinedWaveform_cfunc(vi, number_of_samples, user_defined_waveform) + + def niRFSG_ConfigureGenerationMode(self, vi, generation_mode): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureGenerationMode_cfunc is None: + self.niRFSG_ConfigureGenerationMode_cfunc = self._get_library_function('niRFSG_ConfigureGenerationMode') + self.niRFSG_ConfigureGenerationMode_cfunc.argtypes = [ViSession, ViInt32] # noqa: F405 + self.niRFSG_ConfigureGenerationMode_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureGenerationMode_cfunc(vi, generation_mode) + + def niRFSG_ConfigureOutputEnabled(self, vi, output_enabled): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureOutputEnabled_cfunc is None: + self.niRFSG_ConfigureOutputEnabled_cfunc = self._get_library_function('niRFSG_ConfigureOutputEnabled') + self.niRFSG_ConfigureOutputEnabled_cfunc.argtypes = [ViSession, ViBoolean] # noqa: F405 + self.niRFSG_ConfigureOutputEnabled_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureOutputEnabled_cfunc(vi, output_enabled) + + def niRFSG_ConfigureP2PEndpointFullnessStartTrigger(self, vi, p2p_endpoint_fullness_level): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureP2PEndpointFullnessStartTrigger_cfunc is None: + self.niRFSG_ConfigureP2PEndpointFullnessStartTrigger_cfunc = self._get_library_function('niRFSG_ConfigureP2PEndpointFullnessStartTrigger') + self.niRFSG_ConfigureP2PEndpointFullnessStartTrigger_cfunc.argtypes = [ViSession, ViInt64] # noqa: F405 + self.niRFSG_ConfigureP2PEndpointFullnessStartTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureP2PEndpointFullnessStartTrigger_cfunc(vi, p2p_endpoint_fullness_level) + + def niRFSG_ConfigurePowerLevelType(self, vi, power_level_type): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigurePowerLevelType_cfunc is None: + self.niRFSG_ConfigurePowerLevelType_cfunc = self._get_library_function('niRFSG_ConfigurePowerLevelType') + self.niRFSG_ConfigurePowerLevelType_cfunc.argtypes = [ViSession, ViInt32] # noqa: F405 + self.niRFSG_ConfigurePowerLevelType_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigurePowerLevelType_cfunc(vi, power_level_type) + + def niRFSG_ConfigurePxiChassisClk10(self, vi, pxi_clk10_source): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigurePxiChassisClk10_cfunc is None: + self.niRFSG_ConfigurePxiChassisClk10_cfunc = self._get_library_function('niRFSG_ConfigurePxiChassisClk10') + self.niRFSG_ConfigurePxiChassisClk10_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ConfigurePxiChassisClk10_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigurePxiChassisClk10_cfunc(vi, pxi_clk10_source) + + def niRFSG_ConfigureRF(self, vi, frequency, power_level): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureRF_cfunc is None: + self.niRFSG_ConfigureRF_cfunc = self._get_library_function('niRFSG_ConfigureRF') + self.niRFSG_ConfigureRF_cfunc.argtypes = [ViSession, ViReal64, ViReal64] # noqa: F405 + self.niRFSG_ConfigureRF_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureRF_cfunc(vi, frequency, power_level) + + def niRFSG_ConfigureRefClock(self, vi, ref_clock_source, ref_clock_rate): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureRefClock_cfunc is None: + self.niRFSG_ConfigureRefClock_cfunc = self._get_library_function('niRFSG_ConfigureRefClock') + self.niRFSG_ConfigureRefClock_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViReal64] # noqa: F405 + self.niRFSG_ConfigureRefClock_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureRefClock_cfunc(vi, ref_clock_source, ref_clock_rate) + + def niRFSG_ConfigureSignalBandwidth(self, vi, signal_bandwidth): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureSignalBandwidth_cfunc is None: + self.niRFSG_ConfigureSignalBandwidth_cfunc = self._get_library_function('niRFSG_ConfigureSignalBandwidth') + self.niRFSG_ConfigureSignalBandwidth_cfunc.argtypes = [ViSession, ViReal64] # noqa: F405 + self.niRFSG_ConfigureSignalBandwidth_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureSignalBandwidth_cfunc(vi, signal_bandwidth) + + def niRFSG_ConfigureSoftwareScriptTrigger(self, vi, trigger_id): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureSoftwareScriptTrigger_cfunc is None: + self.niRFSG_ConfigureSoftwareScriptTrigger_cfunc = self._get_library_function('niRFSG_ConfigureSoftwareScriptTrigger') + self.niRFSG_ConfigureSoftwareScriptTrigger_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ConfigureSoftwareScriptTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureSoftwareScriptTrigger_cfunc(vi, trigger_id) + + def niRFSG_ConfigureSoftwareStartTrigger(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_ConfigureSoftwareStartTrigger_cfunc is None: + self.niRFSG_ConfigureSoftwareStartTrigger_cfunc = self._get_library_function('niRFSG_ConfigureSoftwareStartTrigger') + self.niRFSG_ConfigureSoftwareStartTrigger_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_ConfigureSoftwareStartTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ConfigureSoftwareStartTrigger_cfunc(vi) + + def niRFSG_CreateConfigurationList(self, vi, list_name, number_of_attributes, configuration_list_attributes, set_as_active_list): # noqa: N802 + with self._func_lock: + if self.niRFSG_CreateConfigurationList_cfunc is None: + self.niRFSG_CreateConfigurationList_cfunc = self._get_library_function('niRFSG_CreateConfigurationList') + self.niRFSG_CreateConfigurationList_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViAttr), ViBoolean] # noqa: F405 + self.niRFSG_CreateConfigurationList_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CreateConfigurationList_cfunc(vi, list_name, number_of_attributes, configuration_list_attributes, set_as_active_list) + + def niRFSG_CreateConfigurationListStep(self, vi, set_as_active_step): # noqa: N802 + with self._func_lock: + if self.niRFSG_CreateConfigurationListStep_cfunc is None: + self.niRFSG_CreateConfigurationListStep_cfunc = self._get_library_function('niRFSG_CreateConfigurationListStep') + self.niRFSG_CreateConfigurationListStep_cfunc.argtypes = [ViSession, ViBoolean] # noqa: F405 + self.niRFSG_CreateConfigurationListStep_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CreateConfigurationListStep_cfunc(vi, set_as_active_step) + + def niRFSG_CreateDeembeddingSparameterTableS2PFile(self, vi, port, table_name, s2p_file_path, sparameter_orientation): # noqa: N802 + with self._func_lock: + if self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc is None: + self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc = self._get_library_function('niRFSG_CreateDeembeddingSparameterTableS2PFile') + self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar), ctypes.POINTER(ViChar), ViInt32] # noqa: F405 + self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc(vi, port, table_name, s2p_file_path, sparameter_orientation) + + def niRFSG_DeleteAllDeembeddingTables(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_DeleteAllDeembeddingTables_cfunc is None: + self.niRFSG_DeleteAllDeembeddingTables_cfunc = self._get_library_function('niRFSG_DeleteAllDeembeddingTables') + self.niRFSG_DeleteAllDeembeddingTables_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_DeleteAllDeembeddingTables_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_DeleteAllDeembeddingTables_cfunc(vi) + + def niRFSG_DeleteConfigurationList(self, vi, list_name): # noqa: N802 + with self._func_lock: + if self.niRFSG_DeleteConfigurationList_cfunc is None: + self.niRFSG_DeleteConfigurationList_cfunc = self._get_library_function('niRFSG_DeleteConfigurationList') + self.niRFSG_DeleteConfigurationList_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_DeleteConfigurationList_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_DeleteConfigurationList_cfunc(vi, list_name) + + def niRFSG_DeleteDeembeddingTable(self, vi, port, table_name): # noqa: N802 + with self._func_lock: + if self.niRFSG_DeleteDeembeddingTable_cfunc is None: + self.niRFSG_DeleteDeembeddingTable_cfunc = self._get_library_function('niRFSG_DeleteDeembeddingTable') + self.niRFSG_DeleteDeembeddingTable_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_DeleteDeembeddingTable_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_DeleteDeembeddingTable_cfunc(vi, port, table_name) + + def niRFSG_Disable(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_Disable_cfunc is None: + self.niRFSG_Disable_cfunc = self._get_library_function('niRFSG_Disable') + self.niRFSG_Disable_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_Disable_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_Disable_cfunc(vi) + + def niRFSG_DisableConfigurationListStepTrigger(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_DisableConfigurationListStepTrigger_cfunc is None: + self.niRFSG_DisableConfigurationListStepTrigger_cfunc = self._get_library_function('niRFSG_DisableConfigurationListStepTrigger') + self.niRFSG_DisableConfigurationListStepTrigger_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_DisableConfigurationListStepTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_DisableConfigurationListStepTrigger_cfunc(vi) + + def niRFSG_DisableScriptTrigger(self, vi, trigger_id): # noqa: N802 + with self._func_lock: + if self.niRFSG_DisableScriptTrigger_cfunc is None: + self.niRFSG_DisableScriptTrigger_cfunc = self._get_library_function('niRFSG_DisableScriptTrigger') + self.niRFSG_DisableScriptTrigger_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_DisableScriptTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_DisableScriptTrigger_cfunc(vi, trigger_id) + + def niRFSG_DisableStartTrigger(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_DisableStartTrigger_cfunc is None: + self.niRFSG_DisableStartTrigger_cfunc = self._get_library_function('niRFSG_DisableStartTrigger') + self.niRFSG_DisableStartTrigger_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_DisableStartTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_DisableStartTrigger_cfunc(vi) + + def niRFSG_ErrorMessage(self, vi, error_code, error_message): # noqa: N802 + with self._func_lock: + if self.niRFSG_ErrorMessage_cfunc is None: + self.niRFSG_ErrorMessage_cfunc = self._get_library_function('niRFSG_ErrorMessage') + self.niRFSG_ErrorMessage_cfunc.argtypes = [ViSession, ViStatus, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ErrorMessage_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ErrorMessage_cfunc(vi, error_code, error_message) + + def niRFSG_ErrorQuery(self, vi, error_code, error_message): # noqa: N802 + with self._func_lock: + if self.niRFSG_ErrorQuery_cfunc is None: + self.niRFSG_ErrorQuery_cfunc = self._get_library_function('niRFSG_ErrorQuery') + self.niRFSG_ErrorQuery_cfunc.argtypes = [ViSession, ctypes.POINTER(ViInt32), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ErrorQuery_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ErrorQuery_cfunc(vi, error_code, error_message) + + def niRFSG_ExportSignal(self, vi, signal, signal_identifier, output_terminal): # noqa: N802 + with self._func_lock: + if self.niRFSG_ExportSignal_cfunc is None: + self.niRFSG_ExportSignal_cfunc = self._get_library_function('niRFSG_ExportSignal') + self.niRFSG_ExportSignal_cfunc.argtypes = [ViSession, ViInt32, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_ExportSignal_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ExportSignal_cfunc(vi, signal, signal_identifier, output_terminal) + + def niRFSG_GetAllNamedWaveformNames(self, vi, waveform_names, buffer_size, actual_buffer_size): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAllNamedWaveformNames_cfunc is None: + self.niRFSG_GetAllNamedWaveformNames_cfunc = self._get_library_function('niRFSG_GetAllNamedWaveformNames') + self.niRFSG_GetAllNamedWaveformNames_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetAllNamedWaveformNames_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAllNamedWaveformNames_cfunc(vi, waveform_names, buffer_size, actual_buffer_size) + + def niRFSG_GetAllScriptNames(self, vi, script_names, buffer_size, actual_buffer_size): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAllScriptNames_cfunc is None: + self.niRFSG_GetAllScriptNames_cfunc = self._get_library_function('niRFSG_GetAllScriptNames') + self.niRFSG_GetAllScriptNames_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetAllScriptNames_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAllScriptNames_cfunc(vi, script_names, buffer_size, actual_buffer_size) + + def niRFSG_GetAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAttributeViBoolean_cfunc is None: + self.niRFSG_GetAttributeViBoolean_cfunc = self._get_library_function('niRFSG_GetAttributeViBoolean') + self.niRFSG_GetAttributeViBoolean_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ctypes.POINTER(ViBoolean)] # noqa: F405 + self.niRFSG_GetAttributeViBoolean_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAttributeViBoolean_cfunc(vi, channel_name, attribute, value) + + def niRFSG_GetAttributeViInt32(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAttributeViInt32_cfunc is None: + self.niRFSG_GetAttributeViInt32_cfunc = self._get_library_function('niRFSG_GetAttributeViInt32') + self.niRFSG_GetAttributeViInt32_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetAttributeViInt32_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAttributeViInt32_cfunc(vi, channel_name, attribute, value) + + def niRFSG_GetAttributeViInt64(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAttributeViInt64_cfunc is None: + self.niRFSG_GetAttributeViInt64_cfunc = self._get_library_function('niRFSG_GetAttributeViInt64') + self.niRFSG_GetAttributeViInt64_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ctypes.POINTER(ViInt64)] # noqa: F405 + self.niRFSG_GetAttributeViInt64_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAttributeViInt64_cfunc(vi, channel_name, attribute, value) + + def niRFSG_GetAttributeViReal64(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAttributeViReal64_cfunc is None: + self.niRFSG_GetAttributeViReal64_cfunc = self._get_library_function('niRFSG_GetAttributeViReal64') + self.niRFSG_GetAttributeViReal64_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ctypes.POINTER(ViReal64)] # noqa: F405 + self.niRFSG_GetAttributeViReal64_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAttributeViReal64_cfunc(vi, channel_name, attribute, value) + + def niRFSG_GetAttributeViSession(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAttributeViSession_cfunc is None: + self.niRFSG_GetAttributeViSession_cfunc = self._get_library_function('niRFSG_GetAttributeViSession') + self.niRFSG_GetAttributeViSession_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ctypes.POINTER(ViSession)] # noqa: F405 + self.niRFSG_GetAttributeViSession_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAttributeViSession_cfunc(vi, channel_name, attribute, value) + + def niRFSG_GetAttributeViString(self, vi, channel_name, attribute, buf_size, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetAttributeViString_cfunc is None: + self.niRFSG_GetAttributeViString_cfunc = self._get_library_function('niRFSG_GetAttributeViString') + self.niRFSG_GetAttributeViString_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViInt32, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_GetAttributeViString_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetAttributeViString_cfunc(vi, channel_name, attribute, buf_size, value) + + def niRFSG_GetChannelName(self, vi, index, buffer_size, name): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetChannelName_cfunc is None: + self.niRFSG_GetChannelName_cfunc = self._get_library_function('niRFSG_GetChannelName') + self.niRFSG_GetChannelName_cfunc.argtypes = [ViSession, ViInt32, ViInt32, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_GetChannelName_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetChannelName_cfunc(vi, index, buffer_size, name) + + def niRFSG_GetDeembeddingSparameters(self, vi, sparameters, sparameters_array_size, number_of_sparameters, number_of_ports): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetDeembeddingSparameters_cfunc is None: + self.niRFSG_GetDeembeddingSparameters_cfunc = self._get_library_function('niRFSG_GetDeembeddingSparameters') + self.niRFSG_GetDeembeddingSparameters_cfunc.argtypes = [ViSession, ctypes.POINTER(ni_complex_number), ViInt32, ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetDeembeddingSparameters_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetDeembeddingSparameters_cfunc(vi, sparameters, sparameters_array_size, number_of_sparameters, number_of_ports) + + def niRFSG_GetError(self, vi, error_code, error_description_buffer_size, error_description): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetError_cfunc is None: + self.niRFSG_GetError_cfunc = self._get_library_function('niRFSG_GetError') + self.niRFSG_GetError_cfunc.argtypes = [ViSession, ctypes.POINTER(ViStatus), ViInt32, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_GetError_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetError_cfunc(vi, error_code, error_description_buffer_size, error_description) + + def niRFSG_GetExternalCalibrationLastDateAndTime(self, vi, year, month, day, hour, minute, second): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetExternalCalibrationLastDateAndTime_cfunc is None: + self.niRFSG_GetExternalCalibrationLastDateAndTime_cfunc = self._get_library_function('niRFSG_GetExternalCalibrationLastDateAndTime') + self.niRFSG_GetExternalCalibrationLastDateAndTime_cfunc.argtypes = [ViSession, ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetExternalCalibrationLastDateAndTime_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetExternalCalibrationLastDateAndTime_cfunc(vi, year, month, day, hour, minute, second) + + def niRFSG_GetMaxSettablePower(self, vi, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetMaxSettablePower_cfunc is None: + self.niRFSG_GetMaxSettablePower_cfunc = self._get_library_function('niRFSG_GetMaxSettablePower') + self.niRFSG_GetMaxSettablePower_cfunc.argtypes = [ViSession, ctypes.POINTER(ViReal64)] # noqa: F405 + self.niRFSG_GetMaxSettablePower_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetMaxSettablePower_cfunc(vi, value) + + def niRFSG_GetSelfCalibrationDateAndTime(self, vi, module, year, month, day, hour, minute, second): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetSelfCalibrationDateAndTime_cfunc is None: + self.niRFSG_GetSelfCalibrationDateAndTime_cfunc = self._get_library_function('niRFSG_GetSelfCalibrationDateAndTime') + self.niRFSG_GetSelfCalibrationDateAndTime_cfunc.argtypes = [ViSession, ViInt32, ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetSelfCalibrationDateAndTime_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetSelfCalibrationDateAndTime_cfunc(vi, module, year, month, day, hour, minute, second) + + def niRFSG_GetSelfCalibrationTemperature(self, vi, module, temperature): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetSelfCalibrationTemperature_cfunc is None: + self.niRFSG_GetSelfCalibrationTemperature_cfunc = self._get_library_function('niRFSG_GetSelfCalibrationTemperature') + self.niRFSG_GetSelfCalibrationTemperature_cfunc.argtypes = [ViSession, ViInt32, ctypes.POINTER(ViReal64)] # noqa: F405 + self.niRFSG_GetSelfCalibrationTemperature_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetSelfCalibrationTemperature_cfunc(vi, module, temperature) + + def niRFSG_GetStreamEndpointHandle(self, vi, stream_endpoint, reader_handle): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetStreamEndpointHandle_cfunc is None: + self.niRFSG_GetStreamEndpointHandle_cfunc = self._get_library_function('niRFSG_GetStreamEndpointHandle') + self.niRFSG_GetStreamEndpointHandle_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViUInt32)] # noqa: F405 + self.niRFSG_GetStreamEndpointHandle_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetStreamEndpointHandle_cfunc(vi, stream_endpoint, reader_handle) + + def niRFSG_GetTerminalName(self, vi, signal, signal_identifier, buffer_size, terminal_name): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetTerminalName_cfunc is None: + self.niRFSG_GetTerminalName_cfunc = self._get_library_function('niRFSG_GetTerminalName') + self.niRFSG_GetTerminalName_cfunc.argtypes = [ViSession, ViInt32, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_GetTerminalName_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetTerminalName_cfunc(vi, signal, signal_identifier, buffer_size, terminal_name) + + def niRFSG_GetWaveformBurstStartLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetWaveformBurstStartLocations_cfunc is None: + self.niRFSG_GetWaveformBurstStartLocations_cfunc = self._get_library_function('niRFSG_GetWaveformBurstStartLocations') + self.niRFSG_GetWaveformBurstStartLocations_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64), ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetWaveformBurstStartLocations_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetWaveformBurstStartLocations_cfunc(vi, channel_name, number_of_locations, locations, required_size) + + def niRFSG_GetWaveformBurstStopLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetWaveformBurstStopLocations_cfunc is None: + self.niRFSG_GetWaveformBurstStopLocations_cfunc = self._get_library_function('niRFSG_GetWaveformBurstStopLocations') + self.niRFSG_GetWaveformBurstStopLocations_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64), ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetWaveformBurstStopLocations_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetWaveformBurstStopLocations_cfunc(vi, channel_name, number_of_locations, locations, required_size) + + def niRFSG_GetWaveformMarkerEventLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 + with self._func_lock: + if self.niRFSG_GetWaveformMarkerEventLocations_cfunc is None: + self.niRFSG_GetWaveformMarkerEventLocations_cfunc = self._get_library_function('niRFSG_GetWaveformMarkerEventLocations') + self.niRFSG_GetWaveformMarkerEventLocations_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64), ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_GetWaveformMarkerEventLocations_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_GetWaveformMarkerEventLocations_cfunc(vi, channel_name, number_of_locations, locations, required_size) + + def niRFSG_InitWithOptions(self, resource_name, id_query, reset_device, option_string, new_vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_InitWithOptions_cfunc is None: + self.niRFSG_InitWithOptions_cfunc = self._get_library_function('niRFSG_InitWithOptions') + self.niRFSG_InitWithOptions_cfunc.argtypes = [ctypes.POINTER(ViChar), ViBoolean, ViBoolean, ctypes.POINTER(ViChar), ctypes.POINTER(ViSession)] # noqa: F405 + self.niRFSG_InitWithOptions_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_InitWithOptions_cfunc(resource_name, id_query, reset_device, option_string, new_vi) + + def niRFSG_Initiate(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_Initiate_cfunc is None: + self.niRFSG_Initiate_cfunc = self._get_library_function('niRFSG_Initiate') + self.niRFSG_Initiate_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_Initiate_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_Initiate_cfunc(vi) + + def niRFSG_LoadConfigurationsFromFile(self, vi, channel_name, file_path): # noqa: N802 + with self._func_lock: + if self.niRFSG_LoadConfigurationsFromFile_cfunc is None: + self.niRFSG_LoadConfigurationsFromFile_cfunc = self._get_library_function('niRFSG_LoadConfigurationsFromFile') + self.niRFSG_LoadConfigurationsFromFile_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_LoadConfigurationsFromFile_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_LoadConfigurationsFromFile_cfunc(vi, channel_name, file_path) + + def niRFSG_LockSession(self, vi, caller_has_lock): # noqa: N802 + with self._func_lock: + if self.niRFSG_LockSession_cfunc is None: + self.niRFSG_LockSession_cfunc = self._get_library_function('niRFSG_LockSession') + self.niRFSG_LockSession_cfunc.argtypes = [ViSession, ctypes.POINTER(ViBoolean)] # noqa: F405 + self.niRFSG_LockSession_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_LockSession_cfunc(vi, caller_has_lock) + + def niRFSG_PerformPowerSearch(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_PerformPowerSearch_cfunc is None: + self.niRFSG_PerformPowerSearch_cfunc = self._get_library_function('niRFSG_PerformPowerSearch') + self.niRFSG_PerformPowerSearch_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_PerformPowerSearch_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_PerformPowerSearch_cfunc(vi) + + def niRFSG_PerformThermalCorrection(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_PerformThermalCorrection_cfunc is None: + self.niRFSG_PerformThermalCorrection_cfunc = self._get_library_function('niRFSG_PerformThermalCorrection') + self.niRFSG_PerformThermalCorrection_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_PerformThermalCorrection_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_PerformThermalCorrection_cfunc(vi) + + def niRFSG_QueryArbWaveformCapabilities(self, vi, max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size): # noqa: N802 + with self._func_lock: + if self.niRFSG_QueryArbWaveformCapabilities_cfunc is None: + self.niRFSG_QueryArbWaveformCapabilities_cfunc = self._get_library_function('niRFSG_QueryArbWaveformCapabilities') + self.niRFSG_QueryArbWaveformCapabilities_cfunc.argtypes = [ViSession, ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32)] # noqa: F405 + self.niRFSG_QueryArbWaveformCapabilities_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_QueryArbWaveformCapabilities_cfunc(vi, max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size) + + def niRFSG_ReadAndDownloadWaveformFromFileTDMS(self, vi, waveform_name, file_path, waveform_index): # noqa: N802 + with self._func_lock: + if self.niRFSG_ReadAndDownloadWaveformFromFileTDMS_cfunc is None: + self.niRFSG_ReadAndDownloadWaveformFromFileTDMS_cfunc = self._get_library_function('niRFSG_ReadAndDownloadWaveformFromFileTDMS') + self.niRFSG_ReadAndDownloadWaveformFromFileTDMS_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar), ViUInt32] # noqa: F405 + self.niRFSG_ReadAndDownloadWaveformFromFileTDMS_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ReadAndDownloadWaveformFromFileTDMS_cfunc(vi, waveform_name, file_path, waveform_index) + + def niRFSG_Reset(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_Reset_cfunc is None: + self.niRFSG_Reset_cfunc = self._get_library_function('niRFSG_Reset') + self.niRFSG_Reset_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_Reset_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_Reset_cfunc(vi) + + def niRFSG_ResetAttribute(self, vi, channel_name, attribute_id): # noqa: N802 + with self._func_lock: + if self.niRFSG_ResetAttribute_cfunc is None: + self.niRFSG_ResetAttribute_cfunc = self._get_library_function('niRFSG_ResetAttribute') + self.niRFSG_ResetAttribute_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr] # noqa: F405 + self.niRFSG_ResetAttribute_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ResetAttribute_cfunc(vi, channel_name, attribute_id) + + def niRFSG_ResetDevice(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_ResetDevice_cfunc is None: + self.niRFSG_ResetDevice_cfunc = self._get_library_function('niRFSG_ResetDevice') + self.niRFSG_ResetDevice_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_ResetDevice_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ResetDevice_cfunc(vi) + + def niRFSG_ResetWithDefaults(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_ResetWithDefaults_cfunc is None: + self.niRFSG_ResetWithDefaults_cfunc = self._get_library_function('niRFSG_ResetWithDefaults') + self.niRFSG_ResetWithDefaults_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_ResetWithDefaults_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ResetWithDefaults_cfunc(vi) + + def niRFSG_ResetWithOptions(self, vi, steps_to_omit): # noqa: N802 + with self._func_lock: + if self.niRFSG_ResetWithOptions_cfunc is None: + self.niRFSG_ResetWithOptions_cfunc = self._get_library_function('niRFSG_ResetWithOptions') + self.niRFSG_ResetWithOptions_cfunc.argtypes = [ViSession, ViUInt64] # noqa: F405 + self.niRFSG_ResetWithOptions_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_ResetWithOptions_cfunc(vi, steps_to_omit) + + def niRFSG_RevisionQuery(self, vi, instrument_driver_revision, firmware_revision): # noqa: N802 + with self._func_lock: + if self.niRFSG_RevisionQuery_cfunc is None: + self.niRFSG_RevisionQuery_cfunc = self._get_library_function('niRFSG_RevisionQuery') + self.niRFSG_RevisionQuery_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_RevisionQuery_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_RevisionQuery_cfunc(vi, instrument_driver_revision, firmware_revision) + + def niRFSG_SaveConfigurationsToFile(self, vi, channel_name, file_path): # noqa: N802 + with self._func_lock: + if self.niRFSG_SaveConfigurationsToFile_cfunc is None: + self.niRFSG_SaveConfigurationsToFile_cfunc = self._get_library_function('niRFSG_SaveConfigurationsToFile') + self.niRFSG_SaveConfigurationsToFile_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_SaveConfigurationsToFile_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SaveConfigurationsToFile_cfunc(vi, channel_name, file_path) + + def niRFSG_SelectArbWaveform(self, vi, name): # noqa: N802 + with self._func_lock: + if self.niRFSG_SelectArbWaveform_cfunc is None: + self.niRFSG_SelectArbWaveform_cfunc = self._get_library_function('niRFSG_SelectArbWaveform') + self.niRFSG_SelectArbWaveform_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_SelectArbWaveform_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SelectArbWaveform_cfunc(vi, name) + + def niRFSG_SelfCal(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_SelfCal_cfunc is None: + self.niRFSG_SelfCal_cfunc = self._get_library_function('niRFSG_SelfCal') + self.niRFSG_SelfCal_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_SelfCal_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SelfCal_cfunc(vi) + + def niRFSG_SelfCalibrateRange(self, vi, steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level): # noqa: N802 + with self._func_lock: + if self.niRFSG_SelfCalibrateRange_cfunc is None: + self.niRFSG_SelfCalibrateRange_cfunc = self._get_library_function('niRFSG_SelfCalibrateRange') + self.niRFSG_SelfCalibrateRange_cfunc.argtypes = [ViSession, ViInt64, ViReal64, ViReal64, ViReal64, ViReal64] # noqa: F405 + self.niRFSG_SelfCalibrateRange_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SelfCalibrateRange_cfunc(vi, steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) + + def niRFSG_SelfTest(self, vi, self_test_result, self_test_message): # noqa: N802 + with self._func_lock: + if self.niRFSG_SelfTest_cfunc is None: + self.niRFSG_SelfTest_cfunc = self._get_library_function('niRFSG_SelfTest') + self.niRFSG_SelfTest_cfunc.argtypes = [ViSession, ctypes.POINTER(ViInt16), ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_SelfTest_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SelfTest_cfunc(vi, self_test_result, self_test_message) + + def niRFSG_SendSoftwareEdgeTrigger(self, vi, trigger, trigger_identifier): # noqa: N802 + with self._func_lock: + if self.niRFSG_SendSoftwareEdgeTrigger_cfunc is None: + self.niRFSG_SendSoftwareEdgeTrigger_cfunc = self._get_library_function('niRFSG_SendSoftwareEdgeTrigger') + self.niRFSG_SendSoftwareEdgeTrigger_cfunc.argtypes = [ViSession, ViInt32, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_SendSoftwareEdgeTrigger_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SendSoftwareEdgeTrigger_cfunc(vi, trigger, trigger_identifier) + + def niRFSG_SetArbWaveformNextWritePosition(self, vi, waveform_name, relative_to, offset): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetArbWaveformNextWritePosition_cfunc is None: + self.niRFSG_SetArbWaveformNextWritePosition_cfunc = self._get_library_function('niRFSG_SetArbWaveformNextWritePosition') + self.niRFSG_SetArbWaveformNextWritePosition_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ViInt32] # noqa: F405 + self.niRFSG_SetArbWaveformNextWritePosition_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetArbWaveformNextWritePosition_cfunc(vi, waveform_name, relative_to, offset) + + def niRFSG_SetAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetAttributeViBoolean_cfunc is None: + self.niRFSG_SetAttributeViBoolean_cfunc = self._get_library_function('niRFSG_SetAttributeViBoolean') + self.niRFSG_SetAttributeViBoolean_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViBoolean] # noqa: F405 + self.niRFSG_SetAttributeViBoolean_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetAttributeViBoolean_cfunc(vi, channel_name, attribute, value) + + def niRFSG_SetAttributeViInt32(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetAttributeViInt32_cfunc is None: + self.niRFSG_SetAttributeViInt32_cfunc = self._get_library_function('niRFSG_SetAttributeViInt32') + self.niRFSG_SetAttributeViInt32_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViInt32] # noqa: F405 + self.niRFSG_SetAttributeViInt32_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetAttributeViInt32_cfunc(vi, channel_name, attribute, value) + + def niRFSG_SetAttributeViInt64(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetAttributeViInt64_cfunc is None: + self.niRFSG_SetAttributeViInt64_cfunc = self._get_library_function('niRFSG_SetAttributeViInt64') + self.niRFSG_SetAttributeViInt64_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViInt64] # noqa: F405 + self.niRFSG_SetAttributeViInt64_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetAttributeViInt64_cfunc(vi, channel_name, attribute, value) + + def niRFSG_SetAttributeViReal64(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetAttributeViReal64_cfunc is None: + self.niRFSG_SetAttributeViReal64_cfunc = self._get_library_function('niRFSG_SetAttributeViReal64') + self.niRFSG_SetAttributeViReal64_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViReal64] # noqa: F405 + self.niRFSG_SetAttributeViReal64_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetAttributeViReal64_cfunc(vi, channel_name, attribute, value) + + def niRFSG_SetAttributeViSession(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetAttributeViSession_cfunc is None: + self.niRFSG_SetAttributeViSession_cfunc = self._get_library_function('niRFSG_SetAttributeViSession') + self.niRFSG_SetAttributeViSession_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ViSession] # noqa: F405 + self.niRFSG_SetAttributeViSession_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetAttributeViSession_cfunc(vi, channel_name, attribute, value) + + def niRFSG_SetAttributeViString(self, vi, channel_name, attribute, value): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetAttributeViString_cfunc is None: + self.niRFSG_SetAttributeViString_cfunc = self._get_library_function('niRFSG_SetAttributeViString') + self.niRFSG_SetAttributeViString_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViAttr, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_SetAttributeViString_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetAttributeViString_cfunc(vi, channel_name, attribute, value) + + def niRFSG_SetWaveformBurstStartLocations(self, vi, channel_name, number_of_locations, locations): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetWaveformBurstStartLocations_cfunc is None: + self.niRFSG_SetWaveformBurstStartLocations_cfunc = self._get_library_function('niRFSG_SetWaveformBurstStartLocations') + self.niRFSG_SetWaveformBurstStartLocations_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64)] # noqa: F405 + self.niRFSG_SetWaveformBurstStartLocations_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetWaveformBurstStartLocations_cfunc(vi, channel_name, number_of_locations, locations) + + def niRFSG_SetWaveformBurstStopLocations(self, vi, channel_name, number_of_locations, locations): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetWaveformBurstStopLocations_cfunc is None: + self.niRFSG_SetWaveformBurstStopLocations_cfunc = self._get_library_function('niRFSG_SetWaveformBurstStopLocations') + self.niRFSG_SetWaveformBurstStopLocations_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64)] # noqa: F405 + self.niRFSG_SetWaveformBurstStopLocations_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetWaveformBurstStopLocations_cfunc(vi, channel_name, number_of_locations, locations) + + def niRFSG_SetWaveformMarkerEventLocations(self, vi, channel_name, number_of_locations, locations): # noqa: N802 + with self._func_lock: + if self.niRFSG_SetWaveformMarkerEventLocations_cfunc is None: + self.niRFSG_SetWaveformMarkerEventLocations_cfunc = self._get_library_function('niRFSG_SetWaveformMarkerEventLocations') + self.niRFSG_SetWaveformMarkerEventLocations_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64)] # noqa: F405 + self.niRFSG_SetWaveformMarkerEventLocations_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_SetWaveformMarkerEventLocations_cfunc(vi, channel_name, number_of_locations, locations) + + def niRFSG_UnlockSession(self, vi, caller_has_lock): # noqa: N802 + with self._func_lock: + if self.niRFSG_UnlockSession_cfunc is None: + self.niRFSG_UnlockSession_cfunc = self._get_library_function('niRFSG_UnlockSession') + self.niRFSG_UnlockSession_cfunc.argtypes = [ViSession, ctypes.POINTER(ViBoolean)] # noqa: F405 + self.niRFSG_UnlockSession_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_UnlockSession_cfunc(vi, caller_has_lock) + + def niRFSG_WaitUntilSettled(self, vi, max_time_milliseconds): # noqa: N802 + with self._func_lock: + if self.niRFSG_WaitUntilSettled_cfunc is None: + self.niRFSG_WaitUntilSettled_cfunc = self._get_library_function('niRFSG_WaitUntilSettled') + self.niRFSG_WaitUntilSettled_cfunc.argtypes = [ViSession, ViInt32] # noqa: F405 + self.niRFSG_WaitUntilSettled_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_WaitUntilSettled_cfunc(vi, max_time_milliseconds) + + def niRFSG_WriteArbWaveform(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 + with self._func_lock: + if self.niRFSG_WriteArbWaveform_cfunc is None: + self.niRFSG_WriteArbWaveform_cfunc = self._get_library_function('niRFSG_WriteArbWaveform') + self.niRFSG_WriteArbWaveform_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64), ctypes.POINTER(ViReal64), ViBoolean] # noqa: F405 + self.niRFSG_WriteArbWaveform_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_WriteArbWaveform_cfunc(vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending) + + def niRFSG_WriteArbWaveformF32(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 + with self._func_lock: + if self.niRFSG_WriteArbWaveformF32_cfunc is None: + self.niRFSG_WriteArbWaveformF32_cfunc = self._get_library_function('niRFSG_WriteArbWaveformF32') + self.niRFSG_WriteArbWaveformF32_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal32), ctypes.POINTER(ViReal32), ViBoolean] # noqa: F405 + self.niRFSG_WriteArbWaveformF32_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_WriteArbWaveformF32_cfunc(vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending) + + def niRFSG_WriteP2PEndpointI16(self, vi, stream_endpoint, number_of_samples, endpoint_data): # noqa: N802 + with self._func_lock: + if self.niRFSG_WriteP2PEndpointI16_cfunc is None: + self.niRFSG_WriteP2PEndpointI16_cfunc = self._get_library_function('niRFSG_WriteP2PEndpointI16') + self.niRFSG_WriteP2PEndpointI16_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViInt16)] # noqa: F405 + self.niRFSG_WriteP2PEndpointI16_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_WriteP2PEndpointI16_cfunc(vi, stream_endpoint, number_of_samples, endpoint_data) + + def niRFSG_WriteScript(self, vi, script): # noqa: N802 + with self._func_lock: + if self.niRFSG_WriteScript_cfunc is None: + self.niRFSG_WriteScript_cfunc = self._get_library_function('niRFSG_WriteScript') + self.niRFSG_WriteScript_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 + self.niRFSG_WriteScript_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_WriteScript_cfunc(vi, script) + + def niRFSG_close(self, vi): # noqa: N802 + with self._func_lock: + if self.niRFSG_close_cfunc is None: + self.niRFSG_close_cfunc = self._get_library_function('niRFSG_close') + self.niRFSG_close_cfunc.argtypes = [ViSession] # noqa: F405 + self.niRFSG_close_cfunc.restype = ViStatus # noqa: F405 + return self.niRFSG_close_cfunc(vi) diff --git a/generated/nirfsg/nirfsg/_library_interpreter.py b/generated/nirfsg/nirfsg/_library_interpreter.py new file mode 100644 index 0000000000..9f8451fe40 --- /dev/null +++ b/generated/nirfsg/nirfsg/_library_interpreter.py @@ -0,0 +1,949 @@ +# -*- coding: utf-8 -*- +# This file was generated + +import array +import ctypes +import hightime # noqa: F401 +import nirfsg._library_singleton as _library_singleton +import nirfsg._visatype as _visatype +import nirfsg.enums as enums # noqa: F401 +import nirfsg.errors as errors + + +# Helper functions for creating ctypes needed for calling into the driver DLL +def _get_ctypes_pointer_for_buffer(value=None, library_type=None, size=None): + if isinstance(value, array.array): + assert library_type is not None, 'library_type is required for array.array' + addr, _ = value.buffer_info() + return ctypes.cast(addr, ctypes.POINTER(library_type)) + elif str(type(value)).find("'numpy.ndarray'") != -1: + import numpy + return numpy.ctypeslib.as_ctypes(value) + elif isinstance(value, bytes): + return ctypes.cast(value, ctypes.POINTER(library_type)) + elif isinstance(value, list): + assert library_type is not None, 'library_type is required for list' + return (library_type * len(value))(*value) + else: + if library_type is not None and size is not None: + return (library_type * size)() + else: + return None + + +def _convert_to_array(value, array_type): + if value is not None: + if isinstance(value, array.array): + value_array = value + else: + value_array = array.array(array_type, value) + else: + value_array = None + + return value_array + + +class LibraryInterpreter(object): + '''Library C<->Python interpreter. + + This class is responsible for interpreting the Library's C API. It is responsible for: + * Converting ctypes to native Python types. + * Dealing with string encoding. + * Allocating memory. + * Converting errors returned by Library into Python exceptions. + ''' + + def __init__(self, encoding): + self._encoding = encoding + self._library = _library_singleton.get() + # Initialize _vi to 0 for now. + # Session will directly update it once the driver runtime init function has been called and + # we have a valid session handle. + self.set_session_handle() + + def set_session_handle(self, value=0): + self._vi = value + + def get_session_handle(self): + return self._vi + + def get_error_description(self, error_code): + '''get_error_description + + Returns the error description. + ''' + try: + returned_error_code, error_string = self.get_error() + if returned_error_code == error_code: + return error_string + except errors.Error: + pass + return "Failed to retrieve error description." + + def abort(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_Abort(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def allocate_arb_waveform(self, waveform_name, size_in_samples): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 + size_in_samples_ctype = _visatype.ViInt32(size_in_samples) # case S150 + error_code = self._library.niRFSG_AllocateArbWaveform(vi_ctype, waveform_name_ctype, size_in_samples_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def change_external_calibration_password(self, old_password, new_password): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + old_password_ctype = ctypes.create_string_buffer(old_password.encode(self._encoding)) # case C020 + new_password_ctype = ctypes.create_string_buffer(new_password.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ChangeExternalCalibrationPassword(vi_ctype, old_password_ctype, new_password_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def check_attribute_vi_boolean(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViBoolean(value) # case S150 + error_code = self._library.niRFSG_CheckAttributeViBoolean(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def check_attribute_vi_int32(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViInt32(value) # case S150 + error_code = self._library.niRFSG_CheckAttributeViInt32(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def check_attribute_vi_int64(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViInt64(value) # case S150 + error_code = self._library.niRFSG_CheckAttributeViInt64(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def check_attribute_vi_real64(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViReal64(value) # case S150 + error_code = self._library.niRFSG_CheckAttributeViReal64(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def check_attribute_vi_session(self, channel_name, attribute): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_CheckAttributeViSession(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def check_attribute_vi_string(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = ctypes.create_string_buffer(value.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_CheckAttributeViString(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def check_generation_status(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + is_done_ctype = _visatype.ViBoolean() # case S220 + error_code = self._library.niRFSG_CheckGenerationStatus(vi_ctype, None if is_done_ctype is None else (ctypes.pointer(is_done_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return bool(is_done_ctype.value) + + def check_if_configuration_list_exists(self, list_name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + list_name_ctype = ctypes.create_string_buffer(list_name.encode(self._encoding)) # case C020 + list_exists_ctype = _visatype.ViBoolean() # case S220 + error_code = self._library.niRFSG_CheckIfConfigurationListExists(vi_ctype, list_name_ctype, None if list_exists_ctype is None else (ctypes.pointer(list_exists_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return bool(list_exists_ctype.value) + + def check_if_script_exists(self, script_name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + script_name_ctype = ctypes.create_string_buffer(script_name.encode(self._encoding)) # case C020 + script_exists_ctype = _visatype.ViBoolean() # case S220 + error_code = self._library.niRFSG_CheckIfScriptExists(vi_ctype, script_name_ctype, None if script_exists_ctype is None else (ctypes.pointer(script_exists_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return bool(script_exists_ctype.value) + + def check_if_waveform_exists(self, waveform_name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 + waveform_exists_ctype = _visatype.ViBoolean() # case S220 + error_code = self._library.niRFSG_CheckIfWaveformExists(vi_ctype, waveform_name_ctype, None if waveform_exists_ctype is None else (ctypes.pointer(waveform_exists_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return bool(waveform_exists_ctype.value) + + def clear_all_arb_waveforms(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_ClearAllArbWaveforms(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def clear_arb_waveform(self, name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + name_ctype = ctypes.create_string_buffer(name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ClearArbWaveform(vi_ctype, name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def clear_error(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_ClearError(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def clear_self_calibrate_range(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_ClearSelfCalibrateRange(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def commit(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_Commit(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_deembedding_table_interpolation_linear(self, port, table_name, format): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 + table_name_ctype = ctypes.create_string_buffer(table_name.encode(self._encoding)) # case C020 + format_ctype = _visatype.ViInt32(format.value) # case S130 + error_code = self._library.niRFSG_ConfigureDeembeddingTableInterpolationLinear(vi_ctype, port_ctype, table_name_ctype, format_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_deembedding_table_interpolation_nearest(self, port, table_name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 + table_name_ctype = ctypes.create_string_buffer(table_name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ConfigureDeembeddingTableInterpolationNearest(vi_ctype, port_ctype, table_name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_deembedding_table_interpolation_spline(self, port, table_name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 + table_name_ctype = ctypes.create_string_buffer(table_name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ConfigureDeembeddingTableInterpolationSpline(vi_ctype, port_ctype, table_name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_digital_edge_configuration_list_step_trigger(self, source, edge): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + source_ctype = ctypes.create_string_buffer(source.encode(self._encoding)) # case C020 + edge_ctype = _visatype.ViInt32(edge) # case S150 + error_code = self._library.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger(vi_ctype, source_ctype, edge_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_digital_edge_script_trigger(self, trigger_id, source, edge): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + trigger_id_ctype = ctypes.create_string_buffer(trigger_id.encode(self._encoding)) # case C020 + source_ctype = ctypes.create_string_buffer(source.encode(self._encoding)) # case C020 + edge_ctype = _visatype.ViInt32(edge) # case S150 + error_code = self._library.niRFSG_ConfigureDigitalEdgeScriptTrigger(vi_ctype, trigger_id_ctype, source_ctype, edge_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_digital_edge_start_trigger(self, source, edge): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + source_ctype = ctypes.create_string_buffer(source.encode(self._encoding)) # case C020 + edge_ctype = _visatype.ViInt32(edge) # case S150 + error_code = self._library.niRFSG_ConfigureDigitalEdgeStartTrigger(vi_ctype, source_ctype, edge_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_digital_level_script_trigger(self, trigger_id, source, level): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + trigger_id_ctype = ctypes.create_string_buffer(trigger_id.encode(self._encoding)) # case C020 + source_ctype = ctypes.create_string_buffer(source.encode(self._encoding)) # case C020 + level_ctype = _visatype.ViInt32(level) # case S150 + error_code = self._library.niRFSG_ConfigureDigitalLevelScriptTrigger(vi_ctype, trigger_id_ctype, source_ctype, level_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_digital_modulation_user_defined_waveform(self, number_of_samples, user_defined_waveform): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + number_of_samples_ctype = _visatype.ViInt32(0 if user_defined_waveform is None else len(user_defined_waveform)) # case S160 + user_defined_waveform_ctype = _get_ctypes_pointer_for_buffer(value=user_defined_waveform, library_type=_visatype.ViInt8) # case B550 + error_code = self._library.niRFSG_ConfigureDigitalModulationUserDefinedWaveform(vi_ctype, number_of_samples_ctype, user_defined_waveform_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_generation_mode(self, generation_mode): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + generation_mode_ctype = _visatype.ViInt32(generation_mode) # case S150 + error_code = self._library.niRFSG_ConfigureGenerationMode(vi_ctype, generation_mode_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_output_enabled(self, output_enabled): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + output_enabled_ctype = _visatype.ViBoolean(output_enabled) # case S150 + error_code = self._library.niRFSG_ConfigureOutputEnabled(vi_ctype, output_enabled_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_p2_p_endpoint_fullness_start_trigger(self, p2p_endpoint_fullness_level): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + p2p_endpoint_fullness_level_ctype = _visatype.ViInt64(p2p_endpoint_fullness_level) # case S150 + error_code = self._library.niRFSG_ConfigureP2PEndpointFullnessStartTrigger(vi_ctype, p2p_endpoint_fullness_level_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_power_level_type(self, power_level_type): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + power_level_type_ctype = _visatype.ViInt32(power_level_type) # case S150 + error_code = self._library.niRFSG_ConfigurePowerLevelType(vi_ctype, power_level_type_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_pxi_chassis_clk10(self, pxi_clk10_source): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + pxi_clk10_source_ctype = ctypes.create_string_buffer(pxi_clk10_source.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ConfigurePxiChassisClk10(vi_ctype, pxi_clk10_source_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_rf(self, frequency, power_level): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + frequency_ctype = _visatype.ViReal64(frequency) # case S150 + power_level_ctype = _visatype.ViReal64(power_level) # case S150 + error_code = self._library.niRFSG_ConfigureRF(vi_ctype, frequency_ctype, power_level_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_ref_clock(self, ref_clock_source, ref_clock_rate): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + ref_clock_source_ctype = ctypes.create_string_buffer(ref_clock_source.encode(self._encoding)) # case C020 + ref_clock_rate_ctype = _visatype.ViReal64(ref_clock_rate) # case S150 + error_code = self._library.niRFSG_ConfigureRefClock(vi_ctype, ref_clock_source_ctype, ref_clock_rate_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_signal_bandwidth(self, signal_bandwidth): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + signal_bandwidth_ctype = _visatype.ViReal64(signal_bandwidth) # case S150 + error_code = self._library.niRFSG_ConfigureSignalBandwidth(vi_ctype, signal_bandwidth_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_software_script_trigger(self, trigger_id): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + trigger_id_ctype = ctypes.create_string_buffer(trigger_id.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ConfigureSoftwareScriptTrigger(vi_ctype, trigger_id_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def configure_software_start_trigger(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_ConfigureSoftwareStartTrigger(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def create_configuration_list(self, list_name, configuration_list_attributes, set_as_active_list): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + list_name_ctype = ctypes.create_string_buffer(list_name.encode(self._encoding)) # case C020 + number_of_attributes_ctype = _visatype.ViInt32(0 if configuration_list_attributes is None else len(configuration_list_attributes)) # case S160 + configuration_list_attributes_ctype = _get_ctypes_pointer_for_buffer(value=configuration_list_attributes, library_type=_visatype.ViAttr) # case B550 + set_as_active_list_ctype = _visatype.ViBoolean(set_as_active_list) # case S150 + error_code = self._library.niRFSG_CreateConfigurationList(vi_ctype, list_name_ctype, number_of_attributes_ctype, configuration_list_attributes_ctype, set_as_active_list_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def create_configuration_list_step(self, set_as_active_step): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + set_as_active_step_ctype = _visatype.ViBoolean(set_as_active_step) # case S150 + error_code = self._library.niRFSG_CreateConfigurationListStep(vi_ctype, set_as_active_step_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_file_path, sparameter_orientation): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 + table_name_ctype = ctypes.create_string_buffer(table_name.encode(self._encoding)) # case C020 + s2p_file_path_ctype = ctypes.create_string_buffer(s2p_file_path.encode(self._encoding)) # case C020 + sparameter_orientation_ctype = _visatype.ViInt32(sparameter_orientation) # case S150 + error_code = self._library.niRFSG_CreateDeembeddingSparameterTableS2PFile(vi_ctype, port_ctype, table_name_ctype, s2p_file_path_ctype, sparameter_orientation_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def delete_all_deembedding_tables(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_DeleteAllDeembeddingTables(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def delete_configuration_list(self, list_name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + list_name_ctype = ctypes.create_string_buffer(list_name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_DeleteConfigurationList(vi_ctype, list_name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def delete_deembedding_table(self, port, table_name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 + table_name_ctype = ctypes.create_string_buffer(table_name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_DeleteDeembeddingTable(vi_ctype, port_ctype, table_name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def disable(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_Disable(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def disable_configuration_list_step_trigger(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_DisableConfigurationListStepTrigger(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def disable_script_trigger(self, trigger_id): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + trigger_id_ctype = ctypes.create_string_buffer(trigger_id.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_DisableScriptTrigger(vi_ctype, trigger_id_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def disable_start_trigger(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_DisableStartTrigger(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def error_message(self, error_code, error_message): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code_ctype = _visatype.ViStatus(error_code) # case S150 + error_message_ctype = ctypes.create_string_buffer(error_message.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ErrorMessage(vi_ctype, error_code_ctype, error_message_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=True) + return + + def error_query(self, error_message): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code_ctype = _visatype.ViInt32() # case S220 + error_message_ctype = ctypes.create_string_buffer(error_message.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ErrorQuery(vi_ctype, None if error_code_ctype is None else (ctypes.pointer(error_code_ctype)), error_message_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(error_code_ctype.value) + + def export_signal(self, signal, signal_identifier, output_terminal): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + signal_ctype = _visatype.ViInt32(signal) # case S150 + signal_identifier_ctype = ctypes.create_string_buffer(signal_identifier.encode(self._encoding)) # case C020 + output_terminal_ctype = ctypes.create_string_buffer(output_terminal.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_ExportSignal(vi_ctype, signal_ctype, signal_identifier_ctype, output_terminal_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def get_all_named_waveform_names(self, buffer_size): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + waveform_names_ctype = ctypes.create_string_buffer(waveform_names.encode(self._encoding)) # case C020 + buffer_size_ctype = _visatype.ViInt32(0 if waveform_names is None else len(waveform_names)) # case S160 + actual_buffer_size_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetAllNamedWaveformNames(vi_ctype, waveform_names_ctype, buffer_size_ctype, None if actual_buffer_size_ctype is None else (ctypes.pointer(actual_buffer_size_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(actual_buffer_size_ctype.value) + + def get_all_script_names(self, buffer_size): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + script_names_ctype = ctypes.create_string_buffer(script_names.encode(self._encoding)) # case C020 + buffer_size_ctype = _visatype.ViInt32(0 if script_names is None else len(script_names)) # case S160 + actual_buffer_size_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetAllScriptNames(vi_ctype, script_names_ctype, buffer_size_ctype, None if actual_buffer_size_ctype is None else (ctypes.pointer(actual_buffer_size_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(actual_buffer_size_ctype.value) + + def get_attribute_vi_boolean(self, channel_name, attribute): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViBoolean() # case S220 + error_code = self._library.niRFSG_GetAttributeViBoolean(vi_ctype, channel_name_ctype, attribute_ctype, None if value_ctype is None else (ctypes.pointer(value_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return bool(value_ctype.value) + + def get_attribute_vi_int32(self, channel_name, attribute): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetAttributeViInt32(vi_ctype, channel_name_ctype, attribute_ctype, None if value_ctype is None else (ctypes.pointer(value_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(value_ctype.value) + + def get_attribute_vi_int64(self, channel_name, attribute): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViInt64() # case S220 + error_code = self._library.niRFSG_GetAttributeViInt64(vi_ctype, channel_name_ctype, attribute_ctype, None if value_ctype is None else (ctypes.pointer(value_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(value_ctype.value) + + def get_attribute_vi_real64(self, channel_name, attribute): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViReal64() # case S220 + error_code = self._library.niRFSG_GetAttributeViReal64(vi_ctype, channel_name_ctype, attribute_ctype, None if value_ctype is None else (ctypes.pointer(value_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(value_ctype.value) + + def get_attribute_vi_session(self, channel_name, attribute): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViSession() # case S220 + error_code = self._library.niRFSG_GetAttributeViSession(vi_ctype, channel_name_ctype, attribute_ctype, None if value_ctype is None else (ctypes.pointer(value_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(value_ctype.value) + + def get_attribute_vi_string(self, channel_name, attribute, buf_size): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + buf_size_ctype = _visatype.ViInt32(0 if value is None else len(value)) # case S160 + value_ctype = ctypes.create_string_buffer(value.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_GetAttributeViString(vi_ctype, channel_name_ctype, attribute_ctype, buf_size_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def get_channel_name(self, index, buffer_size): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + index_ctype = _visatype.ViInt32(index) # case S150 + buffer_size_ctype = _visatype.ViInt32(0 if name is None else len(name)) # case S160 + name_ctype = ctypes.create_string_buffer(name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_GetChannelName(vi_ctype, index_ctype, buffer_size_ctype, name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def get_deembedding_sparameters(self, sparameters_array_size): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + sparameters_ctype = _visatype.ni_complex_number() # case S220 + sparameters_array_size_ctype = _visatype.ViInt32(sparameters_array_size) # case S150 + number_of_sparameters_ctype = _visatype.ViInt32() # case S220 + number_of_ports_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetDeembeddingSparameters(vi_ctype, None if sparameters_ctype is None else (ctypes.pointer(sparameters_ctype)), sparameters_array_size_ctype, None if number_of_sparameters_ctype is None else (ctypes.pointer(number_of_sparameters_ctype)), None if number_of_ports_ctype is None else (ctypes.pointer(number_of_ports_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return ni_complex_number(sparameters_ctype.value), int(number_of_sparameters_ctype.value), int(number_of_ports_ctype.value) + + def get_error(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code_ctype = _visatype.ViStatus() # case S220 + error_description_buffer_size_ctype = _visatype.ViInt32() # case S170 + error_description_ctype = None # case C050 + error_code = self._library.niRFSG_GetError(vi_ctype, None if error_code_ctype is None else (ctypes.pointer(error_code_ctype)), error_description_buffer_size_ctype, error_description_ctype) + errors.handle_error(self, error_code, ignore_warnings=True, is_error_handling=True) + error_description_buffer_size_ctype = _visatype.ViInt32(error_code) # case S180 + error_description_ctype = (_visatype.ViChar * error_description_buffer_size_ctype.value)() # case C060 + error_code = self._library.niRFSG_GetError(vi_ctype, None if error_code_ctype is None else (ctypes.pointer(error_code_ctype)), error_description_buffer_size_ctype, error_description_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=True) + return int(error_code_ctype.value), error_description_ctype.value.decode(self._encoding) + + def get_external_calibration_last_date_and_time(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + year_ctype = _visatype.ViInt32() # case S220 + month_ctype = _visatype.ViInt32() # case S220 + day_ctype = _visatype.ViInt32() # case S220 + hour_ctype = _visatype.ViInt32() # case S220 + minute_ctype = _visatype.ViInt32() # case S220 + second_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetExternalCalibrationLastDateAndTime(vi_ctype, None if year_ctype is None else (ctypes.pointer(year_ctype)), None if month_ctype is None else (ctypes.pointer(month_ctype)), None if day_ctype is None else (ctypes.pointer(day_ctype)), None if hour_ctype is None else (ctypes.pointer(hour_ctype)), None if minute_ctype is None else (ctypes.pointer(minute_ctype)), None if second_ctype is None else (ctypes.pointer(second_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(year_ctype.value), int(month_ctype.value), int(day_ctype.value), int(hour_ctype.value), int(minute_ctype.value), int(second_ctype.value) + + def get_max_settable_power(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + value_ctype = _visatype.ViReal64() # case S220 + error_code = self._library.niRFSG_GetMaxSettablePower(vi_ctype, None if value_ctype is None else (ctypes.pointer(value_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(value_ctype.value) + + def get_self_calibration_date_and_time(self, module): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + module_ctype = _visatype.ViInt32(module) # case S150 + year_ctype = _visatype.ViInt32() # case S220 + month_ctype = _visatype.ViInt32() # case S220 + day_ctype = _visatype.ViInt32() # case S220 + hour_ctype = _visatype.ViInt32() # case S220 + minute_ctype = _visatype.ViInt32() # case S220 + second_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetSelfCalibrationDateAndTime(vi_ctype, module_ctype, None if year_ctype is None else (ctypes.pointer(year_ctype)), None if month_ctype is None else (ctypes.pointer(month_ctype)), None if day_ctype is None else (ctypes.pointer(day_ctype)), None if hour_ctype is None else (ctypes.pointer(hour_ctype)), None if minute_ctype is None else (ctypes.pointer(minute_ctype)), None if second_ctype is None else (ctypes.pointer(second_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(year_ctype.value), int(month_ctype.value), int(day_ctype.value), int(hour_ctype.value), int(minute_ctype.value), int(second_ctype.value) + + def get_self_calibration_temperature(self, module): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + module_ctype = _visatype.ViInt32(module) # case S150 + temperature_ctype = _visatype.ViReal64() # case S220 + error_code = self._library.niRFSG_GetSelfCalibrationTemperature(vi_ctype, module_ctype, None if temperature_ctype is None else (ctypes.pointer(temperature_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(temperature_ctype.value) + + def get_stream_endpoint_handle(self, stream_endpoint): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + stream_endpoint_ctype = ctypes.create_string_buffer(stream_endpoint.encode(self._encoding)) # case C020 + reader_handle_ctype = _visatype.ViUInt32() # case S220 + error_code = self._library.niRFSG_GetStreamEndpointHandle(vi_ctype, stream_endpoint_ctype, None if reader_handle_ctype is None else (ctypes.pointer(reader_handle_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(reader_handle_ctype.value) + + def get_terminal_name(self, signal, signal_identifier, buffer_size): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + signal_ctype = _visatype.ViInt32(signal) # case S150 + signal_identifier_ctype = ctypes.create_string_buffer(signal_identifier.encode(self._encoding)) # case C020 + buffer_size_ctype = _visatype.ViInt32(0 if terminal_name is None else len(terminal_name)) # case S160 + terminal_name_ctype = ctypes.create_string_buffer(terminal_name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_GetTerminalName(vi_ctype, signal_ctype, signal_identifier_ctype, buffer_size_ctype, terminal_name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def get_waveform_burst_start_locations(self, channel_name, number_of_locations): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + number_of_locations_ctype = _visatype.ViInt32(number_of_locations) # case S150 + locations_ctype = _visatype.ViReal64() # case S220 + required_size_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetWaveformBurstStartLocations(vi_ctype, channel_name_ctype, number_of_locations_ctype, None if locations_ctype is None else (ctypes.pointer(locations_ctype)), None if required_size_ctype is None else (ctypes.pointer(required_size_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(locations_ctype.value), int(required_size_ctype.value) + + def get_waveform_burst_stop_locations(self, channel_name, number_of_locations): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + number_of_locations_ctype = _visatype.ViInt32(number_of_locations) # case S150 + locations_ctype = _visatype.ViReal64() # case S220 + required_size_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetWaveformBurstStopLocations(vi_ctype, channel_name_ctype, number_of_locations_ctype, None if locations_ctype is None else (ctypes.pointer(locations_ctype)), None if required_size_ctype is None else (ctypes.pointer(required_size_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(locations_ctype.value), int(required_size_ctype.value) + + def get_waveform_marker_event_locations(self, channel_name, number_of_locations): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + number_of_locations_ctype = _visatype.ViInt32(number_of_locations) # case S150 + locations_ctype = _visatype.ViReal64() # case S220 + required_size_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_GetWaveformMarkerEventLocations(vi_ctype, channel_name_ctype, number_of_locations_ctype, None if locations_ctype is None else (ctypes.pointer(locations_ctype)), None if required_size_ctype is None else (ctypes.pointer(required_size_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(locations_ctype.value), int(required_size_ctype.value) + + def init_with_options(self, resource_name, id_query, reset_device, option_string): # noqa: N802 + resource_name_ctype = ctypes.create_string_buffer(resource_name.encode(self._encoding)) # case C020 + id_query_ctype = _visatype.ViBoolean(id_query) # case S150 + reset_device_ctype = _visatype.ViBoolean(reset_device) # case S150 + option_string_ctype = ctypes.create_string_buffer(option_string.encode(self._encoding)) # case C020 + new_vi_ctype = _visatype.ViSession() # case S220 + error_code = self._library.niRFSG_InitWithOptions(resource_name_ctype, id_query_ctype, reset_device_ctype, option_string_ctype, None if new_vi_ctype is None else (ctypes.pointer(new_vi_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(new_vi_ctype.value) + + def initiate(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_Initiate(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def load_configurations_from_file(self, channel_name, file_path): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + file_path_ctype = ctypes.create_string_buffer(file_path.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_LoadConfigurationsFromFile(vi_ctype, channel_name_ctype, file_path_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def lock(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_LockSession(vi_ctype, None) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def perform_power_search(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_PerformPowerSearch(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def perform_thermal_correction(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_PerformThermalCorrection(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def query_arb_waveform_capabilities(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + max_number_waveforms_ctype = _visatype.ViInt32() # case S220 + waveform_quantum_ctype = _visatype.ViInt32() # case S220 + min_waveform_size_ctype = _visatype.ViInt32() # case S220 + max_waveform_size_ctype = _visatype.ViInt32() # case S220 + error_code = self._library.niRFSG_QueryArbWaveformCapabilities(vi_ctype, None if max_number_waveforms_ctype is None else (ctypes.pointer(max_number_waveforms_ctype)), None if waveform_quantum_ctype is None else (ctypes.pointer(waveform_quantum_ctype)), None if min_waveform_size_ctype is None else (ctypes.pointer(min_waveform_size_ctype)), None if max_waveform_size_ctype is None else (ctypes.pointer(max_waveform_size_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(max_number_waveforms_ctype.value), int(waveform_quantum_ctype.value), int(min_waveform_size_ctype.value), int(max_waveform_size_ctype.value) + + def read_and_download_waveform_from_file_tdms(self, waveform_name, file_path, waveform_index): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 + file_path_ctype = ctypes.create_string_buffer(file_path.encode(self._encoding)) # case C020 + waveform_index_ctype = _visatype.ViUInt32(waveform_index) # case S150 + error_code = self._library.niRFSG_ReadAndDownloadWaveformFromFileTDMS(vi_ctype, waveform_name_ctype, file_path_ctype, waveform_index_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def reset(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_Reset(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def reset_attribute(self, channel_name, attribute_id): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_id_ctype = _visatype.ViAttr(attribute_id) # case S150 + error_code = self._library.niRFSG_ResetAttribute(vi_ctype, channel_name_ctype, attribute_id_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def reset_device(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_ResetDevice(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def reset_with_defaults(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_ResetWithDefaults(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def reset_with_options(self, steps_to_omit): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + steps_to_omit_ctype = _visatype.ViUInt64(steps_to_omit) # case S150 + error_code = self._library.niRFSG_ResetWithOptions(vi_ctype, steps_to_omit_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def revision_query(self, instrument_driver_revision, firmware_revision): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + instrument_driver_revision_ctype = ctypes.create_string_buffer(instrument_driver_revision.encode(self._encoding)) # case C020 + firmware_revision_ctype = ctypes.create_string_buffer(firmware_revision.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_RevisionQuery(vi_ctype, instrument_driver_revision_ctype, firmware_revision_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def save_configurations_to_file(self, channel_name, file_path): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + file_path_ctype = ctypes.create_string_buffer(file_path.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_SaveConfigurationsToFile(vi_ctype, channel_name_ctype, file_path_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def select_arb_waveform(self, name): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + name_ctype = ctypes.create_string_buffer(name.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_SelectArbWaveform(vi_ctype, name_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def self_cal(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_SelfCal(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + steps_to_omit_ctype = _visatype.ViInt64(steps_to_omit) # case S150 + min_frequency_ctype = _visatype.ViReal64(min_frequency) # case S150 + max_frequency_ctype = _visatype.ViReal64(max_frequency) # case S150 + min_power_level_ctype = _visatype.ViReal64(min_power_level) # case S150 + max_power_level_ctype = _visatype.ViReal64(max_power_level) # case S150 + error_code = self._library.niRFSG_SelfCalibrateRange(vi_ctype, steps_to_omit_ctype, min_frequency_ctype, max_frequency_ctype, min_power_level_ctype, max_power_level_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def self_test(self, self_test_message): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + self_test_result_ctype = _visatype.ViInt16() # case S220 + self_test_message_ctype = ctypes.create_string_buffer(self_test_message.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_SelfTest(vi_ctype, None if self_test_result_ctype is None else (ctypes.pointer(self_test_result_ctype)), self_test_message_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return int(self_test_result_ctype.value) + + def send_software_edge_trigger(self, trigger, trigger_identifier): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + trigger_ctype = _visatype.ViInt32(trigger) # case S150 + trigger_identifier_ctype = ctypes.create_string_buffer(trigger_identifier.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_SendSoftwareEdgeTrigger(vi_ctype, trigger_ctype, trigger_identifier_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offset): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 + relative_to_ctype = _visatype.ViInt32(relative_to) # case S150 + offset_ctype = _visatype.ViInt32(offset) # case S150 + error_code = self._library.niRFSG_SetArbWaveformNextWritePosition(vi_ctype, waveform_name_ctype, relative_to_ctype, offset_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_attribute_vi_boolean(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViBoolean(value) # case S150 + error_code = self._library.niRFSG_SetAttributeViBoolean(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_attribute_vi_int32(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViInt32(value) # case S150 + error_code = self._library.niRFSG_SetAttributeViInt32(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_attribute_vi_int64(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViInt64(value) # case S150 + error_code = self._library.niRFSG_SetAttributeViInt64(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_attribute_vi_real64(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViReal64(value) # case S150 + error_code = self._library.niRFSG_SetAttributeViReal64(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_attribute_vi_session(self, channel_name, attribute): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_SetAttributeViSession(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_attribute_vi_string(self, channel_name, attribute, value): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + attribute_ctype = _visatype.ViAttr(attribute) # case S150 + value_ctype = ctypes.create_string_buffer(value.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_SetAttributeViString(vi_ctype, channel_name_ctype, attribute_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def set_waveform_burst_start_locations(self, channel_name, number_of_locations): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + number_of_locations_ctype = _visatype.ViInt32(number_of_locations) # case S150 + locations_ctype = _visatype.ViReal64() # case S220 + error_code = self._library.niRFSG_SetWaveformBurstStartLocations(vi_ctype, channel_name_ctype, number_of_locations_ctype, None if locations_ctype is None else (ctypes.pointer(locations_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(locations_ctype.value) + + def set_waveform_burst_stop_locations(self, channel_name, number_of_locations): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + number_of_locations_ctype = _visatype.ViInt32(number_of_locations) # case S150 + locations_ctype = _visatype.ViReal64() # case S220 + error_code = self._library.niRFSG_SetWaveformBurstStopLocations(vi_ctype, channel_name_ctype, number_of_locations_ctype, None if locations_ctype is None else (ctypes.pointer(locations_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(locations_ctype.value) + + def set_waveform_marker_event_locations(self, channel_name, number_of_locations): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 + number_of_locations_ctype = _visatype.ViInt32(number_of_locations) # case S150 + locations_ctype = _visatype.ViReal64() # case S220 + error_code = self._library.niRFSG_SetWaveformMarkerEventLocations(vi_ctype, channel_name_ctype, number_of_locations_ctype, None if locations_ctype is None else (ctypes.pointer(locations_ctype))) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return float(locations_ctype.value) + + def unlock(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_UnlockSession(vi_ctype, None) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def wait_until_settled(self, max_time_milliseconds): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + max_time_milliseconds_ctype = _visatype.ViInt32(max_time_milliseconds) # case S150 + error_code = self._library.niRFSG_WaitUntilSettled(vi_ctype, max_time_milliseconds_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def write_arb_waveform(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 + number_of_samples_ctype = _visatype.ViInt32(0 if i_data is None else len(i_data)) # case S160 + i_data_array = _convert_to_array(value=i_data, array_type="d") # case B550 + i_data_ctype = _get_ctypes_pointer_for_buffer(value=i_data_array, library_type=_visatype.ViReal64) # case B550 + q_data_array = _convert_to_array(value=q_data, array_type="d") # case B550 + q_data_ctype = _get_ctypes_pointer_for_buffer(value=q_data_array, library_type=_visatype.ViReal64) # case B550 + more_data_pending_ctype = _visatype.ViBoolean(more_data_pending) # case S150 + error_code = self._library.niRFSG_WriteArbWaveform(vi_ctype, waveform_name_ctype, number_of_samples_ctype, i_data_ctype, q_data_ctype, more_data_pending_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def write_arb_waveform_f32(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 + number_of_samples_ctype = _visatype.ViInt32(0 if i_data is None else len(i_data)) # case S160 + i_data_array = _convert_to_array(value=i_data, array_type="f") # case B550 + i_data_ctype = _get_ctypes_pointer_for_buffer(value=i_data_array, library_type=_visatype.ViReal32) # case B550 + q_data_array = _convert_to_array(value=q_data, array_type="f") # case B550 + q_data_ctype = _get_ctypes_pointer_for_buffer(value=q_data_array, library_type=_visatype.ViReal32) # case B550 + more_data_pending_ctype = _visatype.ViBoolean(more_data_pending) # case S150 + error_code = self._library.niRFSG_WriteArbWaveformF32(vi_ctype, waveform_name_ctype, number_of_samples_ctype, i_data_ctype, q_data_ctype, more_data_pending_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_data): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + stream_endpoint_ctype = ctypes.create_string_buffer(stream_endpoint.encode(self._encoding)) # case C020 + number_of_samples_ctype = _visatype.ViInt32(0 if endpoint_data is None else len(endpoint_data)) # case S160 + endpoint_data_ctype = _get_ctypes_pointer_for_buffer(value=endpoint_data, library_type=_visatype.ViInt16) # case B550 + error_code = self._library.niRFSG_WriteP2PEndpointI16(vi_ctype, stream_endpoint_ctype, number_of_samples_ctype, endpoint_data_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def write_script(self, script): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + script_ctype = ctypes.create_string_buffer(script.encode(self._encoding)) # case C020 + error_code = self._library.niRFSG_WriteScript(vi_ctype, script_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return + + def close(self): # noqa: N802 + vi_ctype = _visatype.ViSession(self._vi) # case S110 + error_code = self._library.niRFSG_close(vi_ctype) + errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) + return diff --git a/generated/nirfsg/nirfsg/_library_singleton.py b/generated/nirfsg/nirfsg/_library_singleton.py new file mode 100644 index 0000000000..1259095de0 --- /dev/null +++ b/generated/nirfsg/nirfsg/_library_singleton.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- +# This file was generated + +import platform + +import ctypes +import ctypes.util +import nirfsg._library as _library +import nirfsg.errors as errors +import threading + + +_instance = None +_instance_lock = threading.Lock() +_library_info = {'Linux': {'64bit': {'name': 'nirfsg', 'type': 'cdll'}}, + 'Windows': {'32bit': {'name': 'niRFSG.dll', 'type': 'windll'}, + '64bit': {'name': 'niRFSG_64.dll', 'type': 'cdll'}}} + + +def _get_library_name(): + try: + lib_name = ctypes.util.find_library(_library_info[platform.system()][platform.architecture()[0]]['name']) # We find and return full path to the DLL + if lib_name is None: + raise errors.DriverNotInstalledError() + return lib_name + except KeyError: + raise errors.UnsupportedConfigurationError + + +def _get_library_type(): + try: + return _library_info[platform.system()][platform.architecture()[0]]['type'] + except KeyError: + raise errors.UnsupportedConfigurationError + + +def get(): + '''get + + Returns the library.Library singleton for nirfsg. + ''' + global _instance + global _instance_lock + + with _instance_lock: + if _instance is None: + try: + library_type = _get_library_type() + if library_type == 'windll': + ctypes_library = ctypes.WinDLL(_get_library_name()) + else: + assert library_type == 'cdll' + ctypes_library = ctypes.CDLL(_get_library_name()) + except OSError: + raise errors.DriverNotInstalledError() + _instance = _library.Library(ctypes_library) + return _instance + diff --git a/generated/nirfsg/nirfsg/_visatype.py b/generated/nirfsg/nirfsg/_visatype.py new file mode 100644 index 0000000000..d9a2917b88 --- /dev/null +++ b/generated/nirfsg/nirfsg/_visatype.py @@ -0,0 +1,28 @@ +import ctypes + + +'''Definitions of the VISA types used by the C API of the driver runtime. +These are aliased directly to ctypes types so can be used directly to call into the library. +''' + + +ViChar = ctypes.c_char +ViInt8 = ctypes.c_int8 +ViUInt8 = ctypes.c_uint8 +ViInt16 = ctypes.c_int16 +ViUInt16 = ctypes.c_uint16 +ViInt32 = ctypes.c_int32 +ViUInt32 = ctypes.c_uint32 +ViInt64 = ctypes.c_int64 +ViString = ctypes.c_char_p +ViReal32 = ctypes.c_float +ViReal64 = ctypes.c_double + +# Types that are based on other visatypes +ViBoolean = ViUInt16 +ViStatus = ViInt32 +ViSession = ViUInt32 +ViAttr = ViUInt32 +ViConstString = ViString +ViRsrc = ViString + diff --git a/generated/nirfsg/nirfsg/enums.py b/generated/nirfsg/nirfsg/enums.py new file mode 100644 index 0000000000..2dfc1c0c60 --- /dev/null +++ b/generated/nirfsg/nirfsg/enums.py @@ -0,0 +1,2045 @@ +# -*- coding: utf-8 -*- +# This file was generated + +from enum import Enum + + +class AllowOutOfSpecificationUserSettings(Enum): + DISABLE = 0 + r''' + Disables out-of-specification user settings. + ''' + ENABLE = 1 + r''' + Enables out-of-specification user settings. + ''' + + +class AmpPath(Enum): + HIGH_POWER = 16000 + r''' + Sets the amplification path to use the high power path. + ''' + LOW_HARMONIC = 16001 + r''' + Sets the amplification path to use the low harmonic path. + ''' + + +class AnlgModFmBand(Enum): + NARROWBAND = 17000 + r''' + Specifies narrowband frequency modulation. + ''' + WIDEBAND = 17001 + r''' + Specifies wideband frequency modulation. + ''' + + +class AnlgModFmNarrowbandIntegrator(Enum): + _100hzto1khz = 18000 + r''' + Specifies a range from 100Hz to 1kHz. + ''' + _1khzto10khz = 18001 + r''' + Specifies a range from 1kHz to 10kHz. + ''' + _10khzto100khz = 18002 + r''' + Specifies a range from 10kHz to 100kHz. + ''' + + +class AnlgModPmMode(Enum): + HIGH_DEVIATION = 19000 + r''' + Specifies high deviation. High deviation comes at the expense of a higher phase noise. + ''' + LOW_PHASE_NOISE = 19001 + r''' + Specifies low phase noise. Low phase noise comes at the expense of a lower maximum deviation. + ''' + + +class AnlgModType(Enum): + NONE = 0 + r''' + Disables analog modulation. + ''' + FM = 2000 + r''' + Specifies that the analog modulation type is FM. + ''' + PM = 2001 + r''' + Specifies that the analog modulation type is PM. + ''' + AM = 2002 + r''' + Specifies that the analog modulation type is AM. + ''' + + +class AnlgModWfmType(Enum): + SINE = 3000 + r''' + Specifies that the analog modulation waveform type is sine. + ''' + SQUARE = 3001 + r''' + Specifies that the analog modulation waveform type is square. + ''' + TRIANGLE = 3002 + r''' + Specifies that the analog modulation waveform type is triangle. + ''' + + +class ArbOnboardSampleClockMode(Enum): + HIGH_RESOLUTION = 6000 + r''' + Sample rates are generated by a high-resolution clock. + ''' + DIVIDE_DOWN = 6001 + r''' + Sample rates are generated by dividing the source frequency. + ''' + + +class ArbSampleClockSource(Enum): + ONBOARD_CLOCK = 'OnboardClock' + r''' + Uses the AWG module onboard clock as the Sample Clock source. + ''' + CLK_IN = 'ClkIn' + r''' + Uses the external clock as the Sample Clock source. + ''' + + +class AutomaticLevelControl(Enum): + DISABLE = 0 + r''' + Disables ALC. + ''' + ENABLE = 1 + r''' + Enables the ALC. + ''' + + +class AutomaticPowerSearch(Enum): + DISABLE = 0 + r''' + Disables automatic power search. + ''' + ENABLE = 1 + r''' + Enables automatic power search. + ''' + + +class AutomaticThermalCorrection(Enum): + DISABLE = 0 + r''' + Automatic thermal correction is disabled. + ''' + ENABLE = 1 + r''' + Automatic thermal correction is enabled. + ''' + + +class ConfigListTrigDigEdgeEdge(Enum): + EDGE = 0 + r''' + Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level. + ''' + + +class ConfigListTrigDigEdgeSource(Enum): + PFI0 = 'PFI0' + r''' + The trigger is received on PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The trigger is received on PFI 1. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The trigger is received on PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The trigger is received on PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The trigger is received on PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The trigger is received on PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The trigger is received on PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The trigger is received on PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The trigger is received on PXI trigger line 6. + ''' + PXI_TRIG7 = 'PXI_Trig7' + r''' + The trigger is received on PXI trigger line 7. + ''' + PXI_STAR = 'PXI_Star' + r''' + The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. + ''' + PXIE_DSTARB = 'PXIe_DStarB' + r''' + The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. + ''' + MARKER0_EVENT = 'Marker0Event' + r''' + The trigger is received from the Marker Event 0. + ''' + MARKER1_EVENT = 'Marker1Event' + r''' + The trigger is received from the Marker Event 1. + ''' + MARKER2_EVENT = 'Marker2Event' + r''' + The trigger is received from the Marker Event 2. + ''' + MARKER3_EVENT = 'Marker3Event' + r''' + The trigger is received from the Marker Event 3. + ''' + TIMER_EVENT = 'TimerEvent' + r''' + The trigger is received from the Timer Event. + ''' + TRIG_IN = 'TrigIn' + r''' + The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class ConfigListTrigExportOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + The signal is not exported. + ''' + PFI0 = 'PFI0' + r''' + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The signal is exported on PFI 1 connector. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The signal is exported to the PXI trigger line 0. . + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The signal is exported to the PXI trigger line 0. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The signal is exported to the PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The signal is exported to the PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The signal is exported to the PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The signal is exported to the PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The signal is exported to the PXI trigger line 6. + ''' + PXIE_DSTARC = 'PXIe_DStarC' + r''' + The trigger is received on the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. + ''' + TRIG_OUT = 'TrigOut' + r''' + The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class ConfigListTrigType(Enum): + NONE = 0 + r''' + Generation starts immediately, but the list does not advance. + ''' + DIGITAL_EDGE = 1 + r''' + Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the %property{digital edge configuration list step trigger source} property, and the active edge is always rising. + ''' + + +class ConfigurationListRepeat(Enum): + CONTINUOUS = 0 + r''' + NI-RFSG runs the configuration list continuously. + ''' + MANUAL = 0 + SINGLE = 1 + r''' + NI-RFSG runs the configuration list only once. + ''' + SCRIPT_TRIGGER = 1 + + +class ConfigurationSettledEventExportOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + The signal is not exported. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + PXI trigger line 6. + ''' + PXIE_DSTARC = 'PXIe_DStarC' + r''' + PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842. + ''' + TRIG_OUT = 'TrigOut' + r''' + TRIG IN/OUT terminal. + ''' + + +class DeembeddingTypeAttrVals(Enum): + DEEMBEDDING_TYPE_NONE = 25000 + r''' + De-embedding is not applied to the measurement. + ''' + NONE = 0 + DEEMBEDDING_TYPE_SCALAR = 25001 + r''' + De-embeds the measurement using only the gain term. + ''' + DEEMBEDDING_TYPE_VECTOR = 25002 + r''' + De-embeds the measurement using the gain term and the reflection term. + ''' + + +class DigModType(Enum): + NONE = 0 + r''' + Disables digital modulation. + ''' + FSK = 4000 + r''' + Specifies that the digital modulation type is frequency-shift keying (FSK). + ''' + OOK = 4001 + r''' + Specifies that the digital modulation type is on-off keying (OOK). + ''' + PSK = 4002 + r''' + Specifies that the digital modulation type is phase-shift keying (PSK). + ''' + + +class DigModWfmType(Enum): + PRBS = 5000 + r''' + Specifies that the digital modulation waveform type is pseudorandom bit sequence (PRBS). + ''' + USER_DEFINED = 5001 + r''' + Specifies that the digital modulation waveform type is user defined. To specify the user-defined waveform, call the %method{configure digital modulation user defined waveform} method. + ''' + + +class DigitalEqualizationEnabled(Enum): + DISABLE = 0 + r''' + Filter is not applied + ''' + ENABLE = 1 + r''' + Filter is applied. + ''' + + +class DirectDownload(Enum): + DISABLE = 0 + r''' + The RF In local oscillator signal is not present at the front panel LO OUT connector. + ''' + ENABLE = 1 + r''' + The RF In local oscillator signal is present at the front panel LO OUT connector. + ''' + UNSPECIFIED = -2 + r''' + The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it. + ''' + + +class DoneEventExportOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + The signal is not exported. + ''' + PFI0 = 'PFI0' + r''' + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The signal is exported to the PFI 1 connector. + ''' + PFI4 = 'PFI4' + r''' + The signal is exported to the PFI 4 connector. + ''' + PFI5 = 'PFI5' + r''' + The signal is exported to the PFI 5 connector. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The signal is exported to the PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The signal is exported to the PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The signal is exported to the PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The signal is exported to the PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The signal is exported to the PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The signal is exported to the PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The signal is exported to the PXI trigger line 6. + ''' + PXIE_DSTARC = 'PXIe_DStarC' + r''' + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class FilterType(Enum): + NONE = 0 + r''' + No filter type is applied. + ''' + ARB_FILTER_TYPE_ROOT_RAISED_COSINE = 10001 + r''' + Applies a root-raised cosine filter to the data with the alpha value specified with the %property{arb filter root raised cosine alpha} property. + ''' + ARB_FILTER_TYPE_RAISED_COSINE = 10002 + r''' + Applies a raised cosine filter to the data with the alpha value specified with the %property{arb filter raised cosine alpha} property. + ''' + + +class Format(Enum): + MAGNITUDE_AND_PHASE = 26001 + r''' + Results in a linear interpolation of the magnitude and a separate linear interpolation of the phase. + ''' + MAGNITUDE_DB_AND_PHASE = 26002 + r''' + Results in a linear interpolation of the magnitude, in decibels, and a separate linear interpolation of the phase. + ''' + REAL_AND_IMAGINARY = 26000 + r''' + Results in a linear interpolation of the real portion of the complex number and a separate linear interpolation of the complex portion. + ''' + + +class FrequencySettlingUnits(Enum): + TIME_AFTER_LOCK = 12000 + r''' + Specifies the time to wait after the frequency PLL locks. + ''' + TIME_AFTER_IO = 12001 + r''' + Specifies the time to wait after all writes occur to change the frequency + ''' + PPM = 12002 + r''' + Specifies the minimum frequency accuracy when settling completes. Units are in parts per million (PPM or 1E-6). + ''' + + +class GenerationMode(Enum): + CW = 1000 + r''' + Configures the RF signal generator to generate a CW signal. + ''' + ARB_WAVEFORM = 1001 + r''' + Configures the RF signal generator to generate the arbitrary waveform specified by the %property{arb selected waveform} property. + ''' + SCRIPT = 1002 + r''' + Configures the RF signal generator to generate arbitrary waveforms as directed by the %property{selected script} property. + ''' + + +class IQOutPortTermCfg(Enum): + DIFFERENTIAL = 15000 + r''' + Sets the terminal configuration to differential. + ''' + SINGLE_ENDED = 15001 + r''' + Sets the terminal configuration to single-ended. + ''' + + +class Lo1OutputFilter(Enum): + MANUAL = 0 + r''' + yet to be defined + ''' + SCRIPT_TRIGGER = 1 + r''' + yet to be defined + ''' + + +class LoFilter(Enum): + CONFIGURATION_SETTLED_EVENT = 7 + r''' + Exports a Configuration Settled Event. + ''' + CONFIGURATION_LIST_STEP_TRIGGER = 6 + r''' + Exports a Configuration List Step Trigger. + ''' + DONE_EVENT = 5 + r''' + Exports a Done Event. + ''' + MARKER_EVENT = 2 + r''' + Exports a Marker Event. + ''' + REF_CLOCK = 3 + r''' + Exports the Reference Clock. + ''' + SCRIPT_TRIGGER = 1 + r''' + Exports a Script Trigger. + ''' + START_TRIGGER = 0 + r''' + Exports a Start Trigger. + ''' + STARTED_EVENT = 4 + r''' + Exports a Started Event. + ''' + + +class LoOutEnabled(Enum): + DISABLE = 0 + r''' + The local oscillator signal is present at the LO OUT front panel connector. + ''' + MANUAL = 0 + ENABLE = 1 + r''' + The local oscillator signal is not present at the LO OUT front panel connector.. + ''' + SCRIPT_TRIGGER = 1 + + +class LoOutExportConfigureFromRFSaEnable(Enum): + DISABLE = 0 + r''' + Do not allow NI-RFSA to control the NI-RFSG local oscillator export. + ''' + MANUAL = 0 + ENABLE = 1 + r''' + Allow NI-RFSA to control the NI-RFSG local oscillator export. + ''' + SCRIPT_TRIGGER = 1 + + +class LoPlLfractionalModeEnabled(Enum): + DISABLE = 0 + r''' + Disables fractional mode for the LO PLL. + ''' + MANUAL = 0 + ENABLE = 1 + r''' + Enables fractional mode for the LO PLL. + ''' + SCRIPT_TRIGGER = 1 + + +class LoSource(Enum): + ONBOARD = 'Onboard' + r''' + Uses an internal LO as the LO source. If you specify an internal LO source, the LO is generated inside the device itself. + ''' + LO_IN = 'LO_In' + r''' + Uses an external LO as the LO source. Connect a signal to the LO IN connector on the device and use the %property{upconverter center frequency} property to specify the LO frequency. + ''' + SECONDARY = 'Secondary' + r''' + Uses the PXIe-5831/5840 internal LO as the LO source. This value is valid only on the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653. + ''' + SG_SA_SHARED = 'SG_SA_Shared' + r''' + Uses the same internal LO during NI-RFSA and NI-RFSG sessions. NI-RFSG selects an internal synthesizer and the synthesizer signal is switched to both the RF In and RF Out mixers. This value is valid only on the PXIe-5830/5831/5832/5841 with PXIe-5655/5842. + ''' + AUTOMATIC_SG_SA_SHARED = 'Automatic_SG_SA_Shared' + r''' + NI-RFSG internally makes the configuration to share the LO between NI-RFSA and NI-RFSG. This value is valid only on the PXIe-5820/5830/5831/5832/5840/5841/5842. + ''' + + +class LoadOptions(Enum): + SKIP_NONE = 0 + r''' + NI-RFSG loads all the configurations to the session. + ''' + MANUAL = 0 + SKIP_WAVEFORM = 1 + r''' + NI-RFSG skips loading the waveform configurations to the session. + ''' + SCRIPT_TRIGGER = 1 + + +class LoopBandwidth(Enum): + NARROW = 0 + r''' + Uses the narrowest loop bandwidth setting for the PLL. + ''' + MEDIUM = 1 + r''' + Uses the medium loop bandwidth setting for the PLL. + ''' + WIDE = 2 + r''' + Uses the widest loop bandwidth setting for the PLL. + ''' + + +class MarkerEventExportOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + The signal is not exported. + ''' + PFI0 = 'PFI0' + r''' + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The signal is exported to the PFI 1 connector. + ''' + PFI4 = 'PFI4' + r''' + The signal is exported to the PFI 4 connector. + ''' + PFI5 = 'PFI5' + r''' + The signal is exported to the PFI 5 connector. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The signal is exported to PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The signal is exported to PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The signal is exported to PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The signal is exported to PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The signal is exported to PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The signal is exported to PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The signal is exported to PXI trigger line 6. + ''' + PXIE_DSTARC = 'PXIe_DStarC' + r''' + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class MarkerEventOutputBehavior(Enum): + PULSE = 23000 + r''' + Specifies the Marker Event output behavior as pulse. + ''' + TOGGLE = 23001 + r''' + Specifies the Marker Event output behavior as toggle. + ''' + + +class MarkerEventPulseWidthUnits(Enum): + SECONDS = 22000 + r''' + Specifies the Marker Event pulse width units as seconds. + ''' + SAMPLE_CLOCK_PERIODS = 22001 + r''' + Specifies the Marker Event pulse width units as Sample Clock periods. + ''' + + +class MarkerEventToggleInitialState(Enum): + LOW = 21000 + r''' + Specifies the initial state of the Marker Event toggle behavior as digital low. + ''' + HIGH = 21001 + r''' + Specifies the initial state of the Marker Event toggle behavior as digital high. + ''' + + +class Module(Enum): + AWG = 13001 + r''' + The AWG associated with the primary module. + ''' + LO = 13002 + r''' + The LO associated with the primary module. + ''' + PRIMARY_MODULE = 13000 + r''' + The stand-alone device or the main module in a multi-module device. + ''' + + +class OffsetUnits(Enum): + PERCENT = 11000 + r''' + Specifies the unit in percentage. + ''' + VOLTS = 11001 + r''' + Specifies the unit in volts. + ''' + + +class OutputPort(Enum): + RF_OUT = 14000 + r''' + Enables the RF OUT port. This value is not valid for the PXIe-5820. + ''' + IQ_OUT = 14001 + r''' + Enables the I/Q OUT port. This value is valid on only the PXIe-5645 and PXIe-5820. + ''' + CAL_OUT = 14002 + r''' + Enables the CAL OUT port. + ''' + I_ONLY = 14003 + r''' + Enables the I connectors of the I/Q OUT port. This value is valid on only the PXIe-5645. + ''' + + +class OverflowErrorReporting(Enum): + WARNING = 1301 + r''' + NI-RFSG returns a warning when an OSP overflow occurs. + ''' + DISABLED = 1302 + r''' + NI-RFSG does not return an error or a warning when an OSP overflow occurs. + ''' + + +class PhaseContinuityEnabled(Enum): + AUTO = -1 + r''' + The arbitrary waveform may be repeated to ensure phase continuity after upconversion. This setting could cause waveform size to increase. + ''' + DISABLE = 0 + r''' + The arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. + ''' + ENABLE = 1 + r''' + The arbitrary waveform may be repeated to ensure phase continuity after upconversion. Enabling this property could cause waveform size to increase. + ''' + + +class PortTypes(Enum): + OUT = 14501 + r''' + Specifies the PXIe-5840 RF OUT port. + ''' + IN = 14500 + r''' + Specifies the PXIe-5840 RF IN port. This value is not supported as the first element of an array. + ''' + + +class PowerLevelType(Enum): + AVERAGE = 7000 + r''' + Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If your write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. + ''' + PEAK = 7001 + r''' + Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires that the magnitude of the I/Q waveform must always be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the %property{arb waveform software scaling factor} property. You can use the %property{peak power adjustment} property in conjunction with the %property{power level} property when the %property{power level type} property is set to %enum_value{power level type.peak power}. + ''' + + +class PpaInheritance(Enum): + EXACT_MATCH = 0 + r''' + Errors out if different values are detected in the script. + ''' + MINIMUM = 1 + r''' + Uses the minimum value found in the script. + ''' + MAXIMUM = 2 + r''' + Uses the maximum value found in the script. + ''' + + +class PulseModulationMode(Enum): + OPTIMAL_MATCH = 20000 + r''' + Provides for a more optimal power output match for the device during the off cycle of the pulse mode operation. Not supported on PXIe-5842 + ''' + HIGH_ISOLATION = 20001 + r''' + Allows for the best on/off power ratio of the pulsed signal. + ''' + ANALOG = 20002 + r''' + Analog switch blanking. Balance between switching speed and on/off power ratio of the pulsed signal. + ''' + DIGITAL = 20003 + r''' + Digital only modulation. Provides the best on/off switching speed of the pulsed signal at the cost of signal isolation. + ''' + + +class PulseModulationOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + yet to be defined + ''' + PULSE_OUT = 'PulseOut' + r''' + yet to be defined + ''' + + +class PulseModulationSource(Enum): + PULSE_IN = 'PulseIn' + r''' + The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. + ''' + MARKER0 = 'Marker0' + r''' + The trigger is received from the Marker 0. + ''' + MARKER1 = 'Marker1' + r''' + The trigger is received from the Marker 1. + ''' + MARKER2 = 'Marker2' + r''' + The trigger is received from the Marker 2. + ''' + MARKER3 = 'Marker3' + r''' + The trigger is received from the Marker 3. + ''' + + +class PxiChassisClk10Source(Enum): + NONE = 0 + r''' + Do not drive the PXI_CLK10 signal. + ''' + DO_NOT_EXPORT_STR = '' + ONBOARD_CLOCK_STR = 'OnboardClock' + r''' + Uses the highly stable oven-controlled onboard Reference Clock to drive the PXI_CLK signal. + ''' + REF_IN_STR = 'RefIn' + r''' + Uses the clock present at the front panel REF IN connector to drive the PXI_CLK signal. + ''' + + +class RFBlanking(Enum): + DISABLE = 0 + r''' + RF blanking is disabled. + ''' + ENABLE = 1 + r''' + RF blanking is enabled. + ''' + + +class RFFilter(Enum): + HI_FREQ_MOD = '0' + r''' + yet to be defined + ''' + CONFIGURATION_SETTLED_EVENT = 7 + LO_FREQ_MOD_4000 = '1' + r''' + yet to be defined + ''' + LO_FREQ_MOD_2500 = '2' + r''' + yet to be defined + ''' + + +class RFInLoExportEnabled(Enum): + UNSPECIFIED = -2 + r''' + The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may + ''' + DISABLE = 0 + r''' + The RF In local oscillator signal is not present at the front panel LO OUT connector. + ''' + MANUAL = 0 + ENABLE = 1 + r''' + The RF In local oscillator signal is present at the front panel LO OUT connector. + ''' + SCRIPT_TRIGGER = 1 + + +class ReferenceClockExportOutputTerminal(Enum): + DO_NOT_EXPORT = '' + r''' + The Reference Clock signal is not exported. + ''' + REF_OUT = 'RefOut' + r''' + Exports the Reference Clock signal to the REF OUT connector of the device. + ''' + REF_OUT2 = 'RefOut2' + r''' + Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. + ''' + CLK_OUT = 'ClkOut' + r''' + Exports the Reference Clock signal to the CLK OUT connector of the device. + ''' + + +class ReferenceClockExportedRate(Enum): + _10mhz = 10000000 + r''' + Uses a 10MHz Reference Clock rate. + ''' + _100mhz = 100000000.0 + r''' + Uses a 100MHz Reference Clock rate. + ''' + _1ghz = 1000000000.0 + r''' + Uses a 1GHz Reference Clock rate. + ''' + + +class ReferenceClockRate(Enum): + AUTO = -1 + r''' + Uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if the device supports it. + ''' + _10mhz = 10000000 + r''' + Uses a 10MHz Reference Clock rate. + ''' + + +class ReferenceClockSource(Enum): + ONBOARD_CLOCK = 'OnboardClock' + r''' + Uses the onboard Reference Clock as the clock source. + ''' + REF_IN = 'RefIn' + r''' + Uses the clock signal present at the front panel REF IN connector as the Reference Clock source. + ''' + PXI_CLK = 'PXI_CLK' + r''' + Uses the PXI_CLK signal, which is present on the PXI backplane, as the Reference Clock source. + ''' + CLK_IN = 'ClkIn' + r''' + Uses the clock signal present at the front panel CLK IN connector as the Reference Clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655. + ''' + REF_IN_2 = 'RefIn2' + r''' + This value is not valid on any supported devices. + ''' + PXI_CLK_MASTER = 'PXI_ClkMaster' + r''' + This value is valid on only the PXIe-5831/5832 with PXIe-5653.**PXIe-5831/5832 with PXIe-5653—**NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use %enum_value{reference clock source.pxi clk str} as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. + ''' + + +class RelativeTo(Enum): + CURRENT_POSITION = 8001 + r''' + The reference position is relative to the current position. + ''' + START_OF_WAVEFORM = 8000 + r''' + The reference position is relative to the start of the waveform. + ''' + + +class ResetOptions(Enum): + SKIP_WAVEFORMS = 0 + r''' + NI-RFSG skips resetting the waveform configurations. + ''' + MANUAL = 0 + SKIP_DEEMBEDDING_TABLES = 1 + r''' + NI-RFSG skips resetting the de-embedding tables. + ''' + SCRIPT_TRIGGER = 1 + SKIP_SCRIPTS = 2 + r''' + NI-RFSG skips resetting the scripts. + ''' + MARKER_EVENT = 2 + SKIP_NONE = 3 + r''' + NI-RFSG resets all configurations. + ''' + SELF_CAL_IMAGE_SUPPRESSION = 8 + + +class ScriptTrigDigEdgeEdge(Enum): + RISING = 0 + r''' + Asserts the trigger when the signal transitions from low level to high level. + ''' + FALLING = 1 + r''' + Asserts the trigger when the signal transitions from high level to low level. + ''' + + +class ScriptTrigDigEdgeSource(Enum): + PFI0 = 'PFI0' + r''' + The trigger is received on PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The trigger is received on PFI 1. + ''' + PFI2 = 'PFI2' + r''' + The trigger is received on PFI 2. + ''' + PFI3 = 'PFI3' + r''' + The trigger is received on PFI 3. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The trigger is received on PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The trigger is received on PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The trigger is received on PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The trigger is received on PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The trigger is received on PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The trigger is received on PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The trigger is received on PXI trigger line 6. + ''' + PXI_TRIG7 = 'PXI_Trig7' + r''' + The trigger is received on PXI trigger line 7. + ''' + PXI_STAR = 'PXI_Star' + r''' + The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646. + ''' + PXIE_DSTARB = 'PXIe_DStarB' + r''' + The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/ + ''' + PULSE_IN = 'PulseIn' + r''' + The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + SYNC_SCRIPT_TRIGGER = 'Sync_Script' + r''' + The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646. + ''' + + +class ScriptTrigDigLevelActiveLevel(Enum): + HIGH = 9000 + r''' + Trigger when the digital trigger signal is high. + ''' + LOW = 9001 + r''' + Trigger when the digital trigger signal is low. + ''' + + +class ScriptTrigDigLevelSource(Enum): + PFI0 = 'PFI0' + r''' + The trigger is received on PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The trigger is received on PFI 1. + ''' + PFI2 = 'PFI2' + r''' + The trigger is received on PFI 2. + ''' + PFI3 = 'PFI3' + r''' + The trigger is received on PFI 3. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The trigger is received on PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The trigger is received on PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The trigger is received on PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The trigger is received on PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The trigger is received on PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The trigger is received on PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The trigger is received on PXI trigger line 6. + ''' + PXI_TRIG7 = 'PXI_Trig7' + r''' + The trigger is received on PXI trigger line 7. + ''' + PXI_STAR = 'PXI_Star' + r''' + The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646. + ''' + PXIE_DSTARB = 'PXIe_DStarB' + r''' + The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/ + ''' + PULSE_IN = 'PulseIn' + r''' + The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class ScriptTrigExportOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + The signal is not exported. + ''' + PFI0 = 'PFI0' + r''' + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The signal is exported to the PFI 1 connector. + ''' + PFI4 = 'PFI4' + r''' + The signal is exported to the PFI 4 connector. + ''' + PFI5 = 'PFI5' + r''' + The signal is exported to the PFI 5 connector. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The signal is exported to the PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The signal is exported to the PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The signal is exported to the PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The signal is exported to the PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The signal is exported to the PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The signal is exported to the PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The signal is exported to the PXI trigger line 6. + ''' + PXIE_DSTARC = 'PXIe_DStarC' + r''' + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/ + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class ScriptTrigType(Enum): + NONE = 0 + r''' + No trigger is configured. Signal generation starts immediately. + ''' + DIGITAL_EDGE = 1 + r''' + The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the %property{digital edge start trigger source} property, and the active edge is specified with the %property{digital edge start trigger edge} property. + ''' + DIGITAL_LEVEL = 8000 + r''' + The data operation does not start until the digital level is detected. The source of the digital level is specified in the %property{digital level script trigger source} property, and the active level is specified in the %property{digital level script trigger active level} property. + ''' + SOFTWARE = 2 + r''' + The data operation does not start until a software trigger occurs. You can create a software event by calling the %method{send software edge trigger} method. + ''' + + +class SelfCalibrateRange(Enum): + IMAGE_SUPPRESSION = 8 + r''' + Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. + ''' + LO_SELF_CAL = 1 + r''' + Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. + ''' + OMIT_NONE = 0 + r''' + No calibration steps are omitted. + ''' + POWER_LEVEL_ACCURACY = 2 + r''' + Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. + ''' + RESIDUAL_LO_POWER = 4 + r''' + Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. + ''' + SYNTHESIZER_ALIGNMENT = 16 + r''' + Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. + ''' + + +class SignalIdentifier(Enum): + MARKER_EVENT0 = 'marker0' + r''' + Specifies Marker 0. + ''' + MARKER_EVENT1 = 'marker1' + r''' + Specifies Marker 1. + ''' + MARKER_EVENT2 = 'marker2' + r''' + Specifies Marker 2. + ''' + MARKER_EVENT3 = 'marker3' + r''' + Specifies Marker 3. + ''' + SCRIPT_TRIGGER0 = 'scriptTrigger0' + r''' + Specifies Script Trigger 0. + ''' + SCRIPT_TRIGGER1 = 'scriptTrigger1' + r''' + Specifies Script Trigger 1. + ''' + SCRIPT_TRIGGER2 = 'scriptTrigger2' + r''' + Specifies Script Trigger 2. + ''' + SCRIPT_TRIGGER3 = 'scriptTrigger3' + r''' + Specifies Script Trigger 3. + ''' + + +class SparameterOrientation(Enum): + PORT1 = 24000 + r''' + Port 1 of the S2P is oriented towards the DUT port. + ''' + PORT2 = 24001 + r''' + Port 2 of the S2P is oriented towards the DUT port. + ''' + + +class StartTrigDigEdgeEdge(Enum): + RISING = 0 + r''' + Occurs when the signal transitions from low level to high level. + ''' + FALLING = 1 + r''' + Occurs when the signal transitions from high level to low level. + ''' + + +class StartTrigDigEdgeSource(Enum): + PFI0 = 'PFI0' + r''' + The trigger is received on PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The trigger is received on PFI 1. + ''' + PFI2 = 'PFI2' + r''' + The trigger is received on PFI 2. + ''' + PFI3 = 'PFI3' + r''' + The trigger is received on PFI 3. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The trigger is received on PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The trigger is received on PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The trigger is received on PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The trigger is received on PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The trigger is received on PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The trigger is received on PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The trigger is received on PXI trigger line 6. + ''' + PXI_TRIG7 = 'PXI_Trig7' + r''' + The trigger is received on PXI trigger line 7. + ''' + PXI_STAR = 'PXI_Star' + r''' + The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646. + ''' + PXIE_DSTARB = 'PXIe_DStarB' + r''' + The trigger is received on the PXI DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + ''' + TRIG_IN = 'TrigIn' + r''' + The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + SYNC_START_TRIGGER = 'Sync_Start' + r''' + The trigger is received on the Sync Start trigger line. This value is valid on only the PXIe-5644/5645/5646. + ''' + + +class StartTrigExportOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + The signal is not exported. + ''' + PFI0 = 'PFI0' + r''' + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The signal is exported to the PFI 1 connector. + ''' + PFI4 = 'PFI4' + r''' + The signal is exported to the PFI 4 connector. + ''' + PFI5 = 'PFI5' + r''' + The signal is exported to the PFI 5 connector. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The signal is exported to the PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The signal is exported to the PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The signal is exported to the PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The signal is exported to the PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The signal is exported to the PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The signal is exported to the PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The signal is exported to the PXI trigger line 6. + ''' + PXIE_DSTARC = 'PXIe_DStarC' + r''' + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + ''' + TRIG_OUT = 'TrigOut' + r''' + The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class StartTrigType(Enum): + NONE = 0 + r''' + No trigger is configured. + ''' + DIGITAL_EDGE = 1 + r''' + The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the %property{digital edge start trigger source} property, and the active edge is specified in the %property{digital edge start trigger edge} property. + ''' + SOFTWARE = 2 + r''' + The data operation does not start until a software event occurs. You may create a software trigger by calling the %method{send software edge trigger} method. + ''' + P2P_ENDPOINT_FULLNESS = 3 + r''' + The data operation does not start until the endpoint reaches the threshold specified in the %property{p2p endpoint fullness start trigger level} property. + ''' + + +class StartedEventExportOutputTerm(Enum): + DO_NOT_EXPORT = '' + r''' + The signal is not exported. + ''' + PFI0 = 'PFI0' + r''' + The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. + ''' + PFI1 = 'PFI1' + r''' + The signal is exported to the PFI 1 connector. + ''' + PFI4 = 'PFI4' + r''' + The signal is exported to the PFI 4 connector. + ''' + PFI5 = 'PFI5' + r''' + The signal is exported to the PFI 5 connector. + ''' + PXI_TRIG0 = 'PXI_Trig0' + r''' + The signal is exported to the PXI trigger line 0. + ''' + PXI_TRIG1 = 'PXI_Trig1' + r''' + The signal is exported to the PXI trigger line 1. + ''' + PXI_TRIG2 = 'PXI_Trig2' + r''' + The signal is exported to the PXI trigger line 2. + ''' + PXI_TRIG3 = 'PXI_Trig3' + r''' + The signal is exported to the PXI trigger line 3. + ''' + PXI_TRIG4 = 'PXI_Trig4' + r''' + The signal is exported to the PXI trigger line 4. + ''' + PXI_TRIG5 = 'PXI_Trig5' + r''' + The signal is exported to the PXI trigger line 5. + ''' + PXI_TRIG6 = 'PXI_Trig6' + r''' + The signal is exported to the PXI trigger line 6. + ''' + PXIE_DSTARC = 'PXIe_DStarC' + r''' + The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + ''' + DIO0 = 'DIO/PFI0' + r''' + The trigger is received on PFI0 from the front panel DIO terminal. + ''' + DIO1 = 'DIO/PFI1' + r''' + The trigger is received on PFI1 from the front panel DIO terminal. + ''' + DIO2 = 'DIO/PFI2' + r''' + The trigger is received on PFI2 from the front panel DIO terminal. + ''' + DIO3 = 'DIO/PFI3' + r''' + The trigger is received on PFI3 from the front panel DIO terminal. + ''' + DIO4 = 'DIO/PFI4' + r''' + The trigger is received on PFI4 from the front panel DIO terminal. + ''' + DIO5 = 'DIO/PFI5' + r''' + The trigger is received on PFI5 from the front panel DIO terminal. + ''' + DIO6 = 'DIO/PFI6' + r''' + The trigger is received on PFI6 from the front panel DIO terminal. + ''' + DIO7 = 'DIO/PFI7' + r''' + The trigger is received on PFI7 from the front panel DIO terminal. + ''' + + +class StepsToOmit(Enum): + DEEMBEDDING_TABLES = 8 + r''' + Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840. + ''' + NONE = 0 + r''' + No step is omitted during reset. + ''' + ROUTES = 4 + r''' + Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset. + ''' + SCRIPTS = 2 + r''' + Omits clearing scripts. + ''' + WAVEFORMS = 1 + r''' + Omits clearing waveforms. + ''' + + +class Trigger(Enum): + SCRIPT = 1 + r''' + Specifies the Script Trigger. + ''' + START = 0 + r''' + Specifies the Start Trigger. + ''' + + +class TriggerIdentifier(Enum): + TRIGGER0 = 'scriptTrigger0' + r''' + Specifies Script Trigger 0. + ''' + TRIGGER1 = 'scriptTrigger1' + r''' + Specifies Script Trigger 1. + ''' + TRIGGER2 = 'scriptTrigger2' + r''' + Specifies Script Trigger 2. + ''' + TRIGGER3 = 'scriptTrigger3' + r''' + Specifies Script Trigger 3. + ''' + + +class UpconverterFrequencyOffsetMode(Enum): + AUTO = -1 + r''' + NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the %property{signal bandwidth} property has been set and can be avoided. + ''' + AUTOMATIC = -1 + ENABLE = 1 + r''' + NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the %property{signal bandwidth} property has been set and can be avoided. NI-RFSG returns an error if the %property{signal bandwidth} property has not been set, or if the signal bandwidth is too large. + ''' + SCRIPT_TRIGGER = 1 + USER_DEFINED = 5001 + r''' + NI-RFSG uses the offset that you specified with the %property{upconverter frequency offset} or %property{upconverter center frequency} properties. + ''' + + +class WriteWaveformBurstDetection(Enum): + DISABLE = 0 + r''' + Burst detection is disabled. + ''' + ENABLE = 1 + r''' + Burst detection is enabled. + ''' + + +class WriteWaveformBurstDetectionMode(Enum): + AUTO = -1 + r''' + NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform. + ''' + MANUAL = 0 + r''' + User sets the burst detection parameters. + ''' + + +class WriteWaveformNormalization(Enum): + DISABLE = 0 + r''' + Disables normalization on the waveform. + ''' + ENABLE = 1 + r''' + Enables normalization on a waveform to transform the waveform data so that its maximum is 1.00 and its minimum is -1.00 + ''' + + +class YigMainCoilDrive(Enum): + MANUAL = 0 + r''' + Adjusts the YIG main coil for an underdamped response. + ''' + FAST = 1 + r''' + Adjusts the YIG main coil for an overdamped response. + ''' diff --git a/generated/nirfsg/nirfsg/errors.py b/generated/nirfsg/nirfsg/errors.py new file mode 100644 index 0000000000..3212823321 --- /dev/null +++ b/generated/nirfsg/nirfsg/errors.py @@ -0,0 +1,112 @@ +# -*- coding: utf-8 -*- +# This file was generated + + +import platform +import warnings + + +def _is_success(code): + return (code == 0) + + +def _is_error(code): + return (code < 0) + + +def _is_warning(code): + return (code > 0) + + +class Error(Exception): + '''Base error class for NI-RFSG''' + + def __init__(self, message): + super(Error, self).__init__(message) + + +class DriverError(Error): + '''An error originating from the NI-RFSG driver''' + + def __init__(self, code, description): + assert _is_error(code), "Should not raise Error if code is not fatal." + self.code = code + self.description = description + super(DriverError, self).__init__(str(self.code) + ": " + self.description) + + +class DriverWarning(Warning): + '''A warning originating from the NI-RFSG driver''' + + def __init__(self, code, description): + assert _is_warning(code), "Should not create Warning if code is not positive." + super(DriverWarning, self).__init__('Warning {} occurred.\n\n{}'.format(code, description)) + + +class UnsupportedConfigurationError(Error): + '''An error due to using this module in an usupported platform.''' + + def __init__(self): + super(UnsupportedConfigurationError, self).__init__('System configuration is unsupported: ' + platform.architecture()[0] + ' ' + platform.system()) + + +class DriverNotInstalledError(Error): + '''An error due to using this module without the driver runtime installed.''' + + def __init__(self): + super(DriverNotInstalledError, self).__init__('The NI-RFSG runtime could not be loaded. Make sure it is installed and its bitness matches that of your Python interpreter. Please visit http://www.ni.com/downloads/drivers/ to download and install it.') + + +class DriverTooOldError(Error): + '''An error due to using this module with an older version of the NI-RFSG driver runtime.''' + + def __init__(self): + super(DriverTooOldError, self).__init__('A function was not found in the NI-RFSG runtime. Please visit http://www.ni.com/downloads/drivers/ to download a newer version and install it.') + + +class DriverTooNewError(Error): + '''An error due to the NI-RFSG driver runtime being too new for this module.''' + + def __init__(self): + super(DriverTooNewError, self).__init__('The NI-RFSG runtime returned an unexpected value. This can occur if it is too new for the nirfsg Python module. Upgrade the nirfsg Python module.') + + +class InvalidRepeatedCapabilityError(Error): + '''An error due to an invalid character in a repeated capability''' + + def __init__(self, invalid_character, invalid_string): + super(InvalidRepeatedCapabilityError, self).__init__('An invalid character ({}) was found in repeated capability string ({})'.format(invalid_character, invalid_string)) + + +class SelfTestError(Error): + '''An error due to a failed self-test''' + + def __init__(self, code, msg): + self.code = code + self.message = msg + super(SelfTestError, self).__init__('Self-test failed with code {}: {}'.format(code, msg)) + + +def handle_error(library_interpreter, code, ignore_warnings, is_error_handling): + '''handle_error + + Helper function for handling errors returned by nirfsg.Library. + It calls back into the LibraryInterpreter to get the corresponding error + description and raises if necessary. + ''' + + if _is_success(code) or (_is_warning(code) and ignore_warnings): + return + + if is_error_handling: + # The caller is in the midst of error handling and an error occurred. + # Don't try to get the description or we'll start recursing until the stack overflows. + description = '' + else: + description = library_interpreter.get_error_description(code) + + if _is_error(code): + raise DriverError(code, description) + + assert _is_warning(code) + warnings.warn(DriverWarning(code, description)) diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py new file mode 100644 index 0000000000..b0798b4fe7 --- /dev/null +++ b/generated/nirfsg/nirfsg/session.py @@ -0,0 +1,7801 @@ +# -*- coding: utf-8 -*- +# This file was generated +import array # noqa: F401 +# Used by @ivi_synchronized +from functools import wraps + +import nirfsg._attributes as _attributes +import nirfsg._converters as _converters +import nirfsg._library_interpreter as _library_interpreter +import nirfsg.enums as enums +import nirfsg.errors as errors + +import hightime +import nitclk + +# Used for __repr__ +import pprint +pp = pprint.PrettyPrinter(indent=4) + + +class _Generation(object): + def __init__(self, session): + self._session = session + self._session._initiate() + + def __enter__(self): + return self + + def __exit__(self, exc_type, exc_value, traceback): + self._session.abort() + + +# From https://stackoverflow.com/questions/5929107/decorators-with-parameters +def ivi_synchronized(f): + @wraps(f) + def aux(*xs, **kws): + session = xs[0] # parameter 0 is 'self' which is the session object + with session.lock(): + return f(*xs, **kws) + return aux + + +class _Lock(object): + def __init__(self, session): + self._session = session + + def __enter__(self): + # _lock_session is called from the lock() function, not here + return self + + def __exit__(self, exc_type, exc_value, traceback): + self._session.unlock() + + +class _RepeatedCapabilities(object): + def __init__(self, session, prefix, current_repeated_capability_list): + self._session = session + self._prefix = prefix + # We need at least one element. If we get an empty list, make the one element an empty string + self._current_repeated_capability_list = current_repeated_capability_list if len(current_repeated_capability_list) > 0 else [''] + # Now we know there is at lease one entry, so we look if it is an empty string or not + self._separator = '/' if len(self._current_repeated_capability_list[0]) > 0 else '' + + def __getitem__(self, repeated_capability): + '''Set/get properties or call methods with a repeated capability (i.e. channels)''' + rep_caps_list = _converters.convert_repeated_capabilities(repeated_capability, self._prefix) + complete_rep_cap_list = [current_rep_cap + self._separator + rep_cap for current_rep_cap in self._current_repeated_capability_list for rep_cap in rep_caps_list] + + return _SessionBase( + repeated_capability_list=complete_rep_cap_list, + all_channels_in_session=self._session._all_channels_in_session, + interpreter=self._session._interpreter, + freeze_it=True + ) + + +# This is a very simple context manager we can use when we need to set/get attributes +# or call functions from _SessionBase that require no channels. It is tied to the specific +# implementation of _SessionBase and how repeated capabilities are handled. +class _NoChannel(object): + def __init__(self, session): + self._session = session + + def __enter__(self): + self._repeated_capability_cache = self._session._repeated_capability + self._session._repeated_capability = '' + + def __exit__(self, exc_type, exc_value, traceback): + self._session._repeated_capability = self._repeated_capability_cache + + +class _SessionBase(object): + '''Base class for all NI-RFSG sessions.''' + + # This is needed during __init__. Without it, __setattr__ raises an exception + _is_frozen = False + + absolute_delay = _attributes.AttributeViReal64TimeDeltaSeconds(1150225) + '''Type: hightime.timedelta, datetime.timedelta, or float in seconds + + Specifies the sub-Sample Clock delay, in seconds, to apply to the I/Q waveform. Use this property to reduce the trigger jitter when synchronizing multiple devices with NI-TClk. This property can also help maintain synchronization repeatability by writing the absolute delay value of a previous measurement to the current session. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** Seconds + + **Valid Values:** Plus or minus half of one Sample Clock period + + **Supported Devices:** PXIe-5820/5840/5841/5842 + + Note: - The resolution of this property is a method of the I/Q sample period at 15E(-6) times that sample period. + + - If this property is set, NI-TClk cannot perform any sub-Sample Clock adjustment. + ''' + active_configuration_list = _attributes.AttributeViString(1150096) + '''Type: str + + Specifies the name of the configuration list to make active. When you get or set a property and it is in the configuration list configuration, the property is set to or read from the active list step of the active configuration list. + + If the active_configuration_list property is set to "" (empty string), no list is active. + + **Default Value:** "" + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + + **High-Level Methods**: + + - create_configuration_list + + Note: For the PXIe-5650/5651/5652 and PXIe-5673E, when this property is set to a valid list name, the frequency_settling_units property supports only FrequencySettlingUnits.TIME_AFTER_IO as a valid value. + ''' + active_configuration_list_step = _attributes.AttributeViInt64(1150097) + '''Type: int + + Specifies the step in the configuration list for `RF list mode `_ that you want to make active for configuration or initiation. + + Activating a list makes all properties in the list reflect the value of the properties that correspond to the set specified by the active_configuration_list and the active_configuration_list_step properties. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + + **High-Level Methods**: + + - create_configuration_list_step + ''' + ae_temperature = _attributes.AttributeViReal64(1150182) + '''Type: float + + Returns the amplitude extender module temperature in degrees Celsius. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXIe-5654 with PXIe-5696 + ''' + alc_control = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AutomaticLevelControl, 1150195) + '''Type: enums.AutomaticLevelControl + + Enables or disables the automatic leveling control (ALC). + + PXIe-5654 with PXIe-5696: If this property is enabled, the ALC is closed (closed-loop mode) and allows for better amplitude accuracy and wider amplitude dynamic range. If this property is disabled, the ALC is open (open-loop mode), which is ideal when using modulation. Disabling the alc_control property also allows for NI-RFSG to perform an automatic power search. + + PXIe-5654: AutomaticLevelControl.DISABLE is the only supported value for this device. The PXIe-5654 does not support the ALC when used as a stand-alone device. + + **Default Value:** + + PXIe-5654: AutomaticLevelControl.DISABLE + + PXIe-5654 with PXIe-5696: AutomaticLevelControl.ENABLE + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Power Level Adjustment `_ + + `ALC Closed Loop Versus Open Loop `_ + + `Power Search `_ + + **Defined Values**: + + +-------------------------------+---------+------------------+ + | Name | Value | Description | + +===============================+=========+==================+ + | AutomaticLevelControl.DISABLE | 0 (0x0) | Disables ALC. | + +-------------------------------+---------+------------------+ + | AutomaticLevelControl.ENABLE | 1 (0x1) | Enables the ALC. | + +-------------------------------+---------+------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + allow_out_of_specification_user_settings = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AllowOutOfSpecificationUserSettings, 1150014) + '''Type: enums.AllowOutOfSpecificationUserSettings + + Enables or disables warnings or errors when you set the frequency, power, and bandwidth values beyond the limits of the NI-RFSG device specifications. When you enable the allow_out_of_specification_user_settings property, the driver does not report out-of-specification warnings or errors. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** AllowOutOfSpecificationUserSettings.DISABLE + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +---------------------------------------------+---------+----------------------------------------------+ + | Name | Value | Description | + +=============================================+=========+==============================================+ + | AllowOutOfSpecificationUserSettings.DISABLE | 0 (0x0) | Disables out-of-specification user settings. | + +---------------------------------------------+---------+----------------------------------------------+ + | AllowOutOfSpecificationUserSettings.ENABLE | 1 (0x1) | Enables out-of-specification user settings. | + +---------------------------------------------+---------+----------------------------------------------+ + + Note: Accuracy cannot be guaranteed outside of device specifications, and results may vary by module. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + amplitude_settling = _attributes.AttributeViReal64(1150137) + '''Type: float + + Configures the amplitude settling accuracy in decibels. NI-RFSG waits until the RF power settles within the specified accuracy level after calling the _initiate method or wait_until_settled method or prior to advancing to next step if using RF list mode. + + Any specified amplitude settling value that is above the acceptable minimum value is coerced down to the closest valid value. + + PXI/PXIe-5650/5651/5652: This property is for NI internal use only. + + **Units**: dB + + **Default Value:** + + PXIe-5654: 4 + + PXIe-5654 with PXIe-5696 (ALC disabled): 4 + + PXIe-5654 with PXIe-5696 (ALC enabled): 0.2 + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: 0.5 + + **Valid Values:** + + PXIe-5654: 1.5, 2, 4 + + PXIe-5654 with PXIe-5696 (ALC disabled): 1.5, 2, 4 + + PXIe-5654 with PXIe-5696 (ALC enabled): 0.2, 0.5 + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: 0.01 to 1 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Amplitude Settling Times `_ + ''' + amp_path = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AmpPath, 1150185) + '''Type: enums.AmpPath + + Specifies the amplification path to use. The low harmonic path provides greater second and third harmonic spurious response, and the high power path provides higher output power. + + NI-RFSG automatically sets the value of this property based on power and frequency settings. Setting this property overrides the value chosen by NI-RFSG. + + **Default Value:** AmpPath.LOW_HARMONIC + + **Supported Devices:** PXIe-5654 with PXIe-5696 + + **Related Topics** + + `Low Harmonic Path Versus High Power Path `_ + + **Defined Values**: + + +----------------------+----------------+-----------------------------------------------------------+ + | Name | Value | Description | + +======================+================+===========================================================+ + | AmpPath.HIGH_POWER | 16000 (0x3e80) | Sets the amplification path to use the high power path. | + +----------------------+----------------+-----------------------------------------------------------+ + | AmpPath.LOW_HARMONIC | 16001 (0x3e81) | Sets the amplification path to use the low harmonic path. | + +----------------------+----------------+-----------------------------------------------------------+ + + Note: Resetting this property reverts back to the default unset behavior. + ''' + analog_modulation_am_sensitivity = _attributes.AttributeViReal64(1150167) + '''Type: float + + Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator. + + When using the PXIe-5654 with PXIe-5696, NI-RFSG may coerce AM sensitivity. Coercing the AM sensitivity prevents overpower conditions at the PXIe-5696 input. Read this property to determine the coerced value. + + **Default Value:** 100 + + **Valid Values:** 0 to 100 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Amplitude Modulation `_ + ''' + analog_modulation_fm_band = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AnlgModFmBand, 1150191) + '''Type: enums.AnlgModFmBand + + Specifies the analog modulation frequency modulation (FM) band to use. Wideband FM allows for modulating signals higher than 100kHz. Narrowband FM allows for modulating lower frequency signals. + + **Default Value:** AnlgModFmBand.WIDEBAND + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Modulation `_ + + **Defined Values**: + + +--------------------------+----------------+--------------------------------------------+ + | Name | Value | Description | + +==========================+================+============================================+ + | AnlgModFmBand.NARROWBAND | 17000 (0x4268) | Specifies narrowband frequency modulation. | + +--------------------------+----------------+--------------------------------------------+ + | AnlgModFmBand.WIDEBAND | 17001 (0x4269) | Specifies wideband frequency modulation. | + +--------------------------+----------------+--------------------------------------------+ + ''' + analog_modulation_fm_deviation = _attributes.AttributeViReal64(1150035) + '''Type: float + + Specifies the frequency deviation to use in frequency modulation. + + **Units**: hertz (Hz) + + **Default Value:** 1kHz + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + ''' + analog_modulation_fm_narrowband_integrator = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AnlgModFmNarrowbandIntegrator, 1150165) + '''Type: enums.AnlgModFmNarrowbandIntegrator + + Specifies the narrowband frequency modulation (FM) range to apply by sending the signal through an integrator. + + This property is valid only when you set the analog_modulation_type property to AnlgModType.FM and the analog_modulation_fm_band property to AnlgModFmBand.NARROWBAND. + + **Default Value:** AnlgModFmNarrowbandIntegrator._100hzto1khz + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Modulation `_ + + **Defined Values**: + + +----------------------------------------------+----------------+---------------------------------------------+ + | Name | Value | Description | + +==============================================+================+=============================================+ + | AnlgModFmNarrowbandIntegrator._100hzto1khz | 18000 (0x4650) | Specifies a range from 100Â Hz to 1Â kHz. | + +----------------------------------------------+----------------+---------------------------------------------+ + | AnlgModFmNarrowbandIntegrator._10khzto100khz | 18002 (0x4652) | Specifies a range from 10Â kHz to 100Â kHz. | + +----------------------------------------------+----------------+---------------------------------------------+ + | AnlgModFmNarrowbandIntegrator._1khzto10khz | 18001 (0x4651) | Specifies a range from 1Â kHz to 10Â kHz. | + +----------------------------------------------+----------------+---------------------------------------------+ + ''' + analog_modulation_fm_sensitivity = _attributes.AttributeViReal64(1150166) + '''Type: float + + Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator. + + **Default Value:** 100 + + **Valid Values:** 0 to 100 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Modulation `_ + ''' + analog_modulation_pm_deviation = _attributes.AttributeViReal64(1150062) + '''Type: float + + Specifies the `deviation `_ to use in phase modulation, in degrees. + + **Units**: degrees (°) + + **Default Value:** 90° + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653 + + **Related Topics** + + `Modulation Schemes `_ + ''' + analog_modulation_pm_mode = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AnlgModPmMode, 1150192) + '''Type: enums.AnlgModPmMode + + Specifies the phase modulation (PM) mode to use. + + **Default Value:** AnlgModPmMode.LOW_PHASE_NOISE + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Phase Modulation `_ + + **Defined Values**: + + +-------------------------------+----------------+-----------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===============================+================+===============================================================================================+ + | AnlgModPmMode.HIGH_DEVIATION | 19000 (0x4a38) | Specifies high deviation. High deviation comes at the expense of a higher phase noise. | + +-------------------------------+----------------+-----------------------------------------------------------------------------------------------+ + | AnlgModPmMode.LOW_PHASE_NOISE | 19001 (0x4a39) | Specifies low phase noise. Low phase noise comes at the expense of a lower maximum deviation. | + +-------------------------------+----------------+-----------------------------------------------------------------------------------------------+ + ''' + analog_modulation_pm_sensitivity = _attributes.AttributeViReal64(1150168) + '''Type: float + + Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator. + + **Default Value:** 100 + + **Valid Values:** 0 to 100 + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Phase Modulation `_ + ''' + analog_modulation_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AnlgModType, 1150032) + '''Type: enums.AnlgModType + + Specifies the analog modulation format to use. + + **Default Value:** AnlgModType.NONE + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Modulation `_ + + `PXI/PXIe-5650/5651/5652 Modulation Schemes `_ + + `PXIe-5654/5654 with PXIe-5696 Modulation Schemes `_ + + **Defined Values**: + + +------------------+--------------+--------------------------------------------------+ + | Name | Value | Description | + +==================+==============+==================================================+ + | AnlgModType.AM | 2002 (0x7d2) | Specifies that the analog modulation type is AM. | + +------------------+--------------+--------------------------------------------------+ + | AnlgModType.FM | 2000 (0x7d0) | Specifies that the analog modulation type is FM. | + +------------------+--------------+--------------------------------------------------+ + | AnlgModType.NONE | 0 (0x0) | Disables analog modulation. | + +------------------+--------------+--------------------------------------------------+ + | AnlgModType.PM | 2001 (0x7d1) | Specifies that the analog modulation type is PM. | + +------------------+--------------+--------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + analog_modulation_waveform_frequency = _attributes.AttributeViReal64(1150034) + '''Type: float + + Specifies the frequency of the waveform to use as the message signal in analog modulation. + + **Units:** hertz (Hz) + + **Default Value:** 1kHz + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + ''' + analog_modulation_waveform_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AnlgModWfmType, 1150033) + '''Type: enums.AnlgModWfmType + + Specifies the type of waveform to use as the message signal for analog modulation. + + **Default Value:** AnlgModWfmType.SINE + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + **Defined Values**: + + +-------------------------+--------------+-----------------------------------------------------------------+ + | Name | Value | Description | + +=========================+==============+=================================================================+ + | AnlgModWfmType.SINE | 3000 (0xbb8) | Specifies that the analog modulation waveform type is sine. | + +-------------------------+--------------+-----------------------------------------------------------------+ + | AnlgModWfmType.SQUARE | 3001 (0xbb9) | Specifies that the analog modulation waveform type is square. | + +-------------------------+--------------+-----------------------------------------------------------------+ + | AnlgModWfmType.TRIANGLE | 3002 (0xbba) | Specifies that the analog modulation waveform type is triangle. | + +-------------------------+--------------+-----------------------------------------------------------------+ + ''' + arb_carrier_frequency = _attributes.AttributeViReal64(1150015) + '''Type: float + + **Units**: hertz (Hz) + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate a carrier frequency with a waveform. + Indicates the carrier frequency generated by the arbitrary waveform generator (AWG) module. The specified carrier frequency is related to the RF output as shown in the following equations: + + +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Device | Equations | + +===============================================================================+===============================================================================================================================================================================================================================================================================================================+ + | PXI-5610, PXI-5670/5671, PXIe-5672 | RF Frequency (MHz) = *Upconverter Center Frequency* + *Arb Carrier Frequency* – 25 MHz | + +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 | RF Frequency (MHz) = *Upconverter Center Frequency* + *Arb Carrier Frequency*.Note that - the upconverter_center_frequency property and the arb_carrier_frequency property cannot be set at the same time. The only time the carrier frequency is nonzero on these devices is when in-band retuning is used. | + +-------------------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: - Use this property to associate a carrier frequency with a waveform. + + - This property is read-only on the PXI-5670/5671 and PXIe-5672. + ''' + arb_digital_gain = _attributes.AttributeViReal64(1150204) + '''Type: float + + Specifies the digital gain, in decibels. The digital gain is applied to the waveform data after filtering. Use this property to adjust the output power of the device while keeping the analog path fixed. This may cause clipping, overflows, or quantization noise if used improperly. + + To set this property, the NI-RFSG device must be in the Configuration or Generation state. + + **Default Value:** 0 dB + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + arb_filter_raised_cosine_alpha = _attributes.AttributeViReal64(1150060) + '''Type: float + + Specifies the alpha value to use when calculating the pulse-shaping filter coefficients. You can use this property only when the arb_filter_type property is set to FilterType.ARB_FILTER_TYPE_RAISED_COSINE and with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this property with a device that does not support OSP. + + **Supported Devices:** PXI-5671, PXIe-5672/5673/5673E + ''' + arb_filter_root_raised_cosine_alpha = _attributes.AttributeViReal64(1150057) + '''Type: float + + Specifies the alpha value to use when calculating the pulse-shaping FIR filter coefficients. You can use this property only when the arb_filter_type property is set to FilterType.ARB_FILTER_TYPE_ROOT_RAISED_COSINE and with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this property with a device that does not support OSP. + + **Supported Devices:** PXI-5671, PXIe-5672/5673/5673E + ''' + arb_filter_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.FilterType, 1150056) + '''Type: enums.FilterType + + Specifies the pulse-shaping filter type for the FIR filter. You can use this property only with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this property with a device that does not support OSP. + + **Default Value:** FilterType.NONE + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Defined Values**: + + +-----------------------------------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===============================================+================+=======================================================================================================================================+ + | FilterType.NONE | 0 (0x0) | Disables analog modulation. | + +-----------------------------------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------+ + | FilterType.ARB_FILTER_TYPE_RAISED_COSINE | 10002 (0x2712) | Applies a raised cosine filter to the data with the alpha value specified with the arb_filter_raised_cosine_alpha property. | + +-----------------------------------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------+ + | FilterType.ARB_FILTER_TYPE_ROOT_RAISED_COSINE | 10001 (0x2711) | Applies a root-raised cosine filter to the data with the alpha value specified with the arb_filter_root_raised_cosine_alpha property. | + +-----------------------------------------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + arb_max_number_waveforms = _attributes.AttributeViInt32(1250454) + '''Type: int + + Returns the maximum number of waveforms the device can hold in memory. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - query_arb_waveform_capabilities + ''' + arb_onboard_sample_clock_mode = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ArbOnboardSampleClockMode, 1150029) + '''Type: enums.ArbOnboardSampleClockMode + + Specifies the Sample Clock mode on the device. To set this property, the device must be in the Configuration state. + + PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: ArbOnboardSampleClockMode.DIVIDE_DOWN is the only supported value for this device. + + **Default Values:** + + PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: ArbOnboardSampleClockMode.DIVIDE_DOWN + + PXIe-5673/5673E: ArbOnboardSampleClockMode.HIGH_RESOLUTION + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Clocking Modes `_ + + **Valid Values**: + + +-------------------------------------------+--------------------------------------------------------------+ + | Name | Description | + +===========================================+==============================================================+ + | ArbOnboardSampleClockMode.HIGH_RESOLUTION | Sample rates are generated by a high-resolution clock. | + +-------------------------------------------+--------------------------------------------------------------+ + | ArbOnboardSampleClockMode.DIVIDE_DOWN | Sample rates are generated by dividing the source frequency. | + +-------------------------------------------+--------------------------------------------------------------+ + + Note: Using the high resolution clock may result in increased phase noise. + ''' + arb_oscillator_phase_dac_value = _attributes.AttributeViInt32(1150089) + '''Type: int + + Specifies the oscillator phase digital-to-analog converter (DAC) value on the arbitrary waveform generator (AWG). Use this property to reduce the trigger jitter when synchronizing multiple devices with NI-TClk. This property can also help maintain synchronization repeatability by writing a previous measurement's phase DAC value to the current session. This property is applicable only when using the arb_sample_clock_source property set to NIRFSG_VAL_CLK_IN_STR. + + **Supported Devices:** PXIe-5673/5673E + + **Related Topics** + + `NI-TClk Overview `_ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + arb_power = _attributes.AttributeViReal64(1150016) + '''Type: float + + Indicates the average output power from the PXI-5421, PXI-5441, PXIe-5442, and PXIe-5450 AWG module. If an arbitrary waveform is being generated, this property specifies either the average power or the peak power of the signal, depending on the power_level_type property setting. + + **Units**: dBm + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + ''' + arb_pre_filter_gain = _attributes.AttributeViReal64(1150025) + '''Type: float + + Specifies the AWG prefilter gain. The prefilter gain is applied to the waveform data before any other signal processing. Reduce this value to prevent overflow in the AWG interpolation filters. Other gains on the NI-RFSG device are automatically adjusted to compensate for nonunity AWG prefilter gain. The PXI-5671, PXIe-5672 must be in the Configuration state to use this property. However, the PXIe-5644/5645/5646, PXIe-5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842 can be in either the Configuration or the Generation state to use this property. PXIe-5860 can only be in the Configuration state to use this property. + + On the PXI-5671, this property applies only when the iq_rate property is set to a value less than or equal to 8.33MS/s. On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, this property is always applicable. + + **Units**: dB + + **Default Value:** 0dB + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + arb_sample_clock_rate = _attributes.AttributeViReal64(1150031) + '''Type: float + + Returns the rate of the Sample Clock on the device. + + **Units**: hertz (Hz) + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + arb_sample_clock_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ArbSampleClockSource, 1150030) + '''Type: enums.ArbSampleClockSource + + Specifies the Sample Clock source for the device. To set this property, the NI-RFSG device must be in the Configuration state. + + PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: ArbSampleClockSource.ONBOARD_CLOCK is the only supported value for this device. + + **Default Value:** ArbSampleClockSource.ONBOARD_CLOCK + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Timing Configurations `_ + + **Defined Values**: + + +------------------------------------+--------------+---------------------------------------------------------------+ + | Name | Value | Description | + +====================================+==============+===============================================================+ + | ArbSampleClockSource.CLK_IN | ClkIn | Uses the external clock as the Sample Clock source. | + +------------------------------------+--------------+---------------------------------------------------------------+ + | ArbSampleClockSource.ONBOARD_CLOCK | OnboardClock | Uses the AWG module onboard clock as the Sample Clock source. | + +------------------------------------+--------------+---------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + arb_selected_waveform = _attributes.AttributeViString(1250451) + '''Type: str + + Specifies the waveform in onboard memory to generate upon calling the Init method when the generation_mode property is set to GenerationMode.ARB_WAVEFORM. The arb_selected_waveform property is ignored when the generation_mode property is set to GenerationMode.SCRIPT or GenerationMode.CW. To set the arb_selected_waveform property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + **High-Level Methods**: + + - select_arb_waveform + ''' + arb_temperature = _attributes.AttributeViReal64(1150068) + '''Type: float + + Returns the AWG module temperature in degrees Celsius. + + PXIe-5820/5840/5841/5842: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + ''' + arb_waveform_quantum = _attributes.AttributeViInt32(1250455) + '''Type: int + + Returns the waveform quantum for the device. The number of samples in a waveform must be an integer multiple of the waveform quantum. The other restrictions on the length of the waveform are the arb_waveform_size_min and arb_waveform_size_max arbitrary waveform sizes. + + PXI-5671, PXIe-5672: The value of this property depends on the I/Q rate. Set the iq_rate property before reading this property. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - query_arb_waveform_capabilities + ''' + arb_waveform_repeat_count = _attributes.AttributeViInt32(1150158) + '''Type: int + + Specifies the repeat count of a waveform when you set the arb_waveform_repeat_count_is_finite property to True. This property is valid only when you set the generation_mode property to GenerationMode.ARB_WAVEFORM. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** 1 + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + arb_waveform_repeat_count_is_finite = _attributes.AttributeViBoolean(1150157) + '''Type: bool + + Specifies the repetition mode of a waveform when you set the generation_mode property to GenerationMode.ARB_WAVEFORM. If you set this property to True, the number of repetitions is determined by the arb_waveform_repeat_count property. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------------------------------------------------+ + | Value | Description | + +=======+===================================================================+ + | True | Repeats the waveform a finite number of times. | + +-------+-------------------------------------------------------------------+ + | False | Repeats the waveform continuously until you abort the generation. | + +-------+-------------------------------------------------------------------+ + ''' + arb_waveform_size_max = _attributes.AttributeViInt32(1250457) + '''Type: int + + Returns the size of the largest waveform that is allowed. + + To read this property, the NI-RFSG device must be in the Configuration state. + + For the PXI-5671 and PXIe-5672, the value of this property depends on the I/Q rate. Set the iq_rate before reading this property. For the PXIe-5673/5673E, the maximum waveform size is reduced to account for the amount of device memory currently used. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - query_arb_waveform_capabilities + + Note: Not all onboard memory is available for waveform storage. A portion of onboard memory stores scripts that specify how the waveforms are generated. These scripts typically require less than 1KB of onboard memory. + ''' + arb_waveform_size_min = _attributes.AttributeViInt32(1250456) + '''Type: int + + Returns the smallest allowable waveform size. For the PXI-5671 and PXIe-5672, the value of this property depends on the I/Q rate. Set the iq_rate property before reading this property. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - query_arb_waveform_capabilities + ''' + arb_waveform_software_scaling_factor = _attributes.AttributeViReal64(1150052) + '''Type: float + + Specifies how much to scale the data before writing it with the write_arb_waveform method. The resulting waveform must be smaller than 1.0 in complex magnitude. This property is supported only if you set the power_level_type property to PowerLevelType.PEAK. + + **Default Value:** 1.0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Spurious Performance `_ + ''' + attenuator_hold_enabled = _attributes.AttributeViBoolean(1150009) + '''Type: bool + + Specifies whether attenuator hold is enabled. While this property is set to True, changing the power level causes NI-RFSG to scale the digital data sent to the AWG instead of adjusting the attenuators. Changing power levels in this manner allows the device to increase or decrease the power level in more accurate increments, but it may affect signal-to-noise ratios (noise density). + + + Setting the attenuator_hold_enabled property to True limits the power levels that can be attained. With attenuator hold enabled, the power level must satisfy the following conditions: + + - Power level less than or equal to attenuator_hold_max_power + - Power level greater than or equal to (maximum power level -70dB) + - Power level greater than or equal to -145dBm + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Attenuator Hold `_ + + `Settling Times `_ + + **Defined Values**: + + +-------+---------------------------+ + | Value | Description | + +=======+===========================+ + | True | Enables attenuator hold. | + +-------+---------------------------+ + | False | Disables attenuator hold. | + +-------+---------------------------+ + + Note: The frequency cannot be changed on the PXI-5670/5671 or PXIe-5672 while this property is set to True. + ''' + attenuator_hold_max_power = _attributes.AttributeViReal64(1150010) + '''Type: float + + Specifies the maximum power level of the RF output signal when the attenuator_hold_enabled property is set to True. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units**: dBm + + **Defined Values**: + Refer to the specifications document for your device for allowable maximum power levels. + + **Default Value:** + + PXI-5670/5671, PXIe-5672: 17 + + PXIe-5673/5673E: 10 + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Attenuator Hold `_ + + `Settling Times `_ + ''' + attenuator_setting = _attributes.AttributeViReal64(1150173) + '''Type: float + + Specifies the level of attenuation in the attenuator path. Setting this property overrides the value chosen by NI-RFSG. Not all power levels are achievable if you set this property. + + **Units**: dB + + **Valid Values**: 0dB to 110dB in steps of 10 + + **Supported Devices:** PXIe-5654 with PXIe-5696 + + Note: Resetting this property reverts back to the default unset behavior. + ''' + automatic_thermal_correction = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AutomaticThermalCorrection, 1150008) + '''Type: enums.AutomaticThermalCorrection + + Enables or disables automatic thermal correction. When this property is enabled, changes to settings cause NI-RFSG to check whether the device temperature has changed and adjusts the settings as needed. When this property is disabled, you must explicitly call the perform_thermal_correction method to adjust the device for temperature changes. + + **Default Value:** AutomaticThermalCorrection.ENABLE + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Temperature Monitoring `_ + + `Settling Times `_ + **Defined Values**: + + +------------------------------------+---------+-------------------------------------------+ + | Name | Value | Description | + +====================================+=========+===========================================+ + | AutomaticThermalCorrection.DISABLE | 0 (0x0) | Automatic thermal correction is disabled. | + +------------------------------------+---------+-------------------------------------------+ + | AutomaticThermalCorrection.ENABLE | 1 (0x1) | Automatic thermal correction is enabled. | + +------------------------------------+---------+-------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + auto_power_search = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.AutomaticPowerSearch, 1150196) + '''Type: enums.AutomaticPowerSearch + + Enables or disables automatic power search. When this property is enabled, a power search performs after the device is initiated, after output power is enabled, or when the frequency or power level changes while the device is generating. When this property is disabled, NI-RFSG does not perform a power search unless you call the perform_power_search method. + + This property is ignored when the alc_control property is enabled. + + PXIe-5654: AutomaticPowerSearch.DISABLE is the only supported value for this device. + + **Default Value:** + + PXIe-5654: AutomaticPowerSearch.DISABLE + + PXIe-5654 with PXIe-5696: AutomaticPowerSearch.ENABLE + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Power Search `_ + + **Defined Values**: + + +------------------------------+---------+----------------------------------+ + | Name | Value | Description | + +==============================+=========+==================================+ + | AutomaticPowerSearch.DISABLE | 0 (0x0) | Disables automatic power search. | + +------------------------------+---------+----------------------------------+ + | AutomaticPowerSearch.ENABLE | 1 (0x1) | Enables automatic power search. | + +------------------------------+---------+----------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + available_paths = _attributes.AttributeViString(1150312) + '''Type: str + + Returns a comma separated list of the configurable paths available for use based on your instrument configuration. + ''' + available_ports = _attributes.AttributeViString(1150249) + '''Type: str + + Returns a comma-separated list of the ports available for use based on your instrument configuration. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + cache = _attributes.AttributeViBoolean(1050004) + '''Type: bool + + Specifies whether to cache the value of properties. When caching is enabled, NI-RFSG tracks the current NI-RFSG device settings and avoids sending redundant commands to the device. NI-RFSG can always cache or never cache particular properties, regardless of the setting of this property. Call the __init__ method to override the default value. + + **Default Value:** True + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: + + +-------+-------------------+ + | Value | Description | + +=======+===================+ + | True | Enables caching. | + +-------+-------------------+ + | False | Disables caching. | + +-------+-------------------+ + ''' + compensate_for_filter_group_delay = _attributes.AttributeViBoolean(1152832) + '''Type: bool + + Enables or disables compensation for filter group delay on the AWG module. This property also accounts for the upconverter group delay and aligns the RF output with the Started Event, Done Event, and Marker Events. + + At a low I/Q rate, the group delay can become so large that some devices may not be able to align the events with the RF output, in which case you must increase the I/Q rate or disable this property. + + **Default Value:** False + + **Supported Devices:** PXIe-5672 + **Defined Values**: + + +-------+-----------------------------------------------+ + | Value | Description | + +=======+===============================================+ + | True | Enables compensation for filter group delay. | + +-------+-----------------------------------------------+ + | False | Disables compensation for filter group delay. | + +-------+-----------------------------------------------+ + ''' + configuration_list_is_done = _attributes.AttributeViBoolean(1150175) + '''Type: bool + + Returns whether the configuration list is still running or done. To read this property, the device must be in the Generation state. + + **Supported Devices:** PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + **Defined Values**: + + +-------+------------------------------------------+ + | Value | Description | + +=======+==========================================+ + | True | The configuration list is done. | + +-------+------------------------------------------+ + | False | The configuration list is still running. | + +-------+------------------------------------------+ + ''' + configuration_list_repeat = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ConfigurationListRepeat, 1150102) + '''Type: enums.ConfigurationListRepeat + + Specifies whether the configuration list runs only once or continuously. + + **Default Value:** ConfigurationListRepeat.CONTINUOUS + + **Supported Devices:** PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E + + **Related Topics** + + `RF List Mode `_ + + `Using RF List Mode `_ + **Defined Values**: + + +------------------------------------+-------+---------------------------------------------------+ + | Name | Value | Description | + +====================================+=======+===================================================+ + | ConfigurationListRepeat.CONTINUOUS | 0 | NI-RFSG runs the configuration list continuously. | + +------------------------------------+-------+---------------------------------------------------+ + | ConfigurationListRepeat.SINGLE | 1 | NI-RFSG runs the configuration list only once. | + +------------------------------------+-------+---------------------------------------------------+ + ''' + configuration_list_step_in_progress = _attributes.AttributeViInt64(1150122) + '''Type: int + + Returns the configuration list step that is currently programmed to the hardware. The list is zero-indexed. You can query this property only when a list is executed. + + PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E: This property can be read only when a configuration list is running. + + PXIe-5644/5645/5646: This property always returns 0 when the configuration list is not running. + + PXIe-5820/5830/5831/5832/5840/5841/5842: If the configuration list is not running, this property returns the last step of a configuration list that is programmed to the hardware. If the device was last initiated without an active configuration list, this property returns 0. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + ''' + configuration_list_step_trigger_terminal_name = _attributes.AttributeViString(1150117) + '''Type: str + + Returns the fully-qualified signal name as a string. + + **Default Values**: + + PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. + + PXIe-5673E: /*AWGName*/ConfigurationListStepTrigger, where *AWGName* is the name of your associated AWG module in MAX. + + PXIe-5820/5830/5831/5832/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. + + **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Triggers `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - _get_terminal_name + ''' + configuration_list_step_trigger_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ConfigListTrigType, 1150098) + '''Type: enums.ConfigListTrigType + + Specifies the type of trigger to use as the Configuration List Step Trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** ConfigListTrigType.NONE + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + **Defined Values**: + + +---------------------------------+---------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=================================+=========+========================================================================================================================================================================================================================+ + | ConfigListTrigType.DIGITAL_EDGE | 1 (0x1) | Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the digital_edge_configuration_list_step_trigger_source property, and the active edge is always rising. | + +---------------------------------+---------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigType.NONE | 0 (0x0) | Generation starts immediately, but the list does not advance. | + +---------------------------------+---------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + configuration_settled_event_terminal_name = _attributes.AttributeViString(1150194) + '''Type: str + + Returns the name of the fully qualified signal name as a string. + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Default Values**: + + PXIe-5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationSettledEvent, where *ModuleName* is the name of your device in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/ConfigurationSettledEvent, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationSettledEvent, where *ModuleName* is the name of your device in MAX. + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + ''' + correction_temperature = _attributes.AttributeViReal64(1150104) + '''Type: float + + Specifies the temperature, in degrees Celsius, to use for adjusting the device settings to correct for temperature changes. If you set this property, NI-RFSG uses the value you specify and therefore no longer uses the actual device temperature as the correction temperature. If you do not set this property, NI-RFSG checks the current device temperature in the Committed state and automatically sets the value of this property. + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: This property is read only. + + **Units**: Degrees Celsius + + **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: - Resetting this property reverts back to the default unset behavior. + + - Use this property only when your application requires the same settings to be used every time, regardless of the temperature variation. In these cases, it is best to ensure that the temperature does not vary too much. + ''' + data_transfer_block_size = _attributes.AttributeViInt32(1150048) + '''Type: int + + Indicates the number of samples to transfer at one time from the device to host memory. This property is useful when the total data to be transferred to onboard memory is large. + + **Units**: samples (s) + + **Default Value**: 1Ms + + **Supported Devices:** PXIe-5672/5673/5673E + ''' + data_transfer_maximum_bandwidth = _attributes.AttributeViReal64(1150086) + '''Type: float + + Specifies the maximum amount of bus bandwidth to use for data transfers. + + **Units**: bytes per second + + **Default Value**: Device maximum + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Improving Streaming Performance `_ + ''' + data_transfer_maximum_in_flight_reads = _attributes.AttributeViInt32(1150088) + '''Type: int + + Specifies the maximum number of concurrent PCI Express read requests the RF signal generator can issue. + + When transferring data from computer memory to device onboard memory across the PCI Express bus, the signal generator can issue multiple memory reads at the same time. In general, the larger the number of read requests, the more efficiently the device uses the bus because the multiple read requests keep the data flowing, even in a PCI Express topology that has high latency due to PCI Express switches in the data path. Most NI devices can issue a large number of read requests (typically 8 or 16). By default, this property is set to the highest value the RF signal generator supports. + + If other devices in your system cannot tolerate long data latencies, it may be helpful to decrease the number of in-flight read requests the RF signal generator issues. This helps to reduce the amount of data the signal generator reads at one time. + + **Units**: number of packets + + **Default Value**: Device maximum + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Improving Streaming Performance `_ + ''' + data_transfer_preferred_packet_size = _attributes.AttributeViInt32(1150087) + '''Type: int + + Specifies the preferred size of the data field in a PCI Express read request packet. + + In general, the larger the packet size, the more efficiently the device uses the bus. By default, NI RF signal generators use the largest packet size allowed by the system. However, due to different system implementations, some systems may perform better with smaller packet sizes. + + Recommended values for this property are powers of two between 64 and 512. + + **Units**: bytes + + **Default Value**: Device maximum + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Improving Streaming Performance `_ + + Note: In some cases, the RF signal generator generates packets smaller than the preferred size you set with this property. + ''' + deembedding_compensation_gain = _attributes.AttributeViReal64(1150289) + '''Type: float + + Returns the de-embedding gain applied to compensate for the mismatch on the specified port. If de-embedding is enabled, NI-RFSG uses the returned compensation gain to remove the effects of the external network between the instrument and the DUT. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + + Tip: + This property can be set/get on specific deembedding_port within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container deembedding_port to specify a subset. + + Example: :py:attr:`my_session.deembedding_port[ ... ].deembedding_compensation_gain` + + To set/get on all deembedding_port, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.deembedding_compensation_gain` + ''' + deembedding_selected_table = _attributes.AttributeViString(1150253) + '''Type: str + + Selects the de-embedding table to apply to the measurements on the specified port. + + To use this property, you must use the channelName parameter of the _set_attribute_vi_string method to specify the name of the port to configure for de-embedding. + + If de-embedding is enabled, NI-RFSG uses the specified table to remove the effects of the external network between the instrument and the DUT. + + Use the create deembedding sparameter table array method to create tables. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + + Tip: + This property can be set/get on specific deembedding_port within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container deembedding_port to specify a subset. + + Example: :py:attr:`my_session.deembedding_port[ ... ].deembedding_selected_table` + + To set/get on all deembedding_port, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.deembedding_selected_table` + ''' + deembedding_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.DeembeddingTypeAttrVals, 1150252) + '''Type: enums.DeembeddingTypeAttrVals + + Specifies the type of de-embedding to apply to measurements on the specified port. + + To use this property, you must use the channelName parameter of the _set_attribute_vi_int32 method to specify the name of the port to configure for de-embedding. + + If you set this property to DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR or DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR, NI-RFSG adjusts the instrument settings and the returned data to remove the effects of the external network between the instrument and the DUT. + + **Default Value**: DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR + + **Valid Values for PXIe-5830/5832/5840/5841/5842/5860** : DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR or DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE + + **Valid Values for PXIe-5831** DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR, DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR, or DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE. DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR is only supported for TRX Ports in a Semiconductor Test System (STS). + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: + + +-------------------------------------------------+----------------+------------------------------------------------------------------------+ + | Name | Value | Description | + +=================================================+================+========================================================================+ + | DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE | 25000 (0x61a8) | De-embedding is not applied to the measurement. | + +-------------------------------------------------+----------------+------------------------------------------------------------------------+ + | DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR | 25001 (0x61a9) | De-embeds the measurement using only the gain term. | + +-------------------------------------------------+----------------+------------------------------------------------------------------------+ + | DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR | 25002 (0x61aa) | De-embeds the measurement using the gain term and the reflection term. | + +-------------------------------------------------+----------------+------------------------------------------------------------------------+ + + Tip: + This property can be set/get on specific deembedding_port within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container deembedding_port to specify a subset. + + Example: :py:attr:`my_session.deembedding_port[ ... ].deembedding_type` + + To set/get on all deembedding_port, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.deembedding_type` + ''' + device_instantaneous_bandwidth = _attributes.AttributeViReal64(1150226) + '''Type: float + + Specifies the bandwidth of the device. The instantaneous bandwidth is the effective real-time bandwidth of the signal path for your configuration. + + The signal_bandwidth centered at the frequency must fit within the device instantaneous bandwidth, which is centered at the upconverter_center_frequency. + + **Units**: Hz + + **Default Value**: N/A + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `PXIe-5830 Frequency and Bandwidth Selection `_ + + `PXIe-5831/5832 Frequency and Bandwidth Selection `_ + + `PXIe-5841 Frequency and Bandwidth Selection `_ + ''' + device_temperature = _attributes.AttributeViReal64(1150017) + '''Type: float + + Returns the device temperature. If the NI-RFSG session is controlling multiple devices, this property returns the temperature of the primary NI RF device. The NI-RFSG session is opened using the primary RF device name. + + Serial signals between the sensor and the system control unit could modulate the signal being generated, thus causing phase spurs. After the device thoroughly warms up, its temperature varies only slightly (less than 1 degree Celsius) and slowly, and it is not necessary to constantly poll this temperature sensor. + + PXIe-5644/5645/5646, PXIe-5820/5840/5841: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + PXIe-5830/5831/5832: To use this property, you must first set the channelName parameter of the _set_attribute_vi_real64 method to using the appropriate string for your instrument configuration. Setting the _set_attribute_vi_real64 method is not required for the PXIe-3621/3622. Refer to the following table to determine which strings are valid for your configuration. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Temperature Monitoring `_ + + `Thermal Shutdown `_ + + +----------------------------+--------------------------+-------------------------+ + | Hardware Module | TRX Port Type | Active Channel String | + +============================+==========================+=========================+ + | PXIe-3621/3622 | — | if or "" (empty string) | + +----------------------------+--------------------------+-------------------------+ + | PXIe-5820 | — | fpga | + +----------------------------+--------------------------+-------------------------+ + | First connected mmRH-5582 | DIRECT TRX PORTS Only | rf0 | + +----------------------------+--------------------------+-------------------------+ + | First connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf0switch0 | + +----------------------------+--------------------------+-------------------------+ + | First connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf0switch1 | + +----------------------------+--------------------------+-------------------------+ + | Second connected mmRH-5582 | DIRECT TRX PORTS Only | rf1 | + +----------------------------+--------------------------+-------------------------+ + | Second connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf1switch0 | + +----------------------------+--------------------------+-------------------------+ + | Second connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf1switch1 | + +----------------------------+--------------------------+-------------------------+ + ''' + digital_edge_configuration_list_step_trigger_edge = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ConfigListTrigDigEdgeEdge, 1150103) + '''Type: enums.ConfigListTrigDigEdgeEdge + + Specifies the active edge for the Configuration List Step trigger. This property is valid only when the configuration_list_step_trigger_type property is set to digital edge. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + **Defined Values**: + + +--------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + | Name | Description | + +================================+================================================================================================================================+ + | ConfigListTrigDigEdgeEdge.EDGE | Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level. | + +--------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + digital_edge_configuration_list_step_trigger_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ConfigListTrigDigEdgeSource, 1150099) + '''Type: enums.ConfigListTrigDigEdgeSource + + Specifies the source terminal for the Configuration List Step Trigger. This property is valid only when the configuration list step type property is set to digital edge. + + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `RF List Mode `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + `Marker Events `_ + **Defined Values**: + + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===========================================+==============+=====================================================================================================================+ + | ConfigListTrigDigEdgeSource.MARKER0_EVENT | Marker0Event | The trigger is received from the Marker Event 0. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.MARKER1_EVENT | Marker1Event | The trigger is received from the Marker Event 1. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.MARKER2_EVENT | Marker2Event | The trigger is received from the Marker Event 2. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.MARKER3_EVENT | Marker3Event | The trigger is received from the Marker Event 3. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PFI0 | PFI0 | The trigger is received on PFI 0. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PFI1 | PFI1 | The trigger is received on PFI 1. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_STAR | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXI_TRIG7 | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.PXIE_DSTARB | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.TIMER_EVENT | TimerEvent | The trigger is received from the Timer Event. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.TRIG_IN | TrigIn | The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigDigEdgeSource.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + digital_edge_script_trigger_edge = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ScriptTrigDigEdgeEdge, 1150021) + '''Type: enums.ScriptTrigDigEdgeEdge + + Specifies the active edge for the Script Trigger. This property is used when the script_trigger_type property is set to digital edge. To set the digital_edge_script_trigger_edge property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** ScriptTrigDigEdgeEdge.RISING + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Digital Edge Trigger `_ + + **High-Level Methods**: + + - configure_digital_edge_script_trigger + **Defined Values**: + + +-------------------------------+---------+-------------------------------------------------------------------------------+ + | Name | Value | Description | + +===============================+=========+===============================================================================+ + | ScriptTrigDigEdgeEdge.FALLING | 1 (0x1) | Asserts the trigger when the signal transitions from high level to low level. | + +-------------------------------+---------+-------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeEdge.RISING | 0 (0x0) | Asserts the trigger when the signal transitions from low level to high level. | + +-------------------------------+---------+-------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Tip: + This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_edge_script_trigger_edge` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_edge_script_trigger_edge` + ''' + digital_edge_script_trigger_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ScriptTrigDigEdgeSource, 1150020) + '''Type: enums.ScriptTrigDigEdgeSource + + Specifies the source terminal for the Script Trigger. This property is used when the script_trigger_type property is set to digital edge. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - configure_digital_edge_script_trigger + **Defined Values**: + + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=============================================+=============+=========================================================================================================================================+ + | ScriptTrigDigEdgeSource.PFI0 | PFI0 | The trigger is received on PFI 0. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PFI1 | PFI1 | The trigger is received on PFI 1. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PFI2 | PFI2 | The trigger is received on PFI 2. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PFI3 | PFI3 | The trigger is received on PFI 3. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_STAR | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXI_TRIG7 | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PXIE_DSTARB | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.PULSE_IN | PulseIn | The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.SYNC_SCRIPT_TRIGGER | Sync_Script | The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646. | + +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Tip: + This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_edge_script_trigger_source` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_edge_script_trigger_source` + ''' + digital_edge_start_trigger_edge = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.StartTrigDigEdgeEdge, 1250459) + '''Type: enums.StartTrigDigEdgeEdge + + Specifies the active edge for the Start Trigger. This property is used when the start_trigger_type property is set to digital edge. To set the digital_edge_start_trigger_edge property, the NI-RFSG device must be in the Configuration state. + + PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + **Default Value:** StartTrigDigEdgeEdge.RISING + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Digital Edge Trigger `_ + + **High-Level Methods**: + + - configure_digital_edge_start_trigger + + **Defined Values**: + + +------------------------------+---------+------------------------------------------------------------------+ + | Name | Value | Description | + +==============================+=========+==================================================================+ + | StartTrigDigEdgeEdge.FALLING | 1 (0x1) | Occurs when the signal transitions from high level to low level. | + +------------------------------+---------+------------------------------------------------------------------+ + | StartTrigDigEdgeEdge.RISING | 0 (0x0) | Occurs when the signal transitions from low level to high level. | + +------------------------------+---------+------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + digital_edge_start_trigger_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.StartTrigDigEdgeSource, 1150002) + '''Type: enums.StartTrigDigEdgeSource + + Specifies the source terminal for the Start Trigger. This property is used when the start_trigger_type property is set to digital edge. The digital_edge_start_trigger_source property is not case-sensitive. To set the digital_edge_start_trigger_source property, the NI-RFSG device must be in the Configuration state. + + PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - configure_digital_edge_start_trigger + **Defined Values**: + + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=============================================+=============+========================================================================================================================================+ + | StartTrigDigEdgeSource.PFI0 | PFI0 | The trigger is received on PFI 0. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PFI1 | PFI1 | The trigger is received on PFI 1. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PFI2 | PFI2 | The trigger is received on PFI 2. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PFI3 | PFI3 | The trigger is received on PFI 3. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_STAR | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXI_TRIG7 | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.PXIE_DSTARB | PXIe_DStarB | The trigger is received on the PXI DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.TRIG_IN | TrigIn | The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigDigEdgeSource.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigEdgeSource.SYNC_SCRIPT_TRIGGER | Sync_Script | The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646. | + +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + digital_equalization_enabled = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.DigitalEqualizationEnabled, 1150012) + '''Type: enums.DigitalEqualizationEnabled + + When this property is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (\>500 kHz), but it increases tuning times. + + On the PXI-5670/5671, equalization is performed in the software, so tuning time is increased. On the PXIe-5672, equalization is performed in the hardware so that there is no compromise in performance. + + This property applies only when the generation_mode property is set to GenerationMode.ARB_WAVEFORM or GenerationMode.SCRIPT. To set this property, the NI-RFSG device must be in the Configuration state. + + PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: DigitalEqualizationEnabled.ENABLE is the only supported value for this device. + + **Default Value:** + + PXI-5670/5671: DigitalEqualizationEnabled.DISABLE + + PXIe-5644/5645/5646, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: DigitalEqualizationEnabled.ENABLE + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Response and Software Equalization `_—Refer to this topic for more information about equalization performed in software. + + `Frequency Tuning Times `_ + + **Defined Values**: + + +------------------------------------+---------+-----------------------+ + | Name | Value | Description | + +====================================+=========+=======================+ + | DigitalEqualizationEnabled.DISABLE | 0 (0x0) | Filter is not applied | + +------------------------------------+---------+-----------------------+ + | DigitalEqualizationEnabled.ENABLE | 1 (0x1) | Filter is applied. | + +------------------------------------+---------+-----------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + digital_level_script_trigger_active_level = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ScriptTrigDigLevelActiveLevel, 1150055) + '''Type: enums.ScriptTrigDigLevelActiveLevel + + Specifies the active level for the Script Trigger. This property is used when the script_trigger_type property is set to ScriptTrigType.DIGITAL_LEVEL. + + **Default Value:** ScriptTrigDigLevelActiveLevel.HIGH + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + **Related Topics** + + `Script Trigger `_ + + `Digital Level Trigger `_ + + **Defined Values**: + + +------------------------------------+---------------+--------------------------------------------------+ + | Name | Value | Description | + +====================================+===============+==================================================+ + | ScriptTrigDigLevelActiveLevel.HIGH | 9000 (0x2328) | Trigger when the digital trigger signal is high. | + +------------------------------------+---------------+--------------------------------------------------+ + | ScriptTrigDigLevelActiveLevel.LOW | 9001 (0x2329) | Trigger when the digital trigger signal is low. | + +------------------------------------+---------------+--------------------------------------------------+ + + Tip: + This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_level_script_trigger_active_level` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_level_script_trigger_active_level` + ''' + digital_level_script_trigger_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ScriptTrigDigLevelSource, 1150054) + '''Type: enums.ScriptTrigDigLevelSource + + Specifies the source terminal for the Script Trigger. This property is used when the script_trigger_type property is set to ScriptTrigType.DIGITAL_LEVEL. The digital_level_script_trigger_source property is not case-sensitive. + + To set the digital_level_script_trigger_source property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **Defined Values**: + + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +======================================+=============+=========================================================================================================================================+ + | ScriptTrigDigLevelSource.PFI0 | PFI0 | The trigger is received on PFI 0. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PFI1 | PFI1 | The trigger is received on PFI 1. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PFI2 | PFI2 | The trigger is received on PFI 2. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PFI3 | PFI3 | The trigger is received on PFI 3. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_STAR | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXI_TRIG7 | PXI_Trig7 | The trigger is received on PXI trigger line 7. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PXIE_DSTARB | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.PULSE_IN | PulseIn | The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigDigLevelSource.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +--------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Tip: + This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].digital_level_script_trigger_source` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.digital_level_script_trigger_source` + ''' + digital_modulation_fsk_deviation = _attributes.AttributeViReal64(1150041) + '''Type: float + + Specifies the deviation to use in FSK modulation. + + **Units**: hertz (Hz) + + **Default Value:** 1,000 + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + ''' + digital_modulation_prbs_order = _attributes.AttributeViInt32(1150039) + '''Type: int + + Specifies the order of pseudorandom bit sequence (PRBS) internally generated by hardware and used as the message signal in digital modulation. + + **Default Value:** 16 + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + ''' + digital_modulation_prbs_seed = _attributes.AttributeViInt32(1150040) + '''Type: int + + Specifies the seed of the internally generated pseudorandom bit sequence (PRBS). + + **Default Value:** 1 + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + ''' + digital_modulation_symbol_rate = _attributes.AttributeViReal64(1150037) + '''Type: float + + Specifies the symbol rate of the bit stream for digital modulation. + + **Units**: hertz (Hz) + + **Default Value:** 1kHz + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + ''' + digital_modulation_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.DigModType, 1150036) + '''Type: enums.DigModType + + Specifies the digital modulation format to use. + + **Default Value:** DigModType.NONE + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + **Defined Values**: + + +-----------------+--------------+-----------------------------------------------------------------------------+ + | Name | Value | Description | + +=================+==============+=============================================================================+ + | DigModType.FSK | 4000 (0xfa0) | Specifies that the digital modulation type is frequency-shift keying (FSK). | + +-----------------+--------------+-----------------------------------------------------------------------------+ + | DigModType.NONE | 0 (0x0) | Disables digital modulation. | + +-----------------+--------------+-----------------------------------------------------------------------------+ + | DigModType.OOK | 4001 (0xfa1) | Specifies that the digital modulation type is on-off keying (OOK). | + +-----------------+--------------+-----------------------------------------------------------------------------+ + | DigModType.PSK | 4002 (0xfa2) | Specifies that the digital modulation type is phase-shift keying (PSK). | + +-----------------+--------------+-----------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + digital_modulation_waveform_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.DigModWfmType, 1150038) + '''Type: enums.DigModWfmType + + Specifies the type of waveform to use as the message signal in digital modulation. + + **Default Value:** DigModWfmType.PRBS + + **Supported Devices:** PXI/PXIe-5650/5651/5652 + + **Related Topics** + + `Modulation Schemes `_ + + **Defined Values**: + + +----------------------------+---------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +============================+===============+================================================================================================================================================================================+ + | DigModWfmType.PRBS | 5000 (0x1388) | Specifies that the digital modulation waveform type is pseudorandom bit sequence (PRBS). | + +----------------------------+---------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | DigModWfmType.USER_DEFINED | 5001 (0x1389) | Specifies that the digital modulation waveform type is user defined. To specify the user-defined waveform, call the configure_digital_modulation_user_defined_waveform method. | + +----------------------------+---------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + digital_pattern = _attributes.AttributeViBoolean(1150044) + '''Type: bool + + Enables or disables digital pattern on the PXI-5421/5441 AWG module. This property must be set to True to enable signal routing to and from the Digital Data & Control connector. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXI-5670/5671 + + **Defined Values**: + + +-------+--------------------------+ + | Value | Description | + +=======+==========================+ + | True | Signal routing enabled. | + +-------+--------------------------+ + | False | Signal routing disabled. | + +-------+--------------------------+ + ''' + direct_download = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.DirectDownload, 1150042) + '''Type: enums.DirectDownload + + Specifies whether the write_arb_waveform method immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this property when an arbitrary waveform is first allocated. + + For the PXI-5670, direct download is always disabled. For all other devices, direct download is always enabled. + + PXI-5671: To increase performance when using large waveforms, enable direct download. To maximize reconfigurability, disable direct download. + + Perform the following steps to enable direct download: + + + + 1\. Set the I/Q rate to less than or equal to 8.33MS/s with the iq_rate property. + + 2\. Set the power_level_type property to PowerLevelType.PEAK. + + 3\. Disable the iq_swap_enabled property. + + 4\. Disable the digital_equalization_enabled property. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + + **Defined Values**: + + +----------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +============================+===========+=========================================================================================================================================+ + | DirectDownload.DISABLE | 0 (0x0) | The RF In local oscillator signal is not present at the front panel LO OUT connector. | + +----------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | DirectDownload.ENABLE | 1 (0x1) | The RF In local oscillator signal is present at the front panel LO OUT connector. | + +----------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | DirectDownload.UNSPECIFIED | -2 (-0x2) | The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it. | + +----------------------------+-----------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + done_event_terminal_name = _attributes.AttributeViString(1150113) + '''Type: str + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/DoneEvent, where *AWGName* is the name of your associated AWG module in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/DoneEvent, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841: /*ModuleName*/ao/0/DoneEvent, where *ModuleName* is the name of your device in MAX. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/DoneEvent, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1). + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - _get_terminal_name + ''' + events_delay = _attributes.AttributeViReal64TimeDeltaSeconds(1150154) + '''Type: hightime.timedelta, datetime.timedelta, or float in seconds + + Specifies the delay, in seconds, applied to the Started Event, Done Event, and all Marker Events with respect to the analog output of the RF signal generator. To set this property, the NI-RFSG device must be in the Configuration or Generation state. + + By default, markers and events are delayed to align with the waveform data generated from the device. This property adds an additional delay to markers and events. Use this property to adjust the time delay between events and the corresponding data. + + **Units:** Seconds + + **Valid Values:** + + PXIe-5644/5645: -1.217 μs to 67.050 μs + + PXIe-5646: -0.896 μs to 64.640 μs + + PXIe-5820/5830/5831/5832/5840/5841/5842: 0 μs to 3.276 μs + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Events `_ + + Note: If you decrease the event delay during generation, some markers may be dropped. + ''' + exported_configuration_list_step_trigger_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ConfigListTrigExportOutputTerm, 1150105) + '''Type: enums.ConfigListTrigExportOutputTerm + + Specifies the destination terminal for exporting the Configuration List Step trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + [RF List Mode](RFSG.chm/RF_List_Mode_Overview.html) + + [PFI Lines](RFSG.chm/integration_PFI_Lines.html) + + [PXI Trigger Lines](RFSG.chm/integration_PXI_Trigger.html) + + **Defined Values**: + + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==============================================+=============+=================================================================================================================================+ + | ConfigListTrigExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PFI0 | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PFI1 | PFI1 | The signal is exported to the PFI 1 connector. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.TRIG_OUT | TrigOut | The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ConfigListTrigExportOutputTerm.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + exported_configuration_settled_event_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ConfigurationSettledEventExportOutputTerm, 1150129) + '''Type: enums.ConfigurationSettledEventExportOutputTerm + + Specifies the destination terminal for exporting the Configuration Settled event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Triggers `_ + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **Defined Values**: + + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=========================================================+=============+====================================================================================================================+ + | ConfigurationSettledEventExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + | ConfigurationSettledEventExportOutputTerm.TRIG_OUT | TrigOut | TRIG IN/OUT terminal. | + +---------------------------------------------------------+-------------+--------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + exported_done_event_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.DoneEventExportOutputTerm, 1150063) + '''Type: enums.DoneEventExportOutputTerm + + Specifies the destination terminal for exporting the Done event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - export_signal + + **Defined Values**: + + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=========================================+=============+=================================================================================================================================+ + | DoneEventExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PFI0 | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PFI1 | PFI1 | The signal is exported to the PFI 1 connector. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PFI4 | PFI4 | The signal is exported to the PFI 4 connector. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PFI5 | PFI5 | The signal is exported to the PFI 5 connector. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | DoneEventExportOutputTerm.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +-----------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + exported_marker_event_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.MarkerEventExportOutputTerm, 1150064) + '''Type: enums.MarkerEventExportOutputTerm + + Specifies the destination terminal for exporting the Marker Event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Marker Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - export_signal + + **Defined Values**: + + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===========================================+=============+=================================================================================================================================+ + | MarkerEventExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PFI0 | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PFI1 | PFI1 | The signal is exported to the PFI 1 connector. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PFI4 | PFI4 | The signal is exported to the PFI 4 connector. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PFI5 | PFI5 | The signal is exported to the PFI 5 connector. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | MarkerEventExportOutputTerm.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +-------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Tip: + This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].exported_marker_event_output_terminal` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.exported_marker_event_output_terminal` + ''' + exported_pulse_modulation_event_active_level = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ScriptTrigDigLevelActiveLevel, 1150310) + '''Type: enums.ScriptTrigDigLevelActiveLevel + + Specifies the active level of the exported Pulse Modulation Event. When `property pulse modulation enabled` is Enabled, `pulse modulation active level` is `active high`, `exported pulse modulation event output terminal` is `PulseOut`, and this property is `active high`, then the Pulse Modulation Event will transition from Low to High after the the Pulse In signal is set to logic high, and the RF Output has settled. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** ScriptTrigDigLevelActiveLevel.HIGH + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +------------------------------------+---------------+--------------------------------------------------+ + | Name | Value | Description | + +====================================+===============+==================================================+ + | ScriptTrigDigLevelActiveLevel.HIGH | 9000 (0x2328) | Trigger when the digital trigger signal is high. | + +------------------------------------+---------------+--------------------------------------------------+ + | ScriptTrigDigLevelActiveLevel.LOW | 9001 (0x2329) | Trigger when the digital trigger signal is low. | + +------------------------------------+---------------+--------------------------------------------------+ + ''' + exported_pulse_modulation_event_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.PulseModulationOutputTerm, 1150309) + '''Type: enums.PulseModulationOutputTerm + + Specifies the destination terminal for exporting the Pulse Modulation Event. The Pulse Modulation Event tracks the RF Envelope when Pulse Modulation is Enabled. If this property is set to a value other than `do not export str`, calling NI-RFSG Commit will cause the output terminal to be pulled to the logic level that is the inverse of `exported pulse modulation event active level`. You can tri-state this terminal by setting this property to `do not export str` or by calling `niRFSG Reset`. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** PulseModulationOutputTerm.PULSE_OUT + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +-----------------------------------------+----------+-------------------+ + | Name | Value | Description | + +=========================================+==========+===================+ + | PulseModulationOutputTerm.DO_NOT_EXPORT | | yet to be defined | + +-----------------------------------------+----------+-------------------+ + | PulseModulationOutputTerm.PULSE_OUT | PulseOut | yet to be defined | + +-----------------------------------------+----------+-------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + exported_ref_clock_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ReferenceClockExportOutputTerminal, 1150053) + '''Type: enums.ReferenceClockExportOutputTerminal + + Specifies the destination terminal for exporting the Reference Clock on the RF signal generators. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** ReferenceClockExportOutputTerminal.DO_NOT_EXPORT + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Interconnecting Multiple NI 5673E Modules `_ + + **Defined Values**: + + Name (Value): Description + + ReferenceClockExportOutputTerminal.DO_NOT_EXPORT () :The Reference Clock signal is not exported. + + ReferenceClockExportOutputTerminal.REF_OUT (RefOut) :Exports the Reference Clock signal to the REF OUT connector of the device. + + ReferenceClockExportOutputTerminal.REF_OUT2 (RefOut2) :Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. + + ReferenceClockExportOutputTerminal.CLK_OUT (ClkOut) :Exports the Reference Clock signal to the CLK OUT connector of the device. + + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | Supported devices | + +==================================================+=========+============================================================================================+=======================================================================================================================================================================+ + | ReferenceClockExportOutputTerminal.CLK_OUT | ClkOut | Exports the Reference Clock signal to the CLK OUT connector of the device. | Supported on PXIe-5673, 5673E | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockExportOutputTerminal.DO_NOT_EXPORT | | The Reference Clock signal is not exported. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5652, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5652 (See Note) | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockExportOutputTerminal.REF_OUT | RefOut | Exports the Reference Clock signal to the REF OUT connector of the device. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5653, 5653, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5653, | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockExportOutputTerminal.REF_OUT2 | RefOut2 | Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. | Supported on PXIe-5650/5651/5652, 5654, 5673E, PXIe-5654 with PXIe-5696 | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: The ReferenceClockExportOutputTerminal.REF_OUT2 output terminal value is valid for only the PXIe-5650/5651/5652, not the PXI-5650/5651/5652. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + exported_ref_clock_rate = _attributes.AttributeEnum(_attributes.AttributeViReal64, enums.ReferenceClockExportedRate, 1150292) + '''Type: enums.ReferenceClockExportedRate + + Specifies the Reference Clock Rate, in Hz, of the signal sent to the Reference Clock Export Output Terminal. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** ReferenceClockExportedRate._10mhz + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +------------------------------------+---------------------+-------------------------------------+ + | Name | Value | Description | + +====================================+=====================+=====================================+ + | ReferenceClockExportedRate._10mhz | 10000000 (0x989680) | Uses a 10MHz Reference Clock rate. | + +------------------------------------+---------------------+-------------------------------------+ + | ReferenceClockExportedRate._100mhz | | Uses a 100MHz Reference Clock rate. | + +------------------------------------+---------------------+-------------------------------------+ + | ReferenceClockExportedRate._1ghz | | Uses a 1GHz Reference Clock rate. | + +------------------------------------+---------------------+-------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + exported_script_trigger_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ScriptTrigExportOutputTerm, 1150022) + '''Type: enums.ScriptTrigExportOutputTerm + + Specifies the destination terminal for exporting the Script Trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ —Refer to this topic for information about trigger delay. + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - export_signal + + **Defined Values**: + + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==========================================+=============+=================================================================================================================================+ + | ScriptTrigExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PFI0 | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PFI1 | PFI1 | The signal is exported to the PFI 1 connector. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PFI4 | PFI4 | The signal is exported to the PFI 4 connector. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PFI5 | PFI5 | The signal is exported to the PFI 5 connector. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigExportOutputTerm.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Tip: + This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].exported_script_trigger_output_terminal` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.exported_script_trigger_output_terminal` + ''' + exported_started_event_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.StartedEventExportOutputTerm, 1150065) + '''Type: enums.StartedEventExportOutputTerm + + Specifies the destination terminal for exporting the Started event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **High-Level Methods**: + + - export_signal + + **Defined Values**: + + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +============================================+=============+========================================================================================================================================+ + | StartedEventExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PFI0 | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PFI1 | PFI1 | The signal is exported to the PFI 1 connector. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PFI4 | PFI4 | The signal is exported to the PFI 4 connector. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PFI5 | PFI5 | The signal is exported to the PFI 5 connector. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartedEventExportOutputTerm.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +--------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + exported_start_trigger_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.StartTrigExportOutputTerm, 1150003) + '''Type: enums.StartTrigExportOutputTerm + + Specifies the destination terminal for exporting the Start Trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ + + **Defined Values**: + + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=========================================+=============+========================================================================================================================================+ + | StartTrigExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PFI0 | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PFI1 | PFI1 | The signal is exported to the PFI 1 connector. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PFI4 | PFI4 | The signal is exported to the PFI 4 connector. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PFI5 | PFI5 | The signal is exported to the PFI 5 connector. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.TRIG_OUT | TrigOut | The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigExportOutputTerm.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | + +-----------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + external_calibration_recommended_interval = _attributes.AttributeViInt32(1150076) + '''Type: int + + Returns the recommended interval between each external calibration of the device. + + **Units**: months + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + external_calibration_temperature = _attributes.AttributeViReal64(1150077) + '''Type: float + + Returns the temperature of the device at the time of the last external calibration. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E + ''' + external_gain = _attributes.AttributeViReal64(1150085) + '''Type: float + + Specifies the external amplification or attenuation, if any, between the RF signal generator and the device under test. + + Positive values for this property represent amplification, and negative values for this property represent attenuation. + + **Valid Values:** -INF dB to +INF dB + + **Default Value:** 0dB + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: - Setting this property adjusts the actual device output power to compensate for any amplification or attenuation between the RF signal generator and the device under test. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + ''' + fast_tuning_option = _attributes.AttributeViBoolean(1150188) + '''Type: bool + + Returns whether the NI RF signal generator has the fast tuning option available. + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696 + + **Related Topics** + + `Frequency Tuning Times `_ + + **Defined Values**: + + +-------+------------------------------------------------------------+ + | Value | Description | + +=======+============================================================+ + | True | The RF signal generator has the fast 100 µs tuning option. | + +-------+------------------------------------------------------------+ + | False | The RF signal generator has the 1 ms tuning option. | + +-------+------------------------------------------------------------+ + ''' + fixed_group_delay_across_ports = _attributes.AttributeViString(1150271) + '''Type: str + + Specifies a comma-separated list of ports for which to fix the group delay. + + + **Supported Devices:** PXIe-5831/5832 + ''' + fpga_bitfile_path = _attributes.AttributeViString(1150186) + '''Type: str + + Returns a string containing the path to the location of the current NI-RFSG instrument driver FPGA extensions bitfile, a .lvbitx file, that is programmed on the device. You can specify the bitfile location using the Driver Setup string in the **optionString** parameter of the __init__ method. + + NI-RFSG instrument driver FPGA extensions enable you to use pre-compiled FPGA bitfiles to customize the behavior of the vector signal transceiver FPGA while maintaining the functionality of the NI-RFSG instrument driver. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver FPGA Extensions `_ + ''' + fpga_target_name = _attributes.AttributeViString(1150251) + '''Type: str + + Returns a string that contains the name of the FPGA target being used. This name can be used with the RIO open session to open a reference to the FPGA. + + This property is channel dependent if multiple FPGA targets are supported. + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + fpga_temperature = _attributes.AttributeViReal64(1150211) + '''Type: float + + Returns the FPGA temperature in degrees Celsius. + + Serial signals between the sensor and the system control unit can potentially modulate the signal being generated, thus causing phase spurs. After the device thoroughly warms up, its temperature varies only slightly (less than 1 degree Celsius) and slowly, and it is not necessary to constantly poll this temperature sensor. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: If you query this property during RF list mode, list steps may take longer to complete during list execution. + ''' + frequency = _attributes.AttributeViReal64(1250001) + '''Type: float + + Specifies the frequency of the generated RF signal. For arbitrary waveform generation, this property specifies the center frequency of the signal. + + The PXI-5670/5671, PXIe-5672, PXIe-5820, and PXIe-5860 must be in the Configuration state to use this property. However, the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 can be in the Configuration or the Generation state to use this property. + + **Units**: hertz (Hz) + + **Defined Values**: + Refer to the specifications document for your device allowable frequency settings. + + **Default Value:** + + PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E: 100MHz + + PXIe-5653: 4GHz + + PXIe-5820: 0Hz + + PXIe-5830/5831/5832: 6.5 GHz + + PXIe-5840/5841/5860, PXI-5842 (500 MHz, 1 GHz, and 2 GHz bandwidth options): 1GHz + + PXIe-5842 (4 GHz bandwidth option) using the Standard personality: 1GHz + + PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality: 6.5GHz + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ + + **High-Level Methods**: + + - ConfigureRf + + Note: For the PXIe-5645, this property is ignored if you are using the I/Q ports. + ''' + frequency_settling = _attributes.AttributeViReal64TimeDeltaSeconds(1150083) + '''Type: hightime.timedelta, datetime.timedelta, or float in seconds + + Specifies the frequency settling time. Interpretation of this value depends on the frequency_settling_units property. + + **Valid Values:** + + The valid values for this property depend on the frequency_settling_units property. + + + + + **Default Value**: 1.0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Settling Times `_ + + `Events `_ + ''' + frequency_settling_units = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.FrequencySettlingUnits, 1150082) + '''Type: enums.FrequencySettlingUnits + + Specifies the interpretation of the value passed to the frequency_settling property. + + PXIe-5650/5651/5652/5653, PXIe-5673E: When the active_configuration_list property is set to a valid list name, the frequency_settling_units property supports only FrequencySettlingUnits.TIME_AFTER_IO as a valid value. + + PXIe-5654/5654 with PXIe-5696: The frequency_settling_units property supports only FrequencySettlingUnits.TIME_AFTER_IO and FrequencySettlingUnits.PPM as valid values. + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Default Value**: FrequencySettlingUnits.PPM + + **Related Topics** + + `Events `_ + + **Defined Values**: + + +----------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | Name | Description | + +========================================+=================================================================================================================+ + | FrequencySettlingUnits.TIME_AFTER_LOCK | Specifies the time to wait after the frequency PLL locks. | + +----------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | FrequencySettlingUnits.TIME_AFTER_IO | Specifies the time to wait after all writes occur to change the frequency. | + +----------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + | FrequencySettlingUnits.PPM | Specifies the minimum frequency accuracy when settling completes. Units are in parts per million (PPM or 1E-6). | + +----------------------------------------+-----------------------------------------------------------------------------------------------------------------+ + + Note: If you set this property to FrequencySettlingUnits.TIME_AFTER_IO, the definition of settled for the Configuration Settled event changes. + ''' + frequency_tolerance = _attributes.AttributeViReal64(1150006) + '''Type: float + + Specifies the allowable frequency error introduced during the software upconversion process. NI-RFSG may introduce a frequency error up to the specified amount to optimize computational speed and onboard memory usage while upconverting phase-continuous signals. + + If the phase_continuity_enabled property is set to NIRFSG_VAL_DISABLE, the frequency_tolerance property is ignored, and the driver does not introduce a frequency error. On devices that do not use software upconversion, this property is ignored. The PXI-5670 always uses software upconversion, and the PXI-5671 uses software upconversion for I/Q rates greater than 8.33MS/s. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units**: hertz (Hz) + + **Default Value:** 50 + + **Supported Devices:** PXI-5670/5671 + + **Related Topics** + + `Phase Continuity `_ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + generation_mode = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.GenerationMode, 1150018) + '''Type: enums.GenerationMode + + Specifies whether to generate a continuous wave (CW) signal, the arbitrary waveform specified by the arb_selected_waveform property, or the script specified by the selected_script property, upon calling the _initiate method. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** GenerationMode.CW + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696 (CW support only), PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + `Scripting Instructions `_—Refer to this topic for more information about scripting. + + **High-Level Methods**: + + - configure_generation_mode + + **Defined Values**: + + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=============================+==============+========================================================================================================================+ + | GenerationMode.ARB_WAVEFORM | 1001 (0x3e9) | Configures the RF signal generator to generate the arbitrary waveform specified by the arb_selected_waveform property. | + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + | GenerationMode.CW | 1000 (0x3e8) | Configures the RF signal generator to generate a CW signal. | + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + | GenerationMode.SCRIPT | 1002 (0x3ea) | Configures the RF signal generator to generate arbitrary waveforms as directed by the selected_script property.. | + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + ''' + group_capabilities = _attributes.AttributeViString(1050401) + '''Type: str + + Returns a string that contains a comma-separated list of class-extension groups that NI-RFSG implements. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + host_dma_buffer_size = _attributes.AttributeViInt64(1150239) + '''Type: int + + Specifies the size of the DMA buffer in computer memory, in bytes. To set this property, the NI-RFSG device must be in the Configuration state. + + A sufficiently large host DMA buffer improves performance by allowing large writes to be transferred more efficiently. + + **Units:** bytes + + **Default Value:** 8MB + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + instrument_firmware_revision = _attributes.AttributeViString(1050510) + '''Type: str + + Returns a string that contains the firmware revision information for the NI-RFSG device you are currently using. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **High-Level Methods**: + + - revision_query + ''' + instrument_manufacturer = _attributes.AttributeViString(1050511) + '''Type: str + + Returns a string that contains the name of the manufacturer of the NI-RFSG device you are currently using. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + instrument_model = _attributes.AttributeViString(1050512) + '''Type: str + + Returns a string that contains the model number or name of the NI-RFSG device that you are currently using. For drivers that support more than one device, this property returns a comma-separated list of supported devices. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + interchange_check = _attributes.AttributeViBoolean(1050021) + '''Type: bool + + Specifies whether to perform interchangeability checking and retrieve interchangeability warnings. + + **Default Value:** False + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+--------------------------------+ + | Value | Description | + +=======+================================+ + | True | Interchange check is enabled. | + +-------+--------------------------------+ + | False | Interchange check is disabled. | + +-------+--------------------------------+ + + Note: Enabling interchangeability check is not supported. + ''' + interpolation_delay = _attributes.AttributeViReal64(1150153) + '''Type: float + + Specifies the delay, in seconds, to apply to the I/Q waveform. To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** Seconds + + **Valid Values:** Plus or minus half of one I/Q sample period + + **Supported Devices:** PXIe-5644/5645/5646 + ''' + io_resource_descriptor = _attributes.AttributeViString(1050304) + '''Type: str + + Returns a string that contains the resource name NI-RFSG uses to identify the physical device. If you initialize NI-RFSG with a logical name, this property contains the resource name that corresponds to the entry in the IVI Configuration Utility. If you initialize NI-RFSG with the resource name, this property contains that value. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + iq_gain_imbalance = _attributes.AttributeViReal64(1150072) + '''Type: float + + Specifies the gain imbalance of the I/Q modulator (I versus Q). + + Gain imbalance is calculated with the following equation: + + + **Units**: dB + + **Valid Values:**-6dB to 6dB + + **Default Value:** 0dB + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + + `Spurious Performance `_ + ''' + iq_impairment_enabled = _attributes.AttributeViBoolean(1150069) + '''Type: bool + + Enables or disables I/Q impairment. The iq_i_offset, iq_q_offset, iq_gain_imbalance, and iq_skew properties are ignored when the iq_impairment_enabled property is disabled. + + **Default Value:** True + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +-------+-----------------------------+ + | Value | Description | + +=======+=============================+ + | True | I/Q impairment is enabled. | + +-------+-----------------------------+ + | False | I/Q impairment is disabled. | + +-------+-----------------------------+ + ''' + iq_i_offset = _attributes.AttributeViReal64(1150070) + '''Type: float + + When using a National Instruments AWG module or vector signal transceiver (VST), this property specifies the I-signal DC offset. Units are either percent (%) or volts (V), depending on the iq_offset_units property setting. + + PXIe-5673/5673E: Actual AWG signal offset is equal to the I/Q modulator offset correction plus the value specified by this property. When using an external AWG (non–National Instruments AWG), this property is read-only and indicates the I/Q modulator I-offset. Units are volts, as specified by the iq_offset_units property. + + **Valid Values:**-100 to 100% or -0.2V to 0.2V + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + ''' + iq_offset_units = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.OffsetUnits, 1150081) + '''Type: enums.OffsetUnits + + Specifies the units of the iq_i_offset property and iq_q_offset property. Offset units are either percent or volts. + + The AWG or VST offset is the specified percentage of the AWG or VST peak power level when the iq_offset_units property is set to OffsetUnits.PERCENT. Given perfect carrier leakage suppression, the following equation is satisfied + + + or equivalently + + + If the iq_i_offset property is set to 100%, iq_q_offset property is set to 0%, and power_level property set to 0 dBm, the desired RF signal is at 0 dBm and the carrier leakage is also at 0 dBm. + + The AWG or VST peak power level changes when settings change in other properties such as the power_level, frequency, iq_skew, iq_gain_imbalance, attenuator_hold_enabled, and arb_pre_filter_gain properties. When the iq_offset_units property is set to OffsetUnits.PERCENT, the actual AWG or VST offset changes as the AWG or VST peak power level changes to satisfy the preceding equations. These changes are useful if you are intentionally adding carrier leakage to test the tolerance of a receiver. When the iq_offset_units property is set to OffsetUnits.PERCENT, the carrier leakage, in dBc, remains at a consistent level. + + If you are trying to eliminate residual carrier leakage due to calibration inaccuracies or drift, set the iq_offset_units property to OffsetUnits.VOLTS. Offset correction voltage is applied to the I/Q modulator or VST, regardless of changes to the AWG or VST peak power level. + + **Default Value**: OffsetUnits.PERCENT + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +---------------------+----------------------------------------------------------------------+ + | Name | Description | + +=====================+======================================================================+ + | OffsetUnits.PERCENT | Specifies the iq_i_offset and iq_q_offset property units as percent. | + +---------------------+----------------------------------------------------------------------+ + | OffsetUnits.VOLTS | Specifies the iq_i_offset and iq_q_offset property units as volts. | + +---------------------+----------------------------------------------------------------------+ + + Note: For any devices except PXIe-5820, if the iq_offset_units property is set to OffsetUnits.VOLTS, a 0.1 I offset results in a 0.1 V offset in the output. For PXIe-5820 devices, 0.1 I offset results in a 10% offset in the output. + ''' + iq_out_port_carrier_frequency = _attributes.AttributeViReal64(1150145) + '''Type: float + + Specifies the frequency of the I/Q OUT port signal. The onboard signal processing (OSP) applies the specified frequency shift to the I/Q data before the data is sent to the digital-to-analog converter (DAC). To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** hertz (Hz) + + **Valid Values:** + + PXIe-5645: -60MHz to 60MHz + + PXIe-5820: -500MHz to 500MHz + + **Supported Devices:** PXIe-5645, PXIe-5820 + + Note: - For the PXIe-5820, NI recommends using the frequency property. + + - For the PXIe-5645, this property is ignored if you are using the RF ports. + ''' + iq_out_port_common_mode_offset = _attributes.AttributeViReal64(1150148) + '''Type: float + + Specifies the common-mode offset applied to the signals generated at each differential output terminal. This property applies only when you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.DIFFERENTIAL. Common-mode offset shifts both positive and negative terminals in the same direction. + + To use this property, you must use the channelName parameter of the _set_attribute_vi_real64 method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Units:** Volts + + **Valid Values:** + + PXIe-5645: -0.8V to 0.8V if you set the iq_out_port_load_impedance property to 50 Ω. The valid values are -1.2V to 1.2V if you set the iq_out_port_load_impedance property to 100 Ω. + + PXIe-5820: -0.25V to 1.5V + + **Supported Devices:** PXIe-5645, PXIe-5820 + + Note: - For the PXIe-5645, this property is ignored if you are using the RF ports. + + - The valid range is dependent on the load impedance. + ''' + iq_out_port_level = _attributes.AttributeViReal64(1150147) + '''Type: float + + Specifies the amplitude of the generated signal in volts, peak-to-peak (V). For example, if you set this property to 1.0, the output signal ranges from -0.5 volts to 0.5 volts. + + To use this property, you must use the channelName parameter of the _set_attribute_vi_real64 method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + To set this property, the NI-RFSG device must be in the Configuration state. + + Refer to the specifications document for your device for allowable output levels. + + **Units:** Volts, peak-to-peak (V\ :sub:`pk-pk`\ ) + + **Valid Values:** + + PXIe-5645: 1V\ :sub:`pk-pk`\ maximum if you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.DIFFERENTIAL, and 0.5V\ :sub:`pk-pk`\ + + maximum if you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.SINGLE_ENDED. + + PXIe-5820: 3.4V\ :sub:`pk-pk`\ maximum for signal bandwidth less than 160MHz, and 2V\ :sub:`pk-pk`\ + + maximum for signal bandwidth greater than 160MHz. + + **Default Value:** 0.5volts + + **Supported Devices:** PXIe-5645, PXIe-5820 + + Note: - For the PXIe-5645, this property is ignored if you are using the RF ports. + + - The valid values are only applicable when you set the iq_out_port_load_impedance property to 50 Ω and when you set the iq_out_port_offset property to 0. + ''' + iq_out_port_load_impedance = _attributes.AttributeViReal64(1150163) + '''Type: float + + Specifies the load impedance connected to the I/Q OUT port. To set this property, the NI-RFSG device must be in the Configuration state. + + To use this property, you must use the channelName parameter of the _set_attribute_vi_real64 method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + **Units:** Ohms + + **Valid Values:** Any value greater than 0. Values greater than or equal to 1 megaohms (MΩ) are interpreted as high impedance. + + **Default Value:** 50 Ω if you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.SINGLE_ENDED, and 100 Ω if you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.DIFFERENTIAL. + + **Supported Devices:** PXIe-5645, PXIe-5820 + + Note: For the PXIe-5645, this property is ignored if you are using the RF ports. + ''' + iq_out_port_offset = _attributes.AttributeViReal64(1150149) + '''Type: float + + Specifies the value, in volts, that the signal generator adds to the arbitrary waveform data. To set this property, the NI-RFSG device must be in the Configuration state. + + To use this property, you must use the channelName parameter of the _set_attribute_vi_real64 method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + PXIe-5645: The waveform may be scaled in DSP prior to adding offset and the device state may be changed in order to accommodate the requested offset. + + PXIe-5820: The waveform is not automatically scaled in DSP. To prevent DSP overflows, use the arb_pre_filter_gain property to scale the waveform to provide additional headroom for offsets. + + **Units:** Volts + + **Supported Devices:** PXIe-5645, PXIe-5820 + + Note: For the PXIe-5645, this property is ignored if you are using the RF ports. + ''' + iq_out_port_temperature = _attributes.AttributeViReal64(1150161) + '''Type: float + + Returns the temperature, in degrees Celsius, of the I/Q Out circuitry on the device. + + **Units:** Degrees Celsius + + **Supported Devices:** PXIe-5645, PXIe-5820 + + Note: If you query this property during RF list mode, list steps may take longer to complete during list execution. + ''' + iq_out_port_terminal_configuration = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.IQOutPortTermCfg, 1150146) + '''Type: enums.IQOutPortTermCfg + + Specifies whether to use the I/Q OUT port for differential configuration or single-ended configuration. If you set this property to IQOutPortTermCfg.SINGLE_ENDED, you must terminate the negative I and Q output connectors with a 50 Ohm termination. + + If you set this property to IQOutPortTermCfg.SINGLE_ENDED, the positive I and Q connectors generate the resulting waveform. If you set this property to IQOutPortTermCfg.DIFFERENTIAL, both the positive and negative I and Q connectors generate the resulting waveform. + + To use this property, you must use the channelName parameter of the _set_attribute_vi_int32 method to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string). + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** IQOutPortTermCfg.DIFFERENTIAL + + PXIe-5820: The only valid value for this property is IQOutPortTermCfg.DIFFERENTIAL. + + **Supported Devices:** PXIe-5645, PXIe-5820 + + **Related Topics** + + `Differential and Single-Ended Operation (I/O Interface) `_ + + **Defined Values**: + + +-------------------------------+----------------+--------------------------------------------------+ + | Name | Value | Description | + +===============================+================+==================================================+ + | IQOutPortTermCfg.DIFFERENTIAL | 15000 (0x3a98) | Sets the terminal configuration to differential. | + +-------------------------------+----------------+--------------------------------------------------+ + | IQOutPortTermCfg.SINGLE_ENDED | 15001 (0x3a99) | Sets the terminal configuration to single-ended. | + +-------------------------------+----------------+--------------------------------------------------+ + + Note: For the PXIe-5645, this property is ignored if you are using the RF ports. + ''' + iq_q_offset = _attributes.AttributeViReal64(1150071) + '''Type: float + + When using a National Instruments AWG module or VST device, this property specifies the Q-signal DC offset. Units are either percent (%) or volts (V), depending on the iq_offset_units property setting. + + PXIe-5673/5673E: Actual AWG signal offset is equal to the I/Q modulator offset correction plus the value specified by this property. When using an external AWG (non–National Instruments AWG), the iq_q_offset property is read-only and indicates the I/Q modulator Q-offset. Units are volts, as indicated by the iq_offset_units property. + + **Valid Values**: -100% to 100% or -0.2V to 0.2V + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + ''' + iq_rate = _attributes.AttributeViReal64(1250452) + '''Type: float + + This property specifies the I/Q rate of the arbitrary waveform. The I/Q rate is coerced to a value the hardware can achieve. Read this value back after setting it to see the actual I/Q rate. NI-RFSG internally uses an FIR filter with flat response up to (0.4 × IQ rate). Given a desired signal with the maximum frequency content *f*, sample the signal at an I/Q rate greater than or equal to ( *f*/0.4). + + This property applies only when the generation_mode property is set to GenerationMode.ARB_WAVEFORM or GenerationMode.SCRIPT. + + To set this property, the NI-RFSG device must be in the Configuration state. + + Setting this property to 50 MS/s on the PXI-5670/5671 and PXIe-5672 has the following implications: + - NI-RFSG is forced to place the carrier frequency at 18 MHz ± 1 MHz to avoid aliasing. This means that NI-RFSG cannot select a carrier frequency that could optimize waveform size if phase continuity is enabled. + - Output signal bandwidth must be <5 MHz to avoid aliasing. + - Close-in phase noise is higher. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate an I/Q rate with a waveform. + + `Digital Upconverter `_ + **Valid Values**: + + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Device | I/Q Rates | + +==========================================================================+====================================================================================================================================================================================================================================================+ + | PXIe-5644/5645 | Up to 120 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5646 | Up to 250 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXI-5670 | 50 MS/s* | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | | 100 MS/s* | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXI-5671 | 50 MS/s* | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | | 100 MS/s | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | | *(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5672 | Up to 100 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5673/5673E | Up to 200 MS/s. Note that - If an PXIe-5450 with module revisions A or B is used as part of your PXIe-5673/5673E, the NI-FGEN NIFGEN_ATTR_COMPENSATE_FOR_FILTER_GROUP_DELAY property is disabled if the requested I/Q rate is less than 1.5 MS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5820/5830/5831/5832/5840/5841/5860 | Up to 1.25 GS/s. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXI-5842 (500 MHz, 1 GHz, and 2 GHz bandwidth options) | Up to 2.5 GS/s | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5842 (4 GHz bandwidth option) using the Standard personality | Up to 2.5 GS/s | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality | 5 GS/s only. | + +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: Use this property to associate an I/Q rate with a waveform. + ''' + iq_skew = _attributes.AttributeViReal64(1150073) + '''Type: float + + Specifies the adjustment of the phase angle between the I and Q vectors. If the skew is zero, the phase angle is 90 degrees. + + This property is ignored when the iq_impairment_enabled property is disabled. + + **Units**: degrees (°) + + **Valid Values:**-30° to 30° + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Impairment Calibration `_ + ''' + iq_swap_enabled = _attributes.AttributeViBoolean(1250404) + '''Type: bool + + Enables or disables the inverse phase rotation of the I/Q signal by swapping the I and Q inputs. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +-------+---------------------------------------------------------------------+ + | Value | Description | + +=======+=====================================================================+ + | True | NI-RFSG device applies noninverse phase rotation of the I/Q signal. | + +-------+---------------------------------------------------------------------+ + | False | NI-RFSG device applies inverse phase rotation of the I/Q signal. | + +-------+---------------------------------------------------------------------+ + ''' + load_configurations_from_file_load_options = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.LoadOptions, 1150290) + '''Type: enums.LoadOptions + + Specifies the configurations to skip while loading from a file. + + **Default Value:** LoadOptions.SKIP_NONE + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +---------------------------+-------------------------------------------------------------------+ + | Value | Description | + +===========================+===================================================================+ + | LoadOptions.SKIP_NONE | NI-RFSG loads all the configurations to the session. | + +---------------------------+-------------------------------------------------------------------+ + | LoadOptions.SKIP_WAVEFORM | NI-RFSG skips loading the waveform configurations to the session. | + +---------------------------+-------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + load_configurations_from_file_reset_options = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ResetOptions, 1150291) + '''Type: enums.ResetOptions + + Specifies the configurations to skip to reset while loading configurations from a file. + + **Default Value:** ResetOptions.SKIP_NONE + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +--------------------------------------+------------------------------------------------------+ + | Value | Description | + +======================================+======================================================+ + | ResetOptions.SKIP_NONE | NI-RFSG resets all configurations. | + +--------------------------------------+------------------------------------------------------+ + | ResetOptions.SKIP_WAVEFORMS | NI-RFSG skips resetting the waveform configurations. | + +--------------------------------------+------------------------------------------------------+ + | ResetOptions.SKIP_SCRIPTS | NI-RFSG skips resetting the scripts. | + +--------------------------------------+------------------------------------------------------+ + | ResetOptions.SKIP_DEEMBEDDING_TABLES | NI-RFSG skips resetting the de-embedding tables. | + +--------------------------------------+------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + logical_name = _attributes.AttributeViString(1050305) + '''Type: str + + Returns a string that contains the logical name you specified when opening the current IVI session. You can pass a logical name to the Init method or the __init__ method. The IVI Configuration Utility must contain an entry for the logical name. The logical name entry refers to a driver session section in the IVI Configuration file. The driver session section specifies a physical device and initial user options. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + loop_bandwidth = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.LoopBandwidth, 1150027) + '''Type: enums.LoopBandwidth + + Configures the loop bandwidth of the tuning PLLs. This property is ignored on the PXI-5610, PXI-5670/5671, and PXIe-5672 for signal bandwidths greater than or equal to 10MHz. This property is ignored on the PXI/PXIe-5650/5651/5652 for RF frequencies less than 50MHz. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the _set_attribute_vi_int32 method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** + + PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842: LoopBandwidth.MEDIUM + + PXI/PXIe-5650/5651/5652, PXIe-5673/5673E: LoopBandwidth.NARROW + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Phase-Locked Loop Bandwidth `_ + + `Modulation Implementation `_ + + `Sinusoidal Tone Versus Modulation Operation `_ + + **Defined Values**: + + +----------------------+---------+--------------------------------------------------------+ + | Name | Value | Description | + +======================+=========+========================================================+ + | LoopBandwidth.MEDIUM | 1 (0x1) | Uses the medium loop bandwidth setting for the PLL. | + +----------------------+---------+--------------------------------------------------------+ + | LoopBandwidth.NARROW | 0 (0x0) | Uses the narrowest loop bandwidth setting for the PLL. | + +----------------------+---------+--------------------------------------------------------+ + | LoopBandwidth.WIDE | 2 (0x2) | Uses the widest loop bandwidth setting for the PLL. | + +----------------------+---------+--------------------------------------------------------+ + + Note: Setting this property to LoopBandwidth.WIDE on the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, or the PXIe-5673/5673E allows the frequency to settle significantly faster at the expense of increased phase noise. Setting this property to LoopBandwidth.MEDIUM is not a valid option on the PXI/PXIe-5650/5651/5652 or PXIe-5673/5673E. LoopBandwidth.MEDIUM is the only supported value for the PXIe-5840/5841/5842. + ''' + lo_frequency = _attributes.AttributeViReal64(1150199) + '''Type: float + + Specifies the frequency of the LO source. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the _set_attribute_vi_real64 method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `PXIe-5830 Frequency and Bandwidth Configuration `_ + + `PXIe-5831/5832 Frequency and Bandwidth Configuration `_ + + Note: This property is read/write if you are using an external LO. Otherwise, this property is read-only. + ''' + lo_frequency_step_size = _attributes.AttributeViReal64(1150151) + '''Type: float + + Specifies the step size for tuning the local oscillator (LO) phase-locked loop (PLL). + + When the lo_pll_fractional_mode_enabled property is enabled, the specified step size affects the fractional spur performance of the device. When the lo_pll_fractional_mode_enabled property is disabled, the specified step size affects the phase noise performance of the device. + + The valid values for this property depend on the lo_pll_fractional_mode_enabled property. + + **PXIe-5644/5645/5646**—If you disable the lo_pll_fractional_mode_enabled property, the specified value is coerced to the nearest valid value. + + **PXIe-5840/5841**—If you disable the lo_pll_fractional_mode_enabled property, the specified value is coerced to the nearest valid value that is less than or equal to the desired step size. + + **Units:** hertz (Hz) + + **Default Values:** + + PXIe-5644/5645/5646: 200kHz + + PXIe-5830: 2MHz + + PXIe-5831/5832 (RF port): 8MHz + + PXIe-5831/5832 (IF port): 2MHz, 4MHz + + PXIe-5840/5841: + + - Fractional mode: 500 kHz + - Integer mode: 10 MHz for frequencies less than or equal to 4 GHz. 20 MHz for frequencies greater than 4 GHz. + + PXIe-5841 with PXIe-5655: 500kHz + + PXIe-5842: 1Hz + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + +--------------------------------------------------------------------------------------------------+-------------------+--------------------------------------------------+ + | lo_pll_fractional_mode_enabled Property Setting | NIRFSG_VAL_ENABLE | NIRFSG_VAL_DISABLE | + +==================================================================================================+===================+==================================================+ + | lo_frequency_step_size Property Valid Values on PXIe-5644/5645 | 50 kHz to 24 MHz | 4 MHz, 5 MHz, 6 MHz, 12 MHz, or 24 MHz | + +--------------------------------------------------------------------------------------------------+-------------------+--------------------------------------------------+ + | lo_frequency_step_size Property Valid Values on PXIe-5646 | 50 kHz to 25 MHz | 2 MHz, 5 MHz, 10 MHz, or 25 MHz | + +--------------------------------------------------------------------------------------------------+-------------------+--------------------------------------------------+ + | lo_frequency_step_size Property Valid Values on PXIe-5840/5841 | 50 kHz to 100 MHz | 1 MHz, 5 MHz, 10 MHz, 25 MHz, 50 MHz, or 100 MHz | + +--------------------------------------------------------------------------------------------------+-------------------+--------------------------------------------------+ + | lo_frequency_step_size Property Valid Values on PXIe-5830/5831/ 5832 LO1 | 8 Hz to 400 MHz | — | + +--------------------------------------------------------------------------------------------------+-------------------+--------------------------------------------------+ + | lo_frequency_step_size Property Valid Values on PXIe-5830/5831/ 5832 LO2 | 4 Hz to 400 MHz | — | + +--------------------------------------------------------------------------------------------------+-------------------+--------------------------------------------------+ + | lo_frequency_step_size Property Valid Values on PXIe-5841 with PXIe-5655/NI PXIe-5842 (See note) | 1 nHz to 100 MHz | 1 nHz to 50 MHz | + +--------------------------------------------------------------------------------------------------+-------------------+--------------------------------------------------+ + + Note: Values up to 100 MHz are coerced to 50 MHz. + ''' + lo_in_power = _attributes.AttributeViReal64(1150067) + '''Type: float + + Specifies the power level of the signal at the LO IN front panel connector. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the _set_attribute_vi_real64 method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Units**: dBm + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `LO OUT `_ + + Note: - This property is read/write if you are using an external LO. Otherwise, this property is read-only. + + - For the PXIe-5644/5645/5646, this property is always read-only. + ''' + lo_out_enabled = _attributes.AttributeViBoolean(1150013) + '''Type: bool + + Specifies whether the local oscillator signal is present at the LO OUT front panel connector. The local oscillator signal remains at the LO OUT front panel connector until this property is set to False, even if the output_enabled property is set to False, the abort method is called, or the NI-RFSG session is closed. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the _set_attribute_vi_boolean method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** NIRFSG_VAL_DISABLE + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `LO OUT `_ + + **Defined Values**: + + +--------------------+---------------------------------------------------------------------------------+ + | Name | Description | + +====================+=================================================================================+ + | NIRFSG_VAL_ENABLE | The local oscillator signal is present at the LO OUT front panel connector. | + +--------------------+---------------------------------------------------------------------------------+ + | NIRFSG_VAL_DISABLE | The local oscillator signal is not present at the LO OUT front panel connector. | + +--------------------+---------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + lo_out_export_configure_from_rfsa = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.LoOutExportConfigureFromRFSaEnable, 1150242) + '''Type: enums.LoOutExportConfigureFromRFSaEnable + + Specifies whether to allow NI-RFSA to control the NI-RFSG LO out export. + + Set this property to LoOutExportConfigureFromRFSaEnable.ENABLE to allow NI-RFSA to control the LO out export. Use the RF OUT LO EXPORT ENABLED property to control the LO out export from NI-RFSA. + + **Default Value:** LoOutExportConfigureFromRFSaEnable.DISABLE + + **Supported Devices**: PXIe-5840/5841/5842 + + **Defined Values**: + + +--------------------------------------------+---------+----------------------------------------------------------------------+ + | Name | Value | Description | + +============================================+=========+======================================================================+ + | LoOutExportConfigureFromRFSaEnable.ENABLE | 0 (0x0) | Do not allow NI-RFSA to control the NI-RFSG local oscillator export. | + +--------------------------------------------+---------+----------------------------------------------------------------------+ + | LoOutExportConfigureFromRFSaEnable.DISABLE | 1 (0x1) | Allow NI-RFSA to control the NI-RFSG local oscillator export. | + +--------------------------------------------+---------+----------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + lo_out_power = _attributes.AttributeViReal64(1150066) + '''Type: float + + Specifies the power level of the signal at the LO OUT front panel connector. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the _set_attribute_vi_real64 method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Units**: dBm + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `LO OUT `_ + + Note: For the PXIe-5644/5645/5646 and PXIe-5673/5673E, this property is always read-only. + ''' + lo_pll_fractional_mode_enabled = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.LoPlLfractionalModeEnabled, 1150152) + '''Type: enums.LoPlLfractionalModeEnabled + + Specifies whether to use fractional mode for the local oscillator (LO) phase-locked loop (PLL). This property enables or disables fractional frequency tuning in the LO. Fractional mode provides a finer frequency step resolution and allows smaller values for the lo_frequency_step_size property. However, fractional mode may introduce non-harmonic spurs. + + This property applies only if you set the lo_source property to LoSource.ONBOARD. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the _set_attribute_vi_int32 method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** LoPlLfractionalModeEnabled.ENABLE + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + Refer to the local oscillators topic appropriate to your device for more information about using fractional mode. + + **Defined Values**: + + +------------------------------------+---------+------------------------------------------+ + | Name | Value | Description | + +====================================+=========+==========================================+ + | LoPlLfractionalModeEnabled.ENABLE | 0 (0x0) | Disables fractional mode for the LO PLL. | + +------------------------------------+---------+------------------------------------------+ + | LoPlLfractionalModeEnabled.DISABLE | 1 (0x1) | Enables fractional mode for the LO PLL. | + +------------------------------------+---------+------------------------------------------+ + + Note: For the PXIe-5841 with PXIe-5655, this property is ignored if the PXIe-5655 is used as the LO source. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + lo_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.LoSource, 1150150) + '''Type: enums.LoSource + + Specifies whether to use the internal or external local oscillator (LO) source. If the lo_source property is set to "" (empty string), NI-RFSG uses the internal LO source. To set this property, the NI-RFSG device must be in the Configuration state. + + To use this property for the PXIe-5830/5831/5832, you must use the channelName parameter of the _set_attribute_vi_string method to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string). + + **Default Value:** LoSource.ONBOARD + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `PXIe-5830 LO Sharing Using NI-RFSA and NI-RFSG `_ + + `PXIe-5831/5832 LO Sharing Using NI-RFSA and NI-RFSG `_ + + **Defined Values**: + + +---------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=================================+========================+==================================================================================================================================================================================================================================================================+ + | LoSource.AUTOMATIC_SG_SA_SHARED | Automatic_SG_SA_Shared | NI-RFSG internally makes the configuration to share the LO between NI-RFSA and NI-RFSG. This value is valid only on the PXIe-5820/5830/5831/5832/5840/5841/5842. | + +---------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | LoSource.LO_IN | LO_In | Uses an external LO as the LO source. Connect a signal to the LO IN connector on the device and use the upconverter_center_frequency property to specify the LO frequency. | + +---------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | LoSource.ONBOARD | Onboard | Uses an internal LO as the LO source. If you specify an internal LO source, the LO is generated inside the device itself. | + +---------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | LoSource.SG_SA_SHARED | SG_SA_Shared | Uses the same internal LO during NI-RFSA and NI-RFSG sessions. NI-RFSG selects an internal synthesizer and the synthesizer signal is switched to both the RF In and RF Out mixers. This value is valid only on the PXIe-5830/5831/5832/5841 with PXIe-5655/5842. | + +---------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | LoSource.SECONDARY | Secondary | Uses the PXIe-5831/5840 internal LO as the LO source. This value is valid only on the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653. | + +---------------------------------+------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: For the PXIe-5841 with PXIe-5655, RF list mode is not supported when this property is set to LoSource.SG_SA_SHARED. + ''' + lo_temperature = _attributes.AttributeViReal64(1150075) + '''Type: float + + Returns the LO module temperature in degrees Celsius. + + PXIe-5840/5841: If you query this property during RF list mode, list steps may take longer to complete during list execution. + + **Units**: degrees Celsius (°C) + + **Supported Devices:** PXIe-5673/5673E, PXIe-5840/5841/5842 + ''' + lo_vco_frequency_step_size = _attributes.AttributeViReal64(1150257) + '''Type: float + + Specifies the step size for tuning the internal voltage-controlled oscillator (VCO) used to generate the LO signal. + + **Valid Values**: + + LO1: 1 Hz to 50 MHz + + LO2: 1 Hz to 100 MHz + + **Default Value**: 1 MHz + + **Supported Devices**: PXIe-5830/5831/5832 + ''' + marker_event_output_behavior = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.MarkerEventOutputBehavior, 1150206) + '''Type: enums.MarkerEventOutputBehavior + + Specifies the output behavior for the Marker Event. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** MarkerEventOutputBehavior.PULSE + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Defined Values**: + + +----------------------------------+----------------+-------------------------------------------------------+ + | Name | Value | Description | + +==================================+================+=======================================================+ + | MarkerEventOutputBehavior.PULSE | 23000 (0x59d8) | Specifies the Marker Event output behavior as pulse. | + +----------------------------------+----------------+-------------------------------------------------------+ + | MarkerEventOutputBehavior.TOGGLE | 23001 (0x59d9) | Specifies the Marker Event output behavior as toggle. | + +----------------------------------+----------------+-------------------------------------------------------+ + + Tip: + This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_output_behavior` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_output_behavior` + ''' + marker_event_pulse_width = _attributes.AttributeViReal64(1150207) + '''Type: float + + Specifies the pulse width value for the Marker Event. Use the marker_event_pulse_width_units property to set the units for the pulse width value. This property is valid only when the marker_event_output_behavior property is set to MarkerEventOutputBehavior.PULSE. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** 200 ns + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + Tip: + This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_pulse_width` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_pulse_width` + ''' + marker_event_pulse_width_units = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.MarkerEventPulseWidthUnits, 1150208) + '''Type: enums.MarkerEventPulseWidthUnits + + Specifies the pulse width units for the Marker Event. This property is valid only when the marker_event_output_behavior property is set to MarkerEventOutputBehavior.PULSE. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** MarkerEventPulseWidthUnits.SECONDS + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Defined Values**: + + +----------------------------------+----------------+-------------------------------------------------------+ + | Name | Value | Description | + +==================================+================+=======================================================+ + | MarkerEventOutputBehavior.PULSE | 23000 (0x59d8) | Specifies the Marker Event output behavior as pulse. | + +----------------------------------+----------------+-------------------------------------------------------+ + | MarkerEventOutputBehavior.TOGGLE | 23001 (0x59d9) | Specifies the Marker Event output behavior as toggle. | + +----------------------------------+----------------+-------------------------------------------------------+ + + Tip: + This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_pulse_width_units` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_pulse_width_units` + ''' + marker_event_terminal_name = _attributes.AttributeViString(1150115) + '''Type: str + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/Marker *X* Event, where *AWGName* is the name of your associated AWG module in MAX and *X* is Marker Event 0 through 3. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/Marker *X* Event, where *BasebandModule* is the name of the baseband module of your device in MAX and *X* is Marker Event 0 through 3. + + PXIe-5820/5840/5841: /*ModuleName*/ao/0/Marker *X* Event, where *ModuleName* is the name of your device in MAX and *X* is Marker Event 0 through 3. + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - _get_terminal_name + + Tip: + This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_terminal_name` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_terminal_name` + ''' + marker_event_toggle_initial_state = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.MarkerEventToggleInitialState, 1150209) + '''Type: enums.MarkerEventToggleInitialState + + Specifies the initial state for the Marker Event when the marker_event_output_behavior property is set to MarkerEventOutputBehavior.TOGGLE. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** MarkerEventToggleInitialState.LOW + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Defined Values**: + + +------------------------------------+----------------+----------------------------------------------------------------------------------+ + | Name | Value | Description | + +====================================+================+==================================================================================+ + | MarkerEventToggleInitialState.HIGH | 21001 (0x5209) | Specifies the initial state of the Marker Event toggle behavior as digital high. | + +------------------------------------+----------------+----------------------------------------------------------------------------------+ + | MarkerEventToggleInitialState.LOW | 21000 (0x5208) | Specifies the initial state of the Marker Event toggle behavior as digital low. | + +------------------------------------+----------------+----------------------------------------------------------------------------------+ + + Tip: + This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container markers to specify a subset. + + Example: :py:attr:`my_session.markers[ ... ].marker_event_toggle_initial_state` + + To set/get on all markers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.marker_event_toggle_initial_state` + ''' + memory_size = _attributes.AttributeViInt64(1150061) + '''Type: int + + The total amount of memory on the signal generator in bytes. + + **Units:** bytes + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Memory Options `_ + + `Phase Continuity `_ + + Note: Not all onboard memory is available for waveform storage. A portion of onboard memory stores scripts that specify how the waveforms are generated. These scripts typically require less than 1KB of onboard memory. + ''' + module_power_consumption = _attributes.AttributeViReal64(1150210) + '''Type: float + + Returns the total power consumption of the device. + + **Units:** watts + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: If you query this property during RF list mode, list steps may take longer to complete during list execution. + ''' + module_revision = _attributes.AttributeViString(1150084) + '''Type: str + + Returns the module revision letter. If the NI-RFSG session is controlling multiple modules, this property returns the revision letter of the primary RF module. The NI-RFSG session is opened using the primary RF device name. + + **Supported Devices:** PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Identifying Module Revision `_ + ''' + output_enabled = _attributes.AttributeViBoolean(1250004) + '''Type: bool + + Specifies whether signal output is enabled. Setting the output_enabled property to False while in the Generation state stops signal output, although generation continues internally. For the PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653, PXI-5670/5671, and PXIe-5672/5673/5673E, setting the output_enabled property while in the Committed state does not transition the device to the Configuration state, but output changes immediately. + + **Default Value:** True + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Output Enabled `_ + + `NI-RFSG Instrument Driver Programming Flow `_ + + **High-Level Methods**: + + - configure_output_enabled + + **Defined Values**: + + +-------+-------------------------+ + | Value | Description | + +=======+=========================+ + | True | Enables signal output. | + +-------+-------------------------+ + | False | Disables signal output. | + +-------+-------------------------+ + + Note: - For the PXIe-5653, this property controls only the LO1 terminal. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + + - When the active_configuration_list property is set to a valid list name, setting the output_enabled property transitions the device to the Configuration state. + ''' + output_port = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.OutputPort, 1150144) + '''Type: enums.OutputPort + + Specifies the connector(s) to use to generate the signal. To set this property, the NI-RFSG device must be in the Configuration state. + + You must write complex I and Q data for all options. The Q data has no effect if you set this property to I Only and set the iq_out_port_carrier_frequency property to 0. If you set the iq_out_port_carrier_frequency property to a value other than 0, the onboard signal processing (OSP) frequency shifts I and Q as a complex value and outputs the real portion of the result on the I connector(s) of the device. + + If you set the output_port property to OutputPort.I_ONLY\_ONLY or OutputPort.IQ_OUT, the iq_out_port_terminal_configuration property applies. + + **Default Value:** + + PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842/5860: OutputPort.RF_OUT + + PXIe-5820: OutputPort.IQ_OUT + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +--------------------+----------------+------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +====================+================+==========================================================================================+ + | OutputPort.CAL_OUT | 14002 (0x36b2) | Enables the CAL OUT port. | + +--------------------+----------------+------------------------------------------------------------------------------------------+ + | OutputPort.I_ONLY | 14003 (0x36b3) | Enables the I connectors of the I/Q OUT port. This value is valid on only the PXIe-5645. | + +--------------------+----------------+------------------------------------------------------------------------------------------+ + | OutputPort.IQ_OUT | 14001 (0x36b1) | Enables the I/Q OUT port. This value is valid on only the PXIe-5645 and PXIe-5820. | + +--------------------+----------------+------------------------------------------------------------------------------------------+ + | OutputPort.RF_OUT | 14000 (0x36b0) | Enables the RF OUT port. This value is not valid for the PXIe-5820. | + +--------------------+----------------+------------------------------------------------------------------------------------------+ + ''' + overflow_error_reporting = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.OverflowErrorReporting, 1150228) + '''Type: enums.OverflowErrorReporting + + Configures error reporting for onboard signal processing (OSP) overflows. Overflows lead to clipping of the waveform. + + **Default Value:** OverflowErrorReporting.WARNING + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +---------------------------------+--------------+----------------------------------------------------------------------------+ + | Name | Value | Description | + +=================================+==============+============================================================================+ + | OverflowErrorReporting.DISABLED | 1302 (0x516) | NI-RFSG does not return an error or a warning when an OSP overflow occurs. | + +---------------------------------+--------------+----------------------------------------------------------------------------+ + | OverflowErrorReporting.WARNING | 1301 (0x515) | NI-RFSG returns a warning when an OSP overflow occurs. | + +---------------------------------+--------------+----------------------------------------------------------------------------+ + ''' + p2p_data_transfer_permission_initial_credits = _attributes.AttributeViInt64(1150135) + '''Type: int + + Specifies the initial amount of data that the writer peer can transfer over the bus into the configured endpoint when the peer-to-peer data stream is enabled. If this property is not set and the endpoint is empty, credits equal to the full endpoint size are issued to the writer peer. If data is written to the endpoint using the WriteP2pEndpointI16 method prior to enabling the stream, credits equal to the remaining space available in the endpoint are issued to the writer peer. This property is coerced up by NI-RFSG to 8-byte boundaries. This property is endpoint-based. + + **Units**: samples per channel + + **Default Value:** 1,024 + + **Supported Devices:** PXIe-5673E + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + `Configuring Flow Control `_ + ''' + p2p_data_transfer_permission_interval = _attributes.AttributeViInt64(1150134) + '''Type: int + + Specifies the interval at which the RF signal generator issues credits to allow the writer peer to transfer data over the bus into the configured endpoint. This property is coerced up by NI-RFSG to the nearest 128-byte boundary. This property is endpoint-based. + + **Units**: samples per channel + + **Supported Devices:** PXIe-5673E + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + `Configuring Flow Control `_ + ''' + p2p_enabled = _attributes.AttributeViBoolean(1150123) + '''Type: bool + + Specifies whether the RF signal generator reads data from the peer-to-peer endpoint. This property is endpoint-based. + + **Default Value**: False + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + **Defined Values**: + + +-------+------------------------------------------+ + | Value | Description | + +=======+==========================================+ + | True | Peer-to-peer data streaming is enabled. | + +-------+------------------------------------------+ + | False | Peer-to-peer data streaming is disabled. | + +-------+------------------------------------------+ + ''' + p2p_endpoint_count = _attributes.AttributeViInt32(1150127) + '''Type: int + + Returns the number of peer-to-peer FIFO endpoints supported by the device. + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + ''' + p2p_endpoint_fullness_start_trigger_level = _attributes.AttributeViInt64(1150128) + '''Type: int + + Specifies the number of samples the endpoint must receive before the device starts generation. If no level is specified, NI-RFSG automatically sets this value to -1. This property applies only when the start_trigger_type property is set to StartTrigType.P2P_ENDPOINT_FULLNESS + + **Default Value:** -1, which allows NI-RFSG to select the appropriate fullness value. + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Start Trigger `_ + + Note: Due to an additional internal FIFO in the RF signal generator, the writer peer actually needs to write 2,304 bytes more than the quantity of data specified by this property to satisfy the trigger level. + ''' + p2p_endpoint_size = _attributes.AttributeViInt64(1150124) + '''Type: int + + Returns the size, in samples, of the device endpoint. This property is endpoint-based. + + **Units**: samples (s) + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + ''' + p2p_generation_fifo_sample_quantum = _attributes.AttributeViInt64(1150219) + '''Type: int + + Returns how many samples NI-RFSG pulls from the peer-to-peer FIFO per read. You can use this property to determine how many samples to send across the peer-to-peer bus to ensure that no samples are ignored. If you send a number of samples that is not a multiple of this value, the remaining samples are not read from the FIFO during generation. This property is endpoint-based. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + ''' + p2p_is_finite_generation = _attributes.AttributeViBoolean(1150217) + '''Type: bool + + Specifies whether peer-to-peer should continuously generate data from the peer-to-peer stream or from only a finite number of samples, according to the p2p_number_of_samples_to_generate property. To use this property, peer-to-peer must be enabled. This property is endpoint-based. + + **Default Value**: False + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Defined Values**: + + +-------+--------------------------------------------------------------+ + | Value | Description | + +=======+==============================================================+ + | True | Data is generated from only a finite number of samples. | + +-------+--------------------------------------------------------------+ + | False | Data is continuously generated from the peer-to-peer stream. | + +-------+--------------------------------------------------------------+ + ''' + p2p_most_space_available_in_endpoint = _attributes.AttributeViInt64(1150126) + '''Type: int + + Returns the largest number of samples per channel available in the endpoint since this property was last read. You can use this property to determine how much endpoint space to use as a buffer against bus traffic latencies by reading the property and keeping track of the largest value returned. This property is endpoint-based. + + If you want to minimize the latency for data to move through the endpoint and be generated by the RF signal generator, use the p2p_data_transfer_permission_initial_credits property to grant fewer initial credits than the default of the entire endpoint size. + + **Units**: samples per channel + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + ''' + p2p_number_of_samples_to_generate = _attributes.AttributeViInt64(1150218) + '''Type: int + + Specifies how many samples are generated from the peer-to-peer subsystem when it is enabled. To use this property, peer-to-peer must be enabled and set to finite generation. This property is endpoint-based. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + ''' + p2p_space_available_in_endpoint = _attributes.AttributeViInt64(1150125) + '''Type: int + + Returns the current space available in the endpoint. You can use this property when priming the endpoint with initial data using the WriteP2pEndpointI16 method to determine how many samples you can write. You also can use this property to characterize the performance and measure the latency of the peer-to-peer stream as data moves across the bus. This property is endpoint-based. + + **Units**: samples per channel + + **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Endpoint `_ + + `Starting Peer-to-Peer Generation `_ + ''' + peak_envelope_power = _attributes.AttributeViReal64(1150011) + '''Type: float + + Returns the maximum instantaneous power of the RF output signal. + + **Units**: dBm + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: - This property is valid only when the power_level_type property is set to PowerLevelType.AVERAGE. + + - The arb_digital_gain property is not included in the calculation of the peak_envelope_power property. + ''' + peak_power_adjustment = _attributes.AttributeViReal64(1150132) + '''Type: float + + Specifies the adjustment for the power_level property. This property is valid only when you set the power_level_type property to PowerLevelType.PEAK. The value of the peak_power_adjustment property adds to the power_level property. The peak_power_adjustment property typically specifies the peak-to-average power ratio (PAPR) of a waveform. If the PAPR is specified, the specified power level becomes the average power level of the waveform, even if the power_level_type property is set to PowerLevelType.PEAK. + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate a peak power adjustment with a waveform. + + Note: - For the PXIe-5673/5673E only, use this property to associate a peak power adjustment with a waveform. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + ''' + peak_power_adjustment_inheritance = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.PpaInheritance, 1150141) + '''Type: enums.PpaInheritance + + Determines the inheritance behavior of the peak_power_adjustment property when a script inherits values from specified waveforms. + + **Default Value:** PpaInheritance.EXACT_MATCH + + **Supported Devices:** PXIe-5673/5673E + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + **Defined Values**: + + +----------------------------+------------------------------------------------------------+ + | Value | Description | + +============================+============================================================+ + | PpaInheritance.EXACT_MATCH | Errors out if different values are detected in the script. | + +----------------------------+------------------------------------------------------------+ + | PpaInheritance.MINIMUM | Uses the minimum value found in the script. | + +----------------------------+------------------------------------------------------------+ + ''' + phase_continuity_enabled = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.PhaseContinuityEnabled, 1150005) + '''Type: enums.PhaseContinuityEnabled + + Specifies whether the driver maintains phase continuity in the arbitrary waveforms. When this property is set to PhaseContinuityEnabled.ENABLE, NI-RFSG may increase the waveform size. When this property is set to PhaseContinuityEnabled.ENABLE, the frequency_tolerance property specifies the maximum allowable frequency error that can be introduced when keeping the signal phase-continuous. To set the phase_continuity_enabled property, the NI-RFSG device must be in the Configuration state. phase_continuity_enabled applies only when the generation_mode property is set to GenerationMode.ARB_WAVEFORM or GenerationMode.SCRIPT. + + PXI-5671: When using the PXI-5671 with I/Q rates less than or equal to 8.33MS/s, an input phase-continuous signal is always phase-continuous upon output, and this property has no effect. + + PXIe-5644/5645/5646, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Phase continuity is *always* enabled on this device. + + **Default Value:** PhaseContinuityEnabled.AUTO + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Phase Continuity `_ + + `Arb Waveform Mode Tuning Speed Factors `_ + + **Defined Values**: + + +-------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | phase_continuity_enabled Property Setting | Value | With I/Q Rates > 8.33 MS/s. | + +===========================================+===========+==========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | PhaseContinuityEnabled.AUTO | -1 (-0x1) | When the Generation Mode property is set to Arb Waveform, the arbitrary waveform may be repeated to ensure phase continuity after upconversion. This setting could cause waveform size to increase. When the Generation Mode property is set to Script, the Phase Continuity Enabled property indicates a warning condition. NI-RFSG cannot guarantee a phase-continuous output signal in Script mode. Phase continuity is automatically disabled in script mode, and the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. | + +-------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PhaseContinuityEnabled.DISABLE | 0 (0x0) | When the Generation Mode property is set to Arb Waveform, the arbitrary waveform is played back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. When the Generation Mode property is set to Script, the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. | + +-------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PhaseContinuityEnabled.ENABLE | 1 (0x1) | When the Generation Mode property is set to Arb Waveform, the arbitrary waveform may be repeated to ensure phase continuity after upconversion. Enabling this property could cause waveform size to increase. When the Generation Mode property is set to Script, the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. | + +-------------------------------------------+-----------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + phase_offset = _attributes.AttributeViReal64(1150024) + '''Type: float + + Specifies the phase of the RF output signal. Use this property to align the phase of the RF output with the phase of the RF output of another device, as long as the two devices are phase-coherent. + + **Units**: degrees (°) + + **Default Value:** 0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Phase Synchronization and Phase Coherency `_ + ''' + power_level = _attributes.AttributeViReal64(1250002) + '''Type: float + + Specifies either the average power level or peak power level of the generated RF signal, depending on the power_level_type property setting. + + The PXI-5670/5671, PXIe-5672, and PXIe-5860 must be in the Configuration state to use this property. However, the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E and PXIe-5830/5831/5832/5840/5841/5842 can be in the Configuration or the Generation state to use this property. + + Refer to the specifications document for your device for allowable power level settings. + + **Units**: dBm + + **Default Values:** + + PXIe-5644/5645/5646, PXIe-5673/5673E: -100 + + PXI/PXIe-5650/5651/5652: -90 + + PXIe-5654: -7 + + PXIe-5654 with PXIe-5696: -110 + + PXI-5670/5671, PXIe-5672: -145 + + PXIe-5830/5831/5832/5840/5841/5842/5860: -174 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + **High-Level Methods**: + + - ConfigureRf + + Note: - For the PXIe-5653, this property is read-only. + + - For the PXIe-5645, this property is ignored if you are using the I/Q ports. + ''' + power_level_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.PowerLevelType, 1150043) + '''Type: enums.PowerLevelType + + Specifies how NI-RFSG interprets the value of the power_level property. The power_level_type property also affects how waveforms are scaled. + + PXI-5670/5671: While in Script generation mode, if this property is set to PowerLevelType.AVERAGE, NI-RFSG scales each waveform so that all waveforms have the same average power. The average power level of each waveform matches the value set with the power_level property. You can disable this scaling operation by setting the power_level_type property to PowerLevelType.PEAK. + + PXIe-5644/5645/5646, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: While in Script generation mode, this property must be set to PowerLevelType.PEAK. + + Converting from Average Power to Peak Power + + Typically, this property is set to PowerLevelType.AVERAGE. However, some instrument modes require this property to be set to PowerLevelType.PEAK. Use the following equations to calculate the equivalent peak power given the desired average power for your waveform: + + + Where 1 is the highest possible magnitude in the waveform. + + + + **Default Value:** + + PXIe-5820: PowerLevelType.PEAK + + All other devices: PowerLevelType.AVERAGE + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Spurious Performance `_ + + `Optimizing for Low Power Generation `_ + + **High-Level Methods**: + + - configure_power_level_type + + **Defined Values**: + + +------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +========================+====================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | PowerLevelType.AVERAGE | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If your write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | + +------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | PowerLevelType.PEAK | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires that the magnitude of the I/Q waveform must always be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. You can use the peak_power_adjustment property in conjunction with the power_level property when the power_level_type property is set to PowerLevelType.PEAK. | + +------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + ''' + pulse_modulation_active_level = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ScriptTrigDigLevelActiveLevel, 1150307) + '''Type: enums.ScriptTrigDigLevelActiveLevel + + Specifies the active level of the pulse modulation signal when pulse modulation is enabled. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** ScriptTrigDigLevelActiveLevel.HIGH + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +------------------------------------+---------------+--------------------------------------------------+ + | Name | Value | Description | + +====================================+===============+==================================================+ + | ScriptTrigDigLevelActiveLevel.HIGH | 9000 (0x2328) | Trigger when the digital trigger signal is high. | + +------------------------------------+---------------+--------------------------------------------------+ + | ScriptTrigDigLevelActiveLevel.LOW | 9001 (0x2329) | Trigger when the digital trigger signal is low. | + +------------------------------------+---------------+--------------------------------------------------+ + ''' + pulse_modulation_enabled = _attributes.AttributeViBoolean(1250051) + '''Type: bool + + Enables or disables pulse modulation. + + PXIe-5654/5654 with PXIe-5696: If this property is enabled and the signal at the PULSEIN front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled. + + PXIe-5673/5673E: If this property is enabled and the signal at the PLSMOD front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled. + + PXIe-5842: If this property is enabled and the signal at the PULSE IN front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled. This behavior can be modified by setting pulse modulation active level. + + **Default Value:** False + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E + + **Related Topics** + + `Pulse Modulation `_ + + **Defined Values**: + + +-------+----------------------------+ + | Value | Description | + +=======+============================+ + | True | Enables pulse modulation. | + +-------+----------------------------+ + | False | Disables pulse modulation. | + +-------+----------------------------+ + ''' + pulse_modulation_mode = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.PulseModulationMode, 1150190) + '''Type: enums.PulseModulationMode + + PXIe-5654/5654 with PXIe-5696: Specifies the pulse modulation mode to use. + + PXIe-5842: This property allows you to choose a tradeoff between switching speed and On/Off Ratio when using pulse modulation. Refer to the product specifications document for the switching characteristics of each mode. This property is settable while the device is generating, but some output pulses may be dropped. + + **Default Value:** PulseModulationMode.ANALOG + + **Supported Devices:** PXIe-5842/5654/5654 with PXIe-5696 + + **Defined Values**: + + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +===================================================+=============================================================================================================================================+ + | PulseModulationMode.OPTIMAL_MATCH | Provides for a more optimal power output match for the device during the off cycle of the pulse mode operation. Not supported on PXIe-5842. | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_PULSE_MODULATION_ANALOG_HIGH_ISOLATION | Allows for the best on/off power ratio of the pulsed signal. | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_PULSE_MODULATION_ANALOG | Analog switch blanking. Balance between switching speed and on/off power ratio of the pulsed signal. | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_PULSE_MODULATION_DIGITAL | Digital only modulation. Provides the best on/off switching speed of the pulsed signal at the cost of signal isolation. | + +---------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + pulse_modulation_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.PulseModulationSource, 1150308) + '''Type: enums.PulseModulationSource + + Specifies the source of the pulse modulation signal. When Pulse In in used, the pulse modulation is applied with the lowest latency and jitter, but is not aligned to any particular waveform sample. When a marker is used, the RF pulse is aligned to a specific sample in the arbitrary waveform. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** PulseModulationSource.PULSE_IN + + **Supported Devices:** PXIe-5842 + + **Defined Values**: + + +--------------------------------+---------+----------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +================================+=========+==============================================================================================+ + | PulseModulationSource.PULSE_IN | PulseIn | The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842. | + +--------------------------------+---------+----------------------------------------------------------------------------------------------+ + | PulseModulationSource.MARKER0 | | The trigger is received from the Marker 0. | + +--------------------------------+---------+----------------------------------------------------------------------------------------------+ + | PulseModulationSource.MARKER1 | | The trigger is received from the Marker 1. | + +--------------------------------+---------+----------------------------------------------------------------------------------------------+ + | PulseModulationSource.MARKER2 | | The trigger is received from the Marker 2. | + +--------------------------------+---------+----------------------------------------------------------------------------------------------+ + | PulseModulationSource.MARKER3 | | The trigger is received from the Marker 3. | + +--------------------------------+---------+----------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + pxi_chassis_clk10_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.PxiChassisClk10Source, 1150004) + '''Type: enums.PxiChassisClk10Source + + Specifies the clock source for driving the PXI 10 MHz backplane Reference Clock. This property is configurable if the PXI-5610 upconverter module is installed in *only* Slot 2 of a PXI chassis. To set this property, the NI-RFSG device must be in the Configuration state. + + **Defined Values**: + + Name (Value): Description + + PxiChassisClk10Source.NONE (0) :Do not drive the PXI_CLK10 signal. + + PxiChassisClk10Source.ONBOARD_CLOCK_STR (OnboardClock) :Uses the highly stable oven-controlled onboard Reference Clock to drive the PXI_CLK signal. + + PxiChassisClk10Source.REF_IN_STR (RefIn) :Uses the clock present at the front panel REF IN connector to drive the PXI_CLK signal. + + **Default Value:** PxiChassisClk10Source.NONE + + **Supported Devices:** PXI-5610, PXI-5670/5671 + + **Related Topics** + + `Timing Configurations `_ + + `System Reference Clock `_ + + **High-Level Methods**: + + - configure_pxi_chassis_clk10 + + + Only certain combinations of this property and the ref_clock_source property are valid, as shown in the following table. + + +---------------------------------------------------------------------+-----------------------------------------+ + | pxi_chassis_clk10_source Setting | ref_clock_source Setting | + +=====================================================================+=========================================+ + | PxiChassisClk10Source.NONE, PxiChassisClk10Source.ONBOARD_CLOCK_STR | PxiChassisClk10Source.ONBOARD_CLOCK_STR | + +---------------------------------------------------------------------+-----------------------------------------+ + | PxiChassisClk10Source.NONE, PxiChassisClk10Source.REF_IN_STR | PxiChassisClk10Source.REF_IN_STR | + +---------------------------------------------------------------------+-----------------------------------------+ + | PxiChassisClk10Source.NONE, PxiChassisClk10Source.REF_IN_STR | ReferenceClockSource.PXI_CLK | + +---------------------------------------------------------------------+-----------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + query_instrument_status = _attributes.AttributeViBoolean(1050003) + '''Type: bool + + Specifies whether NI-RFSG queries the NI-RFSG device status after each operation. Querying the device status is useful for debugging. After you validate your program, set this property to False to disable status checking and maximize performance. + + NI-RFSG can choose to ignore status checking for particular properties, regardless of the setting of this property. Use the __init__ method to override the default value. + + **Default Value:** False + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------------------------------------------+ + | Value | Description | + +=======+=============================================================+ + | True | NI-RFSG queries the instrument status after each operation. | + +-------+-------------------------------------------------------------+ + | False | NI-RFSG does not query the instrument status. | + +-------+-------------------------------------------------------------+ + ''' + range_check = _attributes.AttributeViBoolean(1050002) + '''Type: bool + + Specifies whether to validate property values and method parameters. Range checking parameters is very useful for debugging. After you validate your program, set this property to False to disable range checking and maximize performance. NI-RFSG can choose to ignore range checking for particular properties, regardless of the setting of this property. Use the __init__ method to override the default value. + + **Default Value:** True + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------+ + | Value | Description | + +=======+=========================+ + | True | Enable range checking. | + +-------+-------------------------+ + | False | Disable range checking. | + +-------+-------------------------+ + ''' + record_coercions = _attributes.AttributeViBoolean(1050006) + '''Type: bool + + Specifies whether the IVI engine keeps a list of the value coercions it makes for integer and real type properties. + + **Default Value:** False + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+---------------------------------------------------+ + | Value | Description | + +=======+===================================================+ + | True | The IVI engine keeps a list of coercions. | + +-------+---------------------------------------------------+ + | False | The IVI engine does not keep a list of coercions. | + +-------+---------------------------------------------------+ + + Note: Enabling record value coercions is not supported. + ''' + ref_clock_rate = _attributes.AttributeEnum(_attributes.AttributeViReal64, enums.ReferenceClockRate, 1250322) + '''Type: enums.ReferenceClockRate + + Specifies the Reference Clock rate, in Hz, of the signal present at the REF IN or CLK IN connector. This property is only valid when the ref_clock_source property is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR, or ReferenceClockSource.REF_IN_2 + + To set this property, the NI-RFSG device must be in the Configuration state. If you are using the PXIe-5654/5654 with PXIe-5696, the NI-RFSG device must be in the Committed state to read this property. When you read this property, it returns the frequency the device is locked to during the Committed state. + + If you set this property to ReferenceClockRate.AUTO, NI-RFSG uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if automatic detection is supported by the device. + + **Valid Values:** + + PXIe-5654/5654 with PXIe-5696: Values between 1MHz to 20MHz in 1MHz steps are supported in addition to the ReferenceClockRate.AUTO and ReferenceClockRate._10mhz values. + + PXIe-5841 with PXIe-5655, PXIe-5842: 10 MHz, 100 MHz, 270 MHz, and 3.84 MHz + + y, where + + y is 4, 8, 16, 24, 25, or 32. + + PXIe-5860: 10 MHz, 100 MHz + + **Units**: hertz (Hz) + + **Default Value:** ReferenceClockRate.AUTO + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Timing Configurations `_ + + **High-Level Methods**: + + - configure_ref_clock + + **Defined Values**: + + +---------------------------+-----------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +===========================+===================================================================================================================================+ + | ReferenceClockRate.AUTO | Uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if the device supports it. | + +---------------------------+-----------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockRate._10mhz | Uses a 10 MHz Reference Clock rate. | + +---------------------------+-----------------------------------------------------------------------------------------------------------------------------------+ + + Note: Automatic detection of the Reference Clock rate is supported on only the PXIe-5654/5654 with PXIe-5696. For all other supported devices, NI-RFSG uses the default Reference Clock rate of 10MHz. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + ref_clock_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ReferenceClockSource, 1150001) + '''Type: enums.ReferenceClockSource + + Specifies the Reference Clock source. To set this property, the NI-RFSG device must be in the Configuration state. Only certain combinations of this property and the pxi_chassis_clk10_source property are valid, as shown in the following table. + + **Default Value:** ReferenceClockSource.ONBOARD_CLOCK + + **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Timing Configurations `_ + + **High-Level Methods**: + + - configure_ref_clock + + **Defined Values**: + + +-------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=====================================+===============+=========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | ReferenceClockSource.ONBOARD_CLOCK | OnboardClock | Uses the onboard Reference Clock as the clock source. **PXIe-5830/5831** —For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831/5832, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. ** PXIe-5831/5832 with PXIe-5653** —Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. **PXIe-5841 with PXIe-5655** —Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector. | + +-------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.CLK_IN | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the Reference Clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655. | + +-------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.REF_IN | RefIn | Uses the clock signal present at the front panel REF IN connector as the Reference Clock source. **PXIe-5830/5831** —For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831/5832, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831/5832, lock the external signal to the PXIe-3622 REF IN connector. **PXIe-5831/5832 with PXIe-5653** —Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5841 with PXIe-5655** —Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector. | + +-------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.PXI_CLK | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the Reference Clock source. | + +-------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.REF_IN_2 | RefIn2 | This value is not valid on any supported devices. | + +-------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.PXI_CLK_MASTER | PXI_ClkMaster | This value is valid on only the PXIe-5831/5832 with PXIe-5653. **PXIe-5831/5832 with PXIe-5653** —NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use ReferenceClockSource.PXI_CLK as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +-------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: The PXI-5670/5671 and PXIe-5672 devices also allow you to drive the PXI 10 MHz backplane clock on PXI chassis *only* using the pxi_chassis_clk10_source property. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + ref_pll_bandwidth = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.LoopBandwidth, 1150133) + '''Type: enums.LoopBandwidth + + Configures the loop bandwidth of the reference PLL. + + **Default Value:** LoopBandwidth.NARROW + + **Supported Devices:** PXIe-5653 + + **Related Topics** + + `Phase-Locked Loop Bandwidth `_ + + **Defined Values**: + + +----------------------+--------------------------------------------------------+ + | Value | Description | + +======================+========================================================+ + | LoopBandwidth.NARROW | Uses the narrowest loop bandwidth setting for the PLL. | + +----------------------+--------------------------------------------------------+ + | LoopBandwidth.MEDIUM | Uses the medium loop bandwidth setting for the PLL. | + +----------------------+--------------------------------------------------------+ + | LoopBandwidth.WIDE | Uses the widest loop bandwidth setting for the PLL. | + +----------------------+--------------------------------------------------------+ + ''' + relative_delay = _attributes.AttributeViReal64(1150220) + '''Type: float + + Specifies the delay, in seconds, to apply to the I/Q waveform. + + Relative delay allows for delaying the generated signal from one device relative to the generated signal of another device after those devices have been synchronized. You can achieve a negative relative delay by delaying both synchronized devices by the same value (1 μs) before generation begins and then changing the relative delay to a smaller amount than the initial value on only one of the devices. + + To set this property, the NI-RFSG device must be in the Configuration or Generation state. + + **Units:** Seconds + + **Valid Values:** + + PXIe-PXIe-5820/5830/5831/5832/5840/5841: 0 μs to 3.2 μs + + PXIe-5842: 0 μs to 6.5 μs + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `NI-TClk Overview `_ + + Note: - To obtain a negative relative delay when synchronizing the PXIe-5840/5841 with a module that does not support this property, use the NITCLK_ATTR_SAMPLE_CLOCK_DELAY property. + + - The resolution of this property is a method of the I/Q sample period at 15E(-6) of the sample period but not worse than one Sample Clock period. + ''' + rf_blanking_source = _attributes.AttributeViString(1150162) + '''Type: str + + Specifies the Marker Event at which RF blanking occurs. RF blanking quickly attenuates the RF OUT signal. Use Marker Events to toggle the state of RF blanking. The RF Output always starts in the unblanked state. + + To set this property, the NI-RFSG device must be in the Configuration state. + + You can specify Marker Events by using scripts to trigger blanking at a certain point in a waveform. For example, if you set this property to marker0 str}, and marker0 occurs on samples 1,000 and 2,000 of a script, then the RF Output will be blanked (attenuated) between samples 1,000 and 2,000. + + PXIe-5645: This property is ignored if you are using the I/Q ports. + + PXIe-5840/5841: RF blanking does not occur for frequencies below 120MHz. + + For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call reset_with_options or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit**parameter. + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + **Valid Values**: + + +-------------------+---------------------------------+ + | Value | Description | + +===================+=================================+ + | "" (empty string) | RF blanking is disabled. | + +-------------------+---------------------------------+ + | Marker0 | RF blanking is tied to marker0. | + +-------------------+---------------------------------+ + | Marker1 | RF blanking is tied to marker1. | + +-------------------+---------------------------------+ + | Marker2 | RF blanking is tied to marker2. | + +-------------------+---------------------------------+ + | Marker3 | RF blanking is tied to marker3. | + +-------------------+---------------------------------+ + + Note: The shortest supported blanking interval is eight microseconds. + ''' + rf_in_lo_export_enabled = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.RFInLoExportEnabled, 1150243) + '''Type: enums.RFInLoExportEnabled + + Specifies whether to enable the RF IN LO OUT terminal on the PXIe-5840/5841. + + Set this property to RFInLoExportEnabled.ENABLE to export the LO signal from the RF IN LO OUT terminal. + + When this property is enabled, if the lo_source property is set to LoSource.LO_IN and you do not set the lo_frequency or upconverter_center_frequency properties, NI-RFSG rounds the LO frequency to approximately an LO step size as if the source was NIRFSG_VAL_ONBOARD_CLOCK_STR. This ensures that when you configure NI-RFSA and NI-RFSG with compatible settings that result in the same LO frequency, the rounding also is compatible. + + **Default Value:** RFInLoExportEnabled.UNSPECIFIED + + **Supported Devices**: PXIe-5840/5841/5842 + + **Defined Values**: + + +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +=================================+=========================================================================================================================================+ + | RFInLoExportEnabled.DISABLE | The RF In local oscillator signal is not present at the front panel LO OUT connector. | + +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | RFInLoExportEnabled.ENABLE | The RF In local oscillator signal is present at the front panel LO OUT connector. | + +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | RFInLoExportEnabled.UNSPECIFIED | The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it. | + +---------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + script_trigger_terminal_name = _attributes.AttributeViString(1150116) + '''Type: str + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/ScriptTrigger *X*, where *AWGName* is the name of your associated AWG module in MAX and *X* is Script Trigger 0 through 3. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/ScriptTrigger *X*, where *BasebandModule* is the name of the baseband module of your device in MAX and *X* is Script Trigger 0 through 3. + + PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/ScriptTrigger *X*, where *ModuleName* is the name of your device in MAX and *X* is Script Trigger 0 through 3. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/ScriptTrigger *X*, where *ModuleName* is the name of your device in MAX, *ChannelNumber* is the channel number (0 or 1), and *X* is Script Trigger 0 through 3. + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - _get_terminal_name + + Tip: + This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].script_trigger_terminal_name` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.script_trigger_terminal_name` + ''' + script_trigger_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ScriptTrigType, 1150019) + '''Type: enums.ScriptTrigType + + Specifies the Script Trigger type. Depending upon the value of this property, more properties may be needed to fully configure the trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** ScriptTrigType.NONE + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Trigger Types `_ + + **High-Level Methods**: + + - configure_digital_edge_script_trigger + + **Defined Values**: + + +------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +==============================+=======================================================================================================================================================================================================================================================================+ + | ScriptTrigType.NONE | No trigger is configured. Signal generation starts immediately. | + +------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigType.DIGITAL_EDGE | The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the digital_edge_start_trigger_source property, and the active edge is specified with the digital_edge_start_trigger_edge property. | + +------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigType.DIGITAL_LEVEL | The data operation does not start until the digital level is detected. The source of the digital level is specified in the digital_level_script_trigger_source property, and the active level is specified in the digital_level_script_trigger_active_level property. | + +------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ScriptTrigType.SOFTWARE | The data operation does not start until a software trigger occurs. You can create a software event by calling the send_software_edge_trigger method. | + +------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Tip: + This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container script_triggers to specify a subset. + + Example: :py:attr:`my_session.script_triggers[ ... ].script_trigger_type` + + To set/get on all script_triggers, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.script_trigger_type` + ''' + selected_path = _attributes.AttributeViString(1150311) + '''Type: str + + Specifies which path to configure to generate a signal. + ''' + selected_ports = _attributes.AttributeViString(1150241) + '''Type: str + + Specifies the port to configure. + + **Valid Values**: + + PXIe-5644/5645/5646, PXIe-5820/5840/5841: "" (empty string) + + PXIe-5830: if0, if1 + + PXIe-5831/5832: if0, if1, rf*0-1*/port*x*, where *0-1* indicates one (*0*) or two (*1*) mmRH-5582 connections and *x* is the port number on the mmRH-5582 front panel. + + **Default Value:** + + PXIe-5644/5645/5646, PXIe-5820/5840/5841/5842/5860: "" (empty string) + + PXIe-5830/5831/5832: if0 + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + available_ports + + Note: When using RF list mode, ports cannot be shared with NI-RFSA. + ''' + selected_script = _attributes.AttributeViString(1150023) + '''Type: str + + Specifies the script in onboard memory to generate upon calling the _initiate method when the generation_mode property is set to GenerationMode.SCRIPT. + + The selected_script property is ignored when the generation_mode property is set to GenerationMode.ARB_WAVEFORM or GenerationMode.CW. To set the selected_script property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + `Scripting Instructions `_ + ''' + self_calibration_temperature = _attributes.AttributeViReal64(1150136) + '''Type: float + + Indicates, in degrees Celsius, the temperature of the device at the time of the last self calibration. + + **Supported Devices:** PXIe-5644/5645/5646 + ''' + serial_number = _attributes.AttributeViString(1150026) + '''Type: str + + Returns the serial number of the RF module. If the NI-RFSG session is controlling multiple modules, this property returns the serial number of the primary RF module. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + signal_bandwidth = _attributes.AttributeViReal64(1150007) + '''Type: float + + Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× iq_rate). + + NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f*\ :sub:`max`\ - *f*\ :sub:`min`\ . + + This property applies only when the generation_mode property is set to GenerationMode.ARB_WAVEFORM or GenerationMode.SCRIPT, except for when using the PXIe-5830/5831/5832/5840/5841, which supports setting this property in all supported generation modes. To set the signal_bandwidth property, the NI-RFSG device must be in the Configuration state. + + PXI-5670/5671, PXIe-5672: Based on your signal bandwidth, NI-RFSG determines whether to configure the upconverter center frequency in increments of 1MHz or 5MHz. Failure to configure this property may result in the signal being placed outside the upconverter passband. + + PXIe-5644/5645/5646, PXIe-5673/5673E: This property is used only for error-checking purposes. Otherwise, this property is ignored. + + PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Based on your signal bandwidth, NI-RFSG decides the equalized bandwidth. If this property is not set, NI-RFSG uses the maximum available signal bandwidth. For the PXIe-5840/5841, the maximum allowed signal bandwidth depends on the upconverter center frequency. Refer to the specifications document for your device for more information about signal bandwidth. The device specifications depend on the signal bandwidth. + + **Units**: hertz (Hz) + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Phase-Locked Loop Bandwidth `_ + + `Frequency Tuning Times `_ + + `PXIe-5830 Frequency and Bandwidth Selection `_ + + `PXIe-5831/5832 Frequency and Bandwidth Selection `_ + + `PXIe-5841 Frequency and Bandwidth Selection `_ + ''' + simulate = _attributes.AttributeViBoolean(1050005) + '''Type: bool + + Returns whether NI-RFSG simulates I/O operations. This property is useful for debugging applications without using hardware. After a session is opened, you cannot change the simulation state. Use the __init__ method to enable simulation. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------+-------------------------+ + | Value | Description | + +=======+=========================+ + | True | Simulation is enabled. | + +-------+-------------------------+ + | False | Simulation is disabled. | + +-------+-------------------------+ + ''' + specific_driver_class_spec_major_version = _attributes.AttributeViInt32(1050515) + '''Type: int + + Returns the major version number of the class specification with which NI-RFSG is compliant. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + specific_driver_class_spec_minor_version = _attributes.AttributeViInt32(1050516) + '''Type: int + + Returns the minor version number of the class specification with which NI-RFSG is compliant. + + **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + specific_driver_description = _attributes.AttributeViString(1050514) + '''Type: str + + Returns a string that contains a brief description of NI-RFSG. This property returns + + National Instruments RF Signal Generator Instrument Driver. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + specific_driver_prefix = _attributes.AttributeViString(1050302) + '''Type: str + + Returns a string that contains the prefix for NI-RFSG. The name of each user-callable method in NI-RFSG starts with this prefix. This property returns + + niRFSG. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + specific_driver_revision = _attributes.AttributeViString(1050551) + '''Type: str + + Returns a string that contains additional version information about NI-RFSG. For example, NI-RFSG can return + + Driver: NI-RFSG14.5.0, Compiler: MSVC9.00, Components: IVI Engine4.00, VISA-Spec4.00 as the value of this property. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + specific_driver_vendor = _attributes.AttributeViString(1050513) + '''Type: str + + Returns a string that contains the name of the vendor that supplies NI-RFSG. This property returns + + National Instruments. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + started_event_terminal_name = _attributes.AttributeViString(1150112) + '''Type: str + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/StartedEvent, where *AWGName* is the name of your associated AWG module in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/StartedEvent, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841: /*ModuleName*/ao/0/StartedEvent, where *ModuleName* is the name of your device in MAX. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/StartedEvent, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1). + + **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - _get_terminal_name + ''' + start_trigger_terminal_name = _attributes.AttributeViString(1150114) + '''Type: str + + Returns the name of the fully qualified signal name as a string. + + **Default Values**: + + PXIe-5654/5654 with PXIe-5696: /*ModuleName*/StartTrigger, where *ModuleName* is the name of your device in MAX. + + PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/StartTrigger, where *ModuleName* is the name of your associated AWG module in MAX. + + PXIe-5830/5831/5832: /*BasebandModule*/ao/0/StartTrigger, where *BasebandModule* is the name of the baseband module of your device in MAX. + + PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/StartTrigger, where *ModuleName* is the name of your device in MAX. + + PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/StartTrigger, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1). + + **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Syntax for Terminal Names `_ + + **High-Level Methods**: + + - _get_terminal_name + ''' + start_trigger_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.StartTrigType, 1250458) + '''Type: enums.StartTrigType + + Specifies the Start Trigger type. Depending upon the value of this property, more properties may be needed to fully configure the trigger. To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** StartTrigType.NONE + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Trigger Types `_ + + **High-Level Methods**: + + - configure_digital_edge_start_trigger + - configure_software_start_trigger + - disable_start_trigger + + **Defined Values**: + + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +=====================================+========================================================================================================================================================================================================================================================+ + | StartTrigType.NONE | No trigger is configured. | + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigType.DIGITAL_EDGE | The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the digital_edge_start_trigger_source property, and the active edge is specified in the digital_edge_start_trigger_edge property. | + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigType.SOFTWARE | The data operation does not start until a software event occurs. You may create a software trigger by calling the send_software_edge_trigger method. | + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | StartTrigType.P2P_ENDPOINT_FULLNESS | The data operation does not start until the endpoint reaches the threshold specified in the p2p_endpoint_fullness_start_trigger_level property. | + +-------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + streaming_enabled = _attributes.AttributeViBoolean(1150045) + '''Type: bool + + Enables and disables continuous streaming of waveform data. + + **Default Value:** False + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + **Defined Values**: + + +-------+------------------------+ + | Value | Description | + +=======+========================+ + | True | Streaming is enabled. | + +-------+------------------------+ + | False | Streaming is disabled. | + +-------+------------------------+ + ''' + streaming_space_available_in_waveform = _attributes.AttributeViInt64(1150047) + '''Type: int + + Indicates the space available, in samples, in the streaming waveform for writing new data. For optimal performance, write new data to the waveform in a fixed size that is an integer divisor of the total size of the streaming waveform. This waveform size ensures that writes do not have to wrap around from the end to the beginning of the waveform buffer. + + To read this property, the NI-RFSG device must be in the Committed state. + + **Units**: samples + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + ''' + streaming_waveform_name = _attributes.AttributeViString(1150046) + '''Type: str + + Specifies the name of the waveform used to continually stream data during generation. + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Streaming Waveform Data `_ + ''' + streaming_write_timeout = _attributes.AttributeViReal64TimeDeltaSeconds(1150140) + '''Type: hightime.timedelta, datetime.timedelta, or float in seconds + + Indicates the maximum amount of time allowed to complete a streaming write operation. + + **Default Value:** 10.0seconds + + **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Streaming Waveform Data `_ + ''' + supported_instrument_models = _attributes.AttributeViString(1050327) + '''Type: str + + Returns a string that contains a model code of the NI-RFSG device. For drivers that support more than one device, this property contains a comma-separated list of supported devices. + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + sync_sample_clock_dist_line = _attributes.AttributeViString(1150181) + '''Type: str + + Specifies which external trigger line distributes the Sample Clock sync signal. When synchronizing the Sample Clock between multiple devices, configure all devices to use the same Sample Clock sync distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0 + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5646 + + **Related Topics** + + `Synchronization Using NI-RFSA and NI-RFSG `_—Refer to this topic for more information about PXIe-5646 device synchronization. + ''' + sync_sample_clock_master = _attributes.AttributeViBoolean(1150180) + '''Type: bool + + Specifies whether the device is the master device when synchronizing the Sample Clock between multiple devices. The master device distributes the Sample Clock sync signal to all devices in the system through the Sample Clock sync distribution line. + + When synchronizing the Sample Clock, one device must always be designated as the master. The master device actively drives the Sample Clock sync distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5646 + + **Related Topics** + + `Synchronization Using NI-RFSA and NI-RFSG `_—Refer to this topic for more information about PXIe-5646 device synchronization. + + **Defined Values**: + + +-------+---------------------------------------------------------------------+ + | Value | Description | + +=======+=====================================================================+ + | True | The device is the master device for synchronizing the Sample Clock. | + +-------+---------------------------------------------------------------------+ + | False | The device is not the master for synchronizing the Sample Clock. | + +-------+---------------------------------------------------------------------+ + ''' + sync_script_trigger_dist_line = _attributes.AttributeViString(1150143) + '''Type: str + + Specifies which external trigger line distributes the synchronized Script Trigger signal. When synchronizing the Script Trigger, configure all devices to use the same Script Trigger distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0 + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Script Trigger `_ + + `Synchronizing Sample Clock and Sampled Reference Clock Signals `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + ''' + sync_script_trigger_master = _attributes.AttributeViBoolean(1150142) + '''Type: bool + + Specifies whether the device is the master device when synchronizing the Script Trigger. + + The master device distributes the synchronized Script Trigger to all devices in the system through the Script Trigger distribution line. + + When synchronizing the Script trigger, one device must always be designated as the master. The master device actively drives the Script Trigger distribution line. For slave devices, set the script_trigger_type property to digital edge, and set the digital_edge_script_trigger_source property to sync_script. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Script Trigger `_ + + `Synchronizing Sample Clock and Sampled Reference Clock Signals `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + + **Defined Values**: + + +-------+-----------------------------------------------------------------------+ + | Value | Description | + +=======+=======================================================================+ + | True | The device is the master device for synchronizing the Script Trigger. | + +-------+-----------------------------------------------------------------------+ + | False | The device is not the master for synchronizing the Script Trigger. | + +-------+-----------------------------------------------------------------------+ + ''' + sync_start_trigger_dist_line = _attributes.AttributeViString(1150156) + '''Type: str + + Specifies which external trigger line distributes the synchronized Start Trigger signal. When synchronizing the Start Trigger, configure all devices to use the same Start Trigger distribution line. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0 + + **Default Value:** "" (empty string) + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Start Trigger `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + ''' + sync_start_trigger_master = _attributes.AttributeViBoolean(1150155) + '''Type: bool + + Specifies whether the device is the master device when synchronizing the Start Trigger. The master device distributes the synchronized Start Trigger to all devices in the system through the Start Trigger distribution line. + + When synchronizing the Start Trigger, one device must always be designated as the master. The master device actively drives the Start Trigger distribution line. For slave devices, set the start_trigger_type property to digital edge, and set the digital_edge_start_trigger_source property to sync_script. + + To set this property, the NI-RFSG device must be in the Configuration state. + + **Default Value:** False + + **Supported Devices:** PXIe-5644/5645/5646 + + **Related Topics** + + `Start Trigger `_ + + Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers. + + **Defined Values**: + + +-------+----------------------------------------------------------------------+ + | Value | Description | + +=======+======================================================================+ + | True | The device is the master device for synchronizing the Start Trigger. | + +-------+----------------------------------------------------------------------+ + | False | The device is not the master for synchronizing the Start Trigger. | + +-------+----------------------------------------------------------------------+ + ''' + temperature_read_interval = _attributes.AttributeViReal64TimeDeltaSeconds(1150212) + '''Type: hightime.timedelta, datetime.timedelta, or float in seconds + + Specifies the minimum time between temperature sensor readings. + + **Units:** Seconds + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + ''' + thermal_correction_headroom_range = _attributes.AttributeViReal64(1150258) + '''Type: float + + Specifies the expected thermal operating range of the instrument from the self-calibration temperature, in degrees Celsius, returned from the device_temperature property. + + For example, if this property is set to 5.0, and the device is self-calibrated at 35°C, then you can expect to run the device from 30°C to 40°C with corrected accuracy and no overflows. Setting this property with a smaller value can result in improved dynamic range, but you must ensure thermal stability while the instrument is running. Operating the instrument outside of the specified range may cause degraded performance or DSP overflows. + + **Units:** degrees Celsius (°C) + + **Default Value**: + + **PXIe-5830/5831/5832/5842/5860**: 5 + + **PXIe-5840/5841**: 10 + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + ''' + thermal_correction_temperature_resolution = _attributes.AttributeViReal64(1150244) + '''Type: float + + Specifies the temperature change, in degrees Celsius, that is required before NI-RFSG recalculates the thermal correction settings when entering the Generation state. + + **Units:** degrees Celsius (°C) + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Default Values:** + + PXIe-5830/5831/5832/5842/5860: 0.2 + + PXIe-5840/5841: 1.0 + ''' + timer_event_interval = _attributes.AttributeViReal64TimeDeltaSeconds(1150100) + '''Type: hightime.timedelta, datetime.timedelta, or float in seconds + + Specifies the time before the timer emits an event after the task is started and specifies the time interval between Timer events after the first event. + + **Units**: seconds (s) + + **Default Value:** 0 + + **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Events `_ + + Note: For the PXIe-5820/5840/5841/5842/5860, this property must be set for the timer to start. If you do not set this property, the timer is disabled. + ''' + upconverter_center_frequency = _attributes.AttributeViReal64(1154098) + '''Type: float + + Indicates the center frequency of the passband containing the upconverted RF signal. Writing a value to this property while using the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, or PXIe-5820/5840/5841 device enables in-band retuning. In-band retuning increases the speed of frequency sweeps by reducing the amount of upconverter retunes. + + **Units**: hertz (Hz) + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + Note: - This property is read/write on the PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842, and is read-only on the PXI-5670/5671. + + - Resetting this property disables in-band retuning, however, for the PXIe-5820, in-band retuning is always enabled. + + - For the PXIe-5820, the only valid value for this property is 0. + + - Setting this property while the PXIe-5644/5645/5646, PXIe-5673/5673E, or PXIe-5820/5830/5831/5832/5840/5841/5842 device is generating has no effect until a dynamic property is set. + ''' + upconverter_frequency_offset = _attributes.AttributeViReal64(1150160) + '''Type: float + + This property offsets the upconverter_center_frequency from the RF frequency. Use this property to keep the local oscillator (LO) leakage at a determined offset from the RF signal. + + **Valid Values:** + + PXIe-5644/5645: -42MHz to +42MHz + + PXIe-5646: -100MHz to +100MHz + + PXIe-5830/5831/5832/5840/5841: -500MHz to +500MHz + + PXI-5842 (500 MHz bandwidth option): -250MHz to +250MHz + + PXI-5842 (1 GHz bandwidth option): -500MHz to +500MHz + + PXI-5842 (2 GHz bandwidth option): -1GHz to +1GHz + + PXIe-5842 (4 GHz bandwidth option) using the Standard personality: -1GHz to +1GHz + + PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality: -2GHz to +2GHz + + **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `PXIe-5830 Frequency and Bandwidth Selection `_ + + `PXIe-5831/5832 Frequency and Bandwidth Selection `_ + + `PXIe-5841 Frequency and Bandwidth Selection `_ + + Note: - You cannot set the upconverter_center_frequency property or the arb_carrier_frequency property at the same time as the upconverter_frequency_offset property. + + - Resetting this property disables the upconverter frequency offset. + ''' + upconverter_frequency_offset_mode = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.UpconverterFrequencyOffsetMode, 1150248) + '''Type: enums.UpconverterFrequencyOffsetMode + + Specifies whether to allow NI-RFSG to select the upconverter frequency offset. You can either set an offset yourself or let NI-RFSG select one for you. + + Placing the upconverter center frequency outside the bandwidth of your waveform can help avoid issues such as LO leakage. + + To set an offset yourself, set this property to UpconverterFrequencyOffsetMode.AUTO or UpconverterFrequencyOffsetMode.USER_DEFINED, and set either the upconverter_center_frequency or the upconverter_frequency_offset property. + + To allow NI-RFSG to automatically select the upconverter frequency offset, set this property to UpconverterFrequencyOffsetMode.AUTO or UpconverterFrequencyOffsetMode.ENABLE and set the signal_bandwidth to describe the bandwidth of your waveform. The signal bandwidth must be no greater than half the value of the device_instantaneous_bandwidth property, minus a device-specific guard band. Do not set the upconverter_center_frequency or upconverter_frequency_offset properties. If all conditions are met, NI-RFSG places the upconverter center frequency outside the signal bandwidth. Set this property to UpconverterFrequencyOffsetMode.ENABLE if you want to receive an error any time NI-RFSG is unable to apply automatic offset. + + When you set an offset yourself or do not use an offset, the reference frequency for gain is near the upconverter center frequency, and upconverter_frequency_offset_mode returns UpconverterFrequencyOffsetMode.USER_DEFINED. When NI-RFSG automatically sets an offset, the reference frequency for gain is near the frequency and upconverter_frequency_offset_mode returns UpconverterFrequencyOffsetMode.ENABLE. + + **Default Value:** UpconverterFrequencyOffsetMode.AUTO + + **Supported Devices**: PXIe-5830/5831/5832/5841/5842 + + **Related Topics** + + `PXIe-5830 Automatic Frequency Offset `_ + + `PXIe-5831/5832 Automatic Frequency Offset `_ + + `PXIe-5841 Automatic Frequency Offset `_ + + **Defined Values**: + + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +=============================================+========================================================================================================================================================================================================================================================================+ + | UpconverterFrequencyOffsetMode.ENABLE | NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the signal_bandwidth property has been set and can be avoided. NI-RFSG returns an error if the signal_bandwidth property has not been set, or if the signal bandwidth is too large. | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | UpconverterFrequencyOffsetMode.AUTO | NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the signal_bandwidth property has been set and can be avoided. | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | UpconverterFrequencyOffsetMode.USER_DEFINED | NI-RFSG uses the offset that you specified with the upconverter_frequency_offset or upconverter_center_frequency properties. | + +---------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: Below 120 MHz, the PXIe-5841 does not use an LO and UpconverterFrequencyOffsetMode.ENABLE is unavailable. Refer to the *PXIe-5841 Automatic Frequency Offset* topic for more information about using an automatic offset with an external LO. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + upconverter_gain = _attributes.AttributeViReal64(1154097) + '''Type: float + + Specifies the gain the upconverter applies to the signal. + + **Units**: dB + + **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: This property is read/write on the PXI-5610 and PXIe-5611 and is read-only on the PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860. + ''' + waveform_iq_rate = _attributes.AttributeViReal64(1150263) + '''Type: float + + Specifies the I/Q rate of the waveform. To set this property, the NI-RFSG device must be in the Configuration state. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming `_ + + `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate an I/Q rate with a waveform. + + `Digital Upconverter `_ + + Tip: + This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_iq_rate` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_iq_rate` + ''' + waveform_papr = _attributes.AttributeViReal64(1150266) + '''Type: float + + Specifies the peak-to-average power ratio (PAPR). + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Tip: + This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_papr` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_papr` + ''' + waveform_rf_blanking = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.RFBlanking, 1150278) + '''Type: enums.RFBlanking + + **Defined Values**: + + Name (Value): Description + + RFBlanking.DISABLE (0): RF blanking is disabled. + + RFBlanking.ENABLE (1): RF blanking is enabled. + + **Default Value:** RFBlanking.DISABLE + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Marker Events `_ + + Enables or disables RF blanking. + + +-----------------------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------------------+ + | rf_blanking_source | waveform_rf_blanking | Behaviour | + +===================================================================================+======================+===========================================================================================================+ + | "" (empty string) | RFBlanking.DISABLE | No blanking performed. | + +-----------------------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------------------+ + | "" (empty string) | RFBlanking.ENABLE | Blanking performed based on burst start and stop values and blanking source set to private marker. | + +-----------------------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_MARKER0, NIRFSG_VAL_MARKER1, NIRFSG_VAL_MARKER2, or NIRFSG_VAL_MARKER3 | RFBlanking.DISABLE | Blanking performed based on the marker locations for the marker that the user set in the blanking source. | + +-----------------------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_MARKER0, NIRFSG_VAL_MARKER1, NIRFSG_VAL_MARKER2, or NIRFSG_VAL_MARKER3 | RFBlanking.ENABLE | Error is shown. | + +-----------------------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------------------+ + + Note: For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call reset_with_options or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Tip: + This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_rf_blanking` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_rf_blanking` + ''' + waveform_runtime_scaling = _attributes.AttributeViReal64(1150265) + '''Type: float + + Specifies the waveform runtime scaling. The waveform runtime scaling is applied to the waveform data before any other signal processing. + + **Units**: dB + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860, PXIe-5841 with PXIe-5655 + + Tip: + This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_runtime_scaling` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_runtime_scaling` + ''' + waveform_signal_bandwidth = _attributes.AttributeViReal64(1150264) + '''Type: float + + Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× iq_rate). + + **Units**: hertz (Hz) + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Tip: + This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_signal_bandwidth` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_signal_bandwidth` + ''' + waveform_waveform_size = _attributes.AttributeViInt32(1150297) + '''Type: int + + Specifies the size of the waveform specified by an active channel. + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5841 with PXIe-5655/5842/5860 + + Tip: + This property can be set/get on specific waveform within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container waveform to specify a subset. + + Example: :py:attr:`my_session.waveform[ ... ].waveform_waveform_size` + + To set/get on all waveform, you can call the property directly on the :py:class:`nirfsg.Session`. + + Example: :py:attr:`my_session.waveform_waveform_size` + ''' + write_waveform_burst_detection = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.WriteWaveformBurstDetection, 1150273) + '''Type: enums.WriteWaveformBurstDetection + + Enables the detection of burst start and burst stop locations in the waveform. You can read the detected burst start and burst stop locations using _get_waveform_burst_start_locations and _get_waveform_burst_stop_locations methods respectively. + + **Default Value:** WriteWaveformBurstDetection.DISABLE + + **Supported Devices:**PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +-------------------------------------+------------------------------+ + | Value | Description | + +=====================================+==============================+ + | WriteWaveformBurstDetection.ENABLE | Burst detection is enabled. | + +-------------------------------------+------------------------------+ + | WriteWaveformBurstDetection.DISABLE | Burst detection is disabled. | + +-------------------------------------+------------------------------+ + + Note: - When you download a waveform using ReadAndDownloadWaveformFromFileTdms method and if waveform_rf_blanking property is enabled, you must set the write_waveform_burst_detection property to WriteWaveformBurstDetection.DISABLE. + + - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call reset_with_options or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + write_waveform_burst_detection_mode = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.WriteWaveformBurstDetectionMode, 1150274) + '''Type: enums.WriteWaveformBurstDetectionMode + + Specifies the algorithm that NI-RFSG uses to detect the burst start and burst stop locations in the waveform when burst detection is enabled using the write_waveform_burst_detection property. When you set write_waveform_burst_detection_mode to WriteWaveformBurstDetectionMode.AUTO, NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform. To fine-tune the burst detection process parameters yourself, you can set this property to WriteWaveformBurstDetectionMode.MANUAL and specify the burst detection parameters using the write waveform burst detection minimum quiet time, write_waveform_burst_detection_power_threshold, write waveform burst detection minimum burst time properties. + + **Default Value:** WriteWaveformBurstDetectionMode.AUTO + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +----------------------------------------+---------------------------------------------------------------------------------------------------+ + | Value | Description | + +========================================+===================================================================================================+ + | WriteWaveformBurstDetectionMode.AUTO | NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform. | + +----------------------------------------+---------------------------------------------------------------------------------------------------+ + | WriteWaveformBurstDetectionMode.MANUAL | User sets the burst detection parameters. | + +----------------------------------------+---------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + write_waveform_burst_detection_power_threshold = _attributes.AttributeViReal64(1150276) + '''Type: float + + Specifies the relative power level at which burst start or stop locations are detected. The threshold is relative to the peak power in the waveform. NI-RFSG detects burst start (or burst stop) locations when the signal exceeds (or falls below) the level specified by this property. This property is ignored when you disable the write_waveform_burst_detection property or when you set the write_waveform_burst_detection_mode property to NIRFSG_VAL_AUTO. + + **Units:** dB + + **Default Value:** 0 + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + write_waveform_normalization = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.WriteWaveformNormalization, 1150293) + '''Type: enums.WriteWaveformNormalization + + Specifies whether to perform the normalization on a waveform. + + **Default Value:** WriteWaveformNormalization.DISABLE + + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Defined Values**: + + +------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +====================================+=========================================================================================================================+ + | WriteWaveformNormalization.ENABLE | Enables normalization on a waveform to transform the waveform data so that its maximum is 1.00 and its minimum is -1.00 | + +------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + | WriteWaveformNormalization.DISABLE | Disables normalization on the waveform. | + +------------------------------------+-------------------------------------------------------------------------------------------------------------------------+ + + Note: You can not set write_waveform_normalization and power_level_type properties at the same time. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + yig_main_coil_drive = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.YigMainCoilDrive, 1150118) + '''Type: enums.YigMainCoilDrive + + Adjusts the dynamics of the current driving the YIG main coil. + + **Default Value:** YigMainCoilDrive.MANUAL + + **Supported Devices:** PXIe-5653 + + **Defined Values**: + + +-----------------------+--------------------------------------------------------+ + | Value | Description | + +=======================+========================================================+ + | NIRFSG_VAL_SLOW | Adjusts the YIG main coil for an underdamped response. | + +-----------------------+--------------------------------------------------------+ + | YigMainCoilDrive.FAST | Adjusts the YIG main coil for an overdamped response. | + +-----------------------+--------------------------------------------------------+ + + Note: Setting this property to YigMainCoilDrive.FAST on the PXIe-5653 allows the frequency to settle significantly faster for some frequency transitions at the expense of increased phase noise. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + ''' + + def __init__(self, repeated_capability_list, all_channels_in_session, interpreter, freeze_it=False): + self._repeated_capability_list = repeated_capability_list + self._repeated_capability = ','.join(repeated_capability_list) + self._all_channels_in_session = all_channels_in_session + self._interpreter = interpreter + + # Store the parameter list for later printing in __repr__ + param_list = [] + param_list.append("repeated_capability_list=" + pp.pformat(repeated_capability_list)) + param_list.append("interpreter=" + pp.pformat(interpreter)) + self._param_list = ', '.join(param_list) + + # Instantiate any repeated capability objects + self.markers = _RepeatedCapabilities(self, 'marker', repeated_capability_list) + self.script_triggers = _RepeatedCapabilities(self, 'scripttrigger', repeated_capability_list) + self.waveform = _RepeatedCapabilities(self, 'waveform::', repeated_capability_list) + self.deembedding_port = _RepeatedCapabilities(self, '', repeated_capability_list) + + # Finally, set _is_frozen to True which is used to prevent clients from accidentally adding + # members when trying to set a property with a typo. + self._is_frozen = freeze_it + + def __repr__(self): + return '{0}.{1}({2})'.format('nirfsg', self.__class__.__name__, self._param_list) + + def __setattr__(self, key, value): + if self._is_frozen and key not in dir(self): + raise AttributeError("'{0}' object has no attribute '{1}'".format(type(self).__name__, key)) + object.__setattr__(self, key, value) + + ''' These are code-generated ''' + + @ivi_synchronized + def check_attribute_vi_boolean(self, attribute, value): + r'''check_attribute_vi_boolean + + Checks the validity of a value you specify for a ViBoolean property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_boolean` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_boolean` + + Args: + attribute (int): Pass the ID of a property. + + value (bool): Pass the value that you want to verify as a valid value for the property. + + ''' + self._interpreter.check_attribute_vi_boolean(self._repeated_capability, attribute, value) + + @ivi_synchronized + def check_attribute_vi_int32(self, attribute, value): + r'''check_attribute_vi_int32 + + Checks the validity of a value you specify for a ViInt32 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_int32` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_int32` + + Args: + attribute (int): Pass the ID of a property. + + value (int): Pass the value that you want to verify as a valid value for the property. + + ''' + self._interpreter.check_attribute_vi_int32(self._repeated_capability, attribute, value) + + @ivi_synchronized + def check_attribute_vi_int64(self, attribute, value): + r'''check_attribute_vi_int64 + + Checks the validity of a value you specify for a ViInt64 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_int64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_int64` + + Args: + attribute (int): Pass the ID of a property. + + value (int): Pass the value that you want to verify as a valid value for the property. + + ''' + self._interpreter.check_attribute_vi_int64(self._repeated_capability, attribute, value) + + @ivi_synchronized + def check_attribute_vi_real64(self, attribute, value): + r'''check_attribute_vi_real64 + + Checks the validity of a value you specify for a ViReal64 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_real64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_real64` + + Args: + attribute (int): Pass the ID of a property. + + value (float): Pass the value that you want to verify as a valid value for the property. + + ''' + self._interpreter.check_attribute_vi_real64(self._repeated_capability, attribute, value) + + @ivi_synchronized + def check_attribute_vi_session(self, attribute): + r'''check_attribute_vi_session + + Checks the validity of a value you specify for a ViSession property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_session` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_session` + + Args: + attribute (int): Pass the ID of a property. + + ''' + self._interpreter.check_attribute_vi_session(self._repeated_capability, attribute) + + @ivi_synchronized + def check_attribute_vi_string(self, attribute, value): + r'''check_attribute_vi_string + + Checks the validity of a value you specify for a ViString property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].check_attribute_vi_string` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.check_attribute_vi_string` + + Args: + attribute (int): Pass the ID of a property. + + value (str): Pass the value that you want to verify as a valid value for the property. The value must be a NULL-terminated string. + + ''' + self._interpreter.check_attribute_vi_string(self._repeated_capability, attribute, value) + + def _error_message(self, error_code, error_message): + r'''_error_message + + Converts an error code returned by an NI-RFSG method into a user-readable string. + + Args: + error_code (int): Pass the status parameter that is returned from any NI-RFSG method. + + error_message (str): Returns the user-readable message string that corresponds to the status code you specify. + + ''' + self._interpreter.error_message(error_code, error_message) + + @ivi_synchronized + def _get_attribute_vi_boolean(self, attribute): + r'''_get_attribute_vi_boolean + + Queries the value of a ViBoolean property.Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_attribute_vi_boolean` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_attribute_vi_boolean` + + Args: + attribute (int): Pass the ID of a property. + + + Returns: + value (bool): Returns the current value of the property. Pass the address of a ViBoolean variable. + + ''' + value = self._interpreter.get_attribute_vi_boolean(self._repeated_capability, attribute) + return value + + @ivi_synchronized + def _get_attribute_vi_int32(self, attribute): + r'''_get_attribute_vi_int32 + + Queries the value of a ViInt32 property. Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_attribute_vi_int32` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_attribute_vi_int32` + + Args: + attribute (int): Pass the ID of a property. + + + Returns: + value (int): Returns the current value of the property. Pass the address of a ViInt32 variable. + + ''' + value = self._interpreter.get_attribute_vi_int32(self._repeated_capability, attribute) + return value + + @ivi_synchronized + def _get_attribute_vi_int64(self, attribute): + r'''_get_attribute_vi_int64 + + Queries the value of a ViInt64 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_attribute_vi_int64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_attribute_vi_int64` + + Args: + attribute (int): Pass the ID of a property. + + + Returns: + value (int): Returns the current value of the property. Pass the address of a ViInt64 variable. + + ''' + value = self._interpreter.get_attribute_vi_int64(self._repeated_capability, attribute) + return value + + @ivi_synchronized + def _get_attribute_vi_real64(self, attribute): + r'''_get_attribute_vi_real64 + + Queries the value of a ViReal64 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_attribute_vi_real64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_attribute_vi_real64` + + Args: + attribute (int): Pass the ID of a property. + + + Returns: + value (float): Returns the current value of the property. Pass the address of a ViReal64 variable. + + ''' + value = self._interpreter.get_attribute_vi_real64(self._repeated_capability, attribute) + return value + + @ivi_synchronized + def _get_attribute_vi_session(self, attribute): + r'''_get_attribute_vi_session + + Queries the value of a ViSession property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_attribute_vi_session` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_attribute_vi_session` + + Args: + attribute (int): Pass the ID of a property. + + + Returns: + value (int): Returns the current value of the property. Pass the address of a ViSession variable. + + ''' + value = self._interpreter.get_attribute_vi_session(self._repeated_capability, attribute) + return value + + @ivi_synchronized + def _get_attribute_vi_string(self, attribute, buf_size): + r'''_get_attribute_vi_string + + Queries the value of a ViString property.Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_attribute_vi_string` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_attribute_vi_string` + + Args: + attribute (int): Pass the ID of a property. + + buf_size (int): Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter. + + ''' + self._interpreter.get_attribute_vi_string(self._repeated_capability, attribute, buf_size) + + @ivi_synchronized + def _get_waveform_burst_start_locations(self, number_of_locations): + r'''_get_waveform_burst_start_locations + + Returns the burst start locations of the waveform stored in the NI-RFSG session. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_waveform_burst_start_locations` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_waveform_burst_start_locations` + + Args: + number_of_locations (int): Specifies the size of the burst start locations array. + + + Returns: + locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + required_size (int): Returns the required size for the output array if you pass NULL to LOCATIONS parameter. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + locations, required_size = self._interpreter.get_waveform_burst_start_locations(self._repeated_capability, number_of_locations) + return locations, required_size + + @ivi_synchronized + def _get_waveform_burst_stop_locations(self, number_of_locations): + r'''_get_waveform_burst_stop_locations + + Returns the burst stop locations of the waveform stored in the NI-RFSG session. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_waveform_burst_stop_locations` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_waveform_burst_stop_locations` + + Args: + number_of_locations (int): Specifies the size of the burst start locations array. + + + Returns: + locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + required_size (int): Returns the required size for the output array if you pass NULL to LOCATIONS parameter. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + locations, required_size = self._interpreter.get_waveform_burst_stop_locations(self._repeated_capability, number_of_locations) + return locations, required_size + + @ivi_synchronized + def _get_waveform_marker_event_locations(self, number_of_locations): + r'''_get_waveform_marker_event_locations + + Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._get_waveform_marker_event_locations` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._get_waveform_marker_event_locations` + + Args: + number_of_locations (int): Specifies the size of the locations array. + + + Returns: + locations (float): Returns the marker locations stored in the NI-RFSG database for the channel you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + required_size (int): Returns the required size for the output array if you pass NULL to **Locations** parameter. + + ''' + locations, required_size = self._interpreter.get_waveform_marker_event_locations(self._repeated_capability, number_of_locations) + return locations, required_size + + @ivi_synchronized + def load_configurations_from_file(self, file_path): + r'''load_configurations_from_file + + Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].load_configurations_from_file` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.load_configurations_from_file` + + Args: + file_path (str): Specifies the absolute path of the file from which the NI-RFSG loads the configurations. + + ''' + self._interpreter.load_configurations_from_file(self._repeated_capability, file_path) + + def lock(self): + '''lock + + Obtains a multithread lock on the device session. Before doing so, the + software waits until all other execution threads release their locks + on the device session. + + Other threads may have obtained a lock on this session for the + following reasons: + + - The application called the lock method. + - A call to NI-RFSG locked the session. + - After a call to the lock method returns + successfully, no other threads can access the device session until + you call the unlock method or exit out of the with block when using + lock context manager. + - Use the lock method and the + unlock method around a sequence of calls to + instrument driver methods if you require that the device retain its + settings through the end of the sequence. + + You can safely make nested calls to the lock method + within the same thread. To completely unlock the session, you must + balance each call to the lock method with a call to + the unlock method. + + Returns: + lock (context manager): When used in a with statement, nirfsg.Session.lock acts as + a context manager and unlock will be called when the with block is exited + ''' + self._interpreter.lock() # We do not call this in the context manager so that this function can + # act standalone as well and let the client call unlock() explicitly. If they do use the context manager, + # that will handle the unlock for them + return _Lock(self) + + @ivi_synchronized + def reset_attribute(self, attribute_id): + r'''reset_attribute + + Resets the property to its default value. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].reset_attribute` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.reset_attribute` + + Args: + attribute_id (int): Pass the ID of a property. + + ''' + self._interpreter.reset_attribute(self._repeated_capability, attribute_id) + + @ivi_synchronized + def save_configurations_to_file(self, file_path): + r'''save_configurations_to_file + + Saves the configurations of the session to the specified file. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].save_configurations_to_file` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.save_configurations_to_file` + + Args: + file_path (str): Specifies the absolute path of the file to which the NI-RFSG saves the configurations. + + ''' + self._interpreter.save_configurations_to_file(self._repeated_capability, file_path) + + @ivi_synchronized + def send_software_edge_trigger(self, trigger, trigger_identifier): + r'''send_software_edge_trigger + + Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger. + + Args: + trigger (int): Specifies the trigger to send. + + trigger_identifier (str): Specifies the Script Trigger to configure. This parameter is valid only when you set the TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the TRIGGER_IDENTIFIER parameter to '' (empty string). + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + ''' + self._interpreter.send_software_edge_trigger(trigger, trigger_identifier) + + @ivi_synchronized + def _set_attribute_vi_boolean(self, attribute, value): + r'''_set_attribute_vi_boolean + + Sets the value of a ViBoolean property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_attribute_vi_boolean` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_attribute_vi_boolean` + + Args: + attribute (int): Pass the ID of a property. + + value (bool): Pass the value to which you want to set the property. + + ''' + self._interpreter.set_attribute_vi_boolean(self._repeated_capability, attribute, value) + + @ivi_synchronized + def _set_attribute_vi_int32(self, attribute, value): + r'''_set_attribute_vi_int32 + + Sets the value of a ViInt32 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_attribute_vi_int32` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_attribute_vi_int32` + + Args: + attribute (int): Pass the ID of a property. + + value (int): Specifies the value to which you want to set the property. + + ''' + self._interpreter.set_attribute_vi_int32(self._repeated_capability, attribute, value) + + @ivi_synchronized + def _set_attribute_vi_int64(self, attribute, value): + r'''_set_attribute_vi_int64 + + Sets the value of a ViInt64 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_attribute_vi_int64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_attribute_vi_int64` + + Args: + attribute (int): Pass the ID of a property. + + value (int): Pass the value to which you want to set the property. + + ''' + self._interpreter.set_attribute_vi_int64(self._repeated_capability, attribute, value) + + @ivi_synchronized + def _set_attribute_vi_real64(self, attribute, value): + r'''_set_attribute_vi_real64 + + Sets the value of a ViReal64 property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_attribute_vi_real64` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_attribute_vi_real64` + + Args: + attribute (int): Pass the ID of a property. + + value (float): Pass the value to which you want to set the property. + + ''' + self._interpreter.set_attribute_vi_real64(self._repeated_capability, attribute, value) + + @ivi_synchronized + def _set_attribute_vi_session(self, attribute): + r'''_set_attribute_vi_session + + Sets the value of a ViSession property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_attribute_vi_session` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_attribute_vi_session` + + Args: + attribute (int): Pass the ID of a property. + + ''' + self._interpreter.set_attribute_vi_session(self._repeated_capability, attribute) + + @ivi_synchronized + def _set_attribute_vi_string(self, attribute, value): + r'''_set_attribute_vi_string + + Sets the value of a ViString property. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_attribute_vi_string` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_attribute_vi_string` + + Args: + attribute (int): Pass the ID of a property. + + value (str): Pass the value to which you want to set the property. + + ''' + self._interpreter.set_attribute_vi_string(self._repeated_capability, attribute, value) + + @ivi_synchronized + def _set_waveform_burst_start_locations(self, number_of_locations): + r'''_set_waveform_burst_start_locations + + Configures the start location of the burst in samples where the burst refers to the active portion of a waveform. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_waveform_burst_start_locations` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_waveform_burst_start_locations` + + Args: + number_of_locations (int): Specifies the size of the burst start locations array. + + + Returns: + locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + locations = self._interpreter.set_waveform_burst_start_locations(self._repeated_capability, number_of_locations) + return locations + + @ivi_synchronized + def _set_waveform_burst_stop_locations(self, number_of_locations): + r'''_set_waveform_burst_stop_locations + + Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_waveform_burst_stop_locations` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_waveform_burst_stop_locations` + + Args: + number_of_locations (int): Specifies the size of the burst stop locations array. + + + Returns: + locations (float): Specifies the burst stop locations, in samples, to store in the NI-RFSG session. + + ''' + locations = self._interpreter.set_waveform_burst_stop_locations(self._repeated_capability, number_of_locations) + return locations + + @ivi_synchronized + def _set_waveform_marker_event_locations(self, number_of_locations): + r'''_set_waveform_marker_event_locations + + Configures the marker locations associated with waveform and marker in the NI-RFSG session. + + Tip: + This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ]._set_waveform_marker_event_locations` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session._set_waveform_marker_event_locations` + + Args: + number_of_locations (int): Specifies the size of the locations array. + + + Returns: + locations (float): Specifies the marker location, in samples, to store in the NI-RFSG database. + + ''' + locations = self._interpreter.set_waveform_marker_event_locations(self._repeated_capability, number_of_locations) + return locations + + def unlock(self): + '''unlock + + Releases a lock that you acquired on an device session using + lock. Refer to lock for additional + information on session locks. + ''' + self._interpreter.unlock() + + +class Session(_SessionBase): + '''An NI-RFSG session to the RFSG driver''' + + def __init__(self, resource_name, id_query, reset_device, options={}): + r'''An NI-RFSG session to the RFSG driver + + Opens a session to the device you specify as the RESOURCE_NAME and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. This method also configures the device through the OPTION_STRING input. + + Note: For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + resource_name (str): Specifies the resource name of the device to initialize. + + id_query (bool): Specifies whether you want NI-RFSG to perform an ID query. + + reset_device (bool): Specifies whether you want to reset the NI-RFSG device during the initialization procedure. + + options (str): Specifies the initial value of certain properties for the session. The + syntax for **options** is a dictionary of properties with an assigned + value. For example: + + { 'simulate': False } + + You do not have to specify a value for all the properties. If you do not + specify a value for a property, the default value is used. + + Advanced Example: + { 'simulate': True, 'driver_setup': { 'Model': '', 'BoardType': '' } } + + +-------------------------+---------+ + | Property | Default | + +=========================+=========+ + | range_check | True | + +-------------------------+---------+ + | query_instrument_status | False | + +-------------------------+---------+ + | cache | True | + +-------------------------+---------+ + | simulate | False | + +-------------------------+---------+ + | record_value_coersions | False | + +-------------------------+---------+ + | driver_setup | {} | + +-------------------------+---------+ + + + Returns: + new_vi (int): Returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. + + ''' + interpreter = _library_interpreter.LibraryInterpreter(encoding='windows-1251') + + # Initialize the superclass with default values first, populate them later + super(Session, self).__init__( + repeated_capability_list=[], + interpreter=interpreter, + freeze_it=False, + all_channels_in_session=None + ) + + # Call specified init function + # Note that _interpreter default-initializes the session handle in its constructor, so that + # if _init_with_options fails, the error handler can reference it. + # And then here, once _init_with_options succeeds, we call set_session_handle + # with the actual session handle. + self._interpreter.set_session_handle(self._init_with_options(resource_name, id_query, reset_device, options)) + + self.tclk = nitclk.SessionReference(self._interpreter.get_session_handle()) + + # Store the parameter list for later printing in __repr__ + param_list = [] + param_list.append("resource_name=" + pp.pformat(resource_name)) + param_list.append("id_query=" + pp.pformat(id_query)) + param_list.append("reset_device=" + pp.pformat(reset_device)) + param_list.append("options=" + pp.pformat(options)) + self._param_list = ', '.join(param_list) + + # Store the list of channels in the Session which is needed by some nimi-python modules. + # Use try/except because not all the modules support channels. + # self.get_channel_names() and self.channel_count can only be called after the session + # handle is set + try: + self._all_channels_in_session = self.get_channel_names(range(self.channel_count)) + except AttributeError: + self._all_channels_in_session = None + + # Finally, set _is_frozen to True which is used to prevent clients from accidentally adding + # members when trying to set a property with a typo. + self._is_frozen = True + + def __enter__(self): + return self + + def __exit__(self, exc_type, exc_value, traceback): + self.close() + + def initiate(self): + '''initiate + + Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. + + Note: + This method will return a Python context manager that will initiate on entering and abort on exit. + ''' + return _Generation(self) + + def close(self): + '''close + + Aborts any signal generation in progress and destroys the instrument driver session. + + Note: After calling this method, you cannot use NI-RFSG again until you call the Init method or the __init__ method. + + Note: + One or more of the referenced methods are not in the Python API for this driver. + + Note: + This method is not needed when using the session context manager + ''' + try: + self._close() + except errors.DriverError: + self._interpreter.set_session_handle() + raise + self._interpreter.set_session_handle() + + ''' These are code-generated ''' + + @ivi_synchronized + def abort(self): + r'''abort + + Stops signal generation. + ''' + self._interpreter.abort() + + @ivi_synchronized + def allocate_arb_waveform(self, waveform_name, size_in_samples): + r'''allocate_arb_waveform + + Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the write_arb_waveform method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + + Args: + waveform_name (str): Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. + + size_in_samples (int): Specifies the number of samples to reserve in the onboard memory for the specified waveform. Each I/Q pair is considered one sample. + + ''' + self._interpreter.allocate_arb_waveform(waveform_name, size_in_samples) + + @ivi_synchronized + def change_external_calibration_password(self, old_password, new_password): + r'''change_external_calibration_password + + Changes the external calibration password of the device. + + Args: + old_password (str): Specifies the old (current) external calibration password. This password is case sensitive. + + new_password (str): Specifies the new (desired) external calibration password. + + ''' + self._interpreter.change_external_calibration_password(old_password, new_password) + + @ivi_synchronized + def check_generation_status(self): + r'''check_generation_status + + Checks the status of the generation. Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. + + Returns: + is_done (bool): Returns information about the completion of signal generation. + + ''' + is_done = self._interpreter.check_generation_status() + return is_done + + @ivi_synchronized + def check_if_configuration_list_exists(self, list_name): + r'''check_if_configuration_list_exists + + Returns whether the configuration list that you specify as LIST_NAME exists. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + list_name (str): Specifies the name of the configuration list. This string is case-insensitive. + + + Returns: + list_exists (bool): Returns True if the configuration list exists. + + ''' + list_exists = self._interpreter.check_if_configuration_list_exists(list_name) + return list_exists + + @ivi_synchronized + def check_if_script_exists(self, script_name): + r'''check_if_script_exists + + Returns whether the script that you specify as SCRIPT_NAME exists. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + script_name (str): Specifies the name of the script. This string is case-insensitive. + + + Returns: + script_exists (bool): Returns True if the script exists. + + ''' + script_exists = self._interpreter.check_if_script_exists(script_name) + return script_exists + + @ivi_synchronized + def check_if_waveform_exists(self, waveform_name): + r'''check_if_waveform_exists + + Returns whether the waveform that you specify as WAVEFORM_NAME exists. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + waveform_name (str): Specifies the name used to store the waveform. This string is case-insensitive. + + + Returns: + waveform_exists (bool): Returns True if the waveform exists. + + ''' + waveform_exists = self._interpreter.check_if_waveform_exists(waveform_name) + return waveform_exists + + @ivi_synchronized + def clear_all_arb_waveforms(self): + r'''clear_all_arb_waveforms + + Deletes all currently defined waveforms and scripts. The NI-RFSG device must be in the Configuration state before you call this method. + ''' + self._interpreter.clear_all_arb_waveforms() + + @ivi_synchronized + def _clear_arb_waveform(self, name): + r'''_clear_arb_waveform + + Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + + Args: + name (str): Name of the stored waveform to delete. + + ''' + self._interpreter.clear_arb_waveform(name) + + @ivi_synchronized + def clear_error(self): + r'''clear_error + + Clears the error information associated with the session. If you pass VI_NULL for the VI parameter, this method clears the error information for the current execution thread. + + Note: The _get_error method clears the error information after it is retrieved. A call to the clear_error method is necessary only when you do not use a call to the _get_error method to retrieve error information. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + ''' + self._interpreter.clear_error() + + @ivi_synchronized + def clear_self_calibrate_range(self): + r'''clear_self_calibrate_range + + Clears the data obtained from the self_calibrate_range method. + ''' + self._interpreter.clear_self_calibrate_range() + + @ivi_synchronized + def commit(self): + r'''commit + + Programs the device with the correct settings. Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. + ''' + self._interpreter.commit() + + @ivi_synchronized + def configure_deembedding_table_interpolation_linear(self, port, table_name, format): + r'''configure_deembedding_table_interpolation_linear + + Selects the linear interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + Args: + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + table_name (str): Specifies the name of the table. + + format (enums.Format): Specifies the format of parameters to interpolate. + + ''' + if type(format) is not enums.Format: + raise TypeError('Parameter format must be of type ' + str(enums.Format)) + self._interpreter.configure_deembedding_table_interpolation_linear(port, table_name, format) + + @ivi_synchronized + def configure_deembedding_table_interpolation_nearest(self, port, table_name): + r'''configure_deembedding_table_interpolation_nearest + + Selects the nearest interpolation method. NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. + + Args: + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + table_name (str): Specifies the name of the table. + + ''' + self._interpreter.configure_deembedding_table_interpolation_nearest(port, table_name) + + @ivi_synchronized + def configure_deembedding_table_interpolation_spline(self, port, table_name): + r'''configure_deembedding_table_interpolation_spline + + Selects the spline interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + Args: + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + table_name (str): Specifies the name of the table. + + ''' + self._interpreter.configure_deembedding_table_interpolation_spline(port, table_name) + + @ivi_synchronized + def configure_digital_edge_configuration_list_step_trigger(self, source, edge): + r'''configure_digital_edge_configuration_list_step_trigger + + Configures the Configuration List Step trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before you call this method. + + Args: + source (str): Specifies the trigger source terminal for the digital edge Configuration List Step trigger. NI-RFSG sets the digital_edge_configuration_list_step_trigger_source property to this value. Refer to this property for possible values. + + edge (int): Specifies the active edge for the digital edge Configuration List Step trigger. NI-RFSG sets the digital_edge_configuration_list_step_trigger_edge property to this value. + + ''' + self._interpreter.configure_digital_edge_configuration_list_step_trigger(source, edge) + + @ivi_synchronized + def configure_digital_edge_script_trigger(self, trigger_id, source, edge): + r'''configure_digital_edge_script_trigger + + Configures the specified Script Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + + Args: + trigger_id (str): Specifies the Script Trigger to configure. + + source (str): Specifies the source terminal for the digital edge Script Trigger. NI-RFSG sets the digital_edge_script_trigger_source property to this value. + + edge (int): Specifies the active edge for the digital edge Script Trigger. NI-RFSG sets the digital_edge_script_trigger_edge property to this value. + + ''' + self._interpreter.configure_digital_edge_script_trigger(trigger_id, source, edge) + + @ivi_synchronized + def configure_digital_edge_start_trigger(self, source, edge): + r'''configure_digital_edge_start_trigger + + Configures the Start Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + + Note: For the PXIe-5654/5654 with PXIe-5696, the Start Trigger is valid only with a timer-based list when RF list mode is enabled. + + Args: + source (str): Specifies the source terminal for the digital edge trigger. NI-RFSG sets the digital_edge_start_trigger_source property to this value. + + edge (int): Specifies the active edge for the Start Trigger. NI-RFSG sets the digital_edge_start_trigger_edge property to this value. + + ''' + self._interpreter.configure_digital_edge_start_trigger(source, edge) + + @ivi_synchronized + def configure_digital_level_script_trigger(self, trigger_id, source, level): + r'''configure_digital_level_script_trigger + + Configures a specified Script Trigger for digital level triggering. The NI-RFSG device must be in the Configuration state before calling this method. + + Args: + trigger_id (str): Specifies the Script Trigger to configure. + + source (str): Specifies the trigger source terminal for the digital level Script Trigger. NI-RFSG sets the digital_level_script_trigger_source property to this value. + + level (int): Specifies the active level for the digital level Script Trigger. NI-RFSG sets the digital_level_script_trigger_active_level property to this value. + + ''' + self._interpreter.configure_digital_level_script_trigger(trigger_id, source, level) + + @ivi_synchronized + def configure_digital_modulation_user_defined_waveform(self, number_of_samples, user_defined_waveform): + r'''configure_digital_modulation_user_defined_waveform + + Specifies the message signal used for digital modulation when the digital_modulation_waveform_type property is set to NIRFSG_VAL_USER_DEFINED. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + Args: + number_of_samples (int): Specifies the number of samples in the message signal. + + user_defined_waveform (list of int): Specifies the user-defined message signal used for digital modulation. + + ''' + self._interpreter.configure_digital_modulation_user_defined_waveform(number_of_samples, user_defined_waveform) + + @ivi_synchronized + def configure_generation_mode(self, generation_mode): + r'''configure_generation_mode + + Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. The NI-RFSG device must be in the Configuration state before you call this method. + + Args: + generation_mode (int): Specifies the mode used by NI-RFSG for generating an RF output signal. + + ''' + self._interpreter.configure_generation_mode(generation_mode) + + @ivi_synchronized + def configure_output_enabled(self, output_enabled): + r'''configure_output_enabled + + Enables or disables signal output. Setting output_enabled to False while in the Generation state attenuates the generated signal so that no signal is output. + + Args: + output_enabled (bool): Specifies whether you want to enable or disable the output. + + ''' + self._interpreter.configure_output_enabled(output_enabled) + + @ivi_synchronized + def configure_p2_p_endpoint_fullness_start_trigger(self, p2p_endpoint_fullness_level): + r'''configure_p2_p_endpoint_fullness_start_trigger + + Configures the Start Trigger to detect peer-to-peer endpoint fullness. Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the P2P_ENDPOINT_FULLNESS_LEVEL parameter. The NI-RFSG device must be in the Configuration state before calling this method. + + Note: Due to an additional internal FIFO in the RF signal generator, the writer peer actually writes 2,304 bytes more than the quantity of data specified by this method to satisfy the trigger level. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + p2p_endpoint_fullness_level (int): Specifies the quantity of data in the FIFO endpoint that asserts the trigger. Units are samples per channel. The default value is -1, which allows NI-RFSG to select the appropriate fullness value. + + ''' + self._interpreter.configure_p2_p_endpoint_fullness_start_trigger(p2p_endpoint_fullness_level) + + @ivi_synchronized + def configure_power_level_type(self, power_level_type): + r'''configure_power_level_type + + Specifies the way the driver interprets the power_level property. In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. + + Args: + power_level_type (int): Specifies the way the driver interprets the value of the power_level property. NI-RFSG sets the power_level_type property to this value. + + ''' + self._interpreter.configure_power_level_type(power_level_type) + + @ivi_synchronized + def configure_pxi_chassis_clk10(self, pxi_clk10_source): + r'''configure_pxi_chassis_clk10 + + Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. + + Args: + pxi_clk10_source (str): Specifies the source of the Reference Clock signal. + + ''' + self._interpreter.configure_pxi_chassis_clk10(pxi_clk10_source) + + @ivi_synchronized + def configure_rf(self, frequency, power_level): + r'''configure_rf + + Configures the frequency and power level of the RF output signal. The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. + + Args: + frequency (float): Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal. + + power_level (float): Specifies either the average power level or peak power level of the generated RF signal, depending on the power_level_type property. + + ''' + self._interpreter.configure_rf(frequency, power_level) + + @ivi_synchronized + def configure_ref_clock(self, ref_clock_source, ref_clock_rate): + r'''configure_ref_clock + + Configures the NI-RFSG device Reference Clock. The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. + + Args: + ref_clock_source (str): Specifies the source of Reference Clock signal. + + ref_clock_rate (float): Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is NIRFSG_VAL_AUTO, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the ref_clock_source parameter is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR or ReferenceClockSource.REF_IN_2. Refer to the ref_clock_rate property for possible values. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + ''' + self._interpreter.configure_ref_clock(ref_clock_source, ref_clock_rate) + + @ivi_synchronized + def configure_signal_bandwidth(self, signal_bandwidth): + r'''configure_signal_bandwidth + + Configures the signal bandwidth of the arbitrary waveform. The NI-RFSG device must be in the Configuration state before you call this method. Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband. + + Args: + signal_bandwidth (float): Specifies the signal bandwidth used by NI-RFSG to generate an RF output signal. NI-RFSG sets the signal_bandwidth property to this value. + + ''' + self._interpreter.configure_signal_bandwidth(signal_bandwidth) + + @ivi_synchronized + def configure_software_script_trigger(self, trigger_id): + r'''configure_software_script_trigger + + Configures the Script Trigger for software triggering. Refer to the send_software_edge_trigger method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. + + Args: + trigger_id (str): Specifies the Script Trigger to configure. + + ''' + self._interpreter.configure_software_script_trigger(trigger_id) + + @ivi_synchronized + def configure_software_start_trigger(self): + r'''configure_software_start_trigger + + Configures the Start Trigger for software triggering. Refer to the send_software_edge_trigger method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. + ''' + self._interpreter.configure_software_start_trigger() + + @ivi_synchronized + def create_configuration_list(self, list_name, configuration_list_attributes, set_as_active_list): + r'''create_configuration_list + + Creates an empty configuration list. Use the active_configuration_list property to enable a configuration list created by this method. Call the create_configuration_list_step method to add steps to the configuration list. + + Args: + list_name (str): Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. + + configuration_list_attributes (list of int): Specifies the properties that you intend to change between configuration list steps. Calling the create_configuration_list method allocates space for each of the configuration list properties. When you use an NI-RFSG Set property method to set one of the properties in the configuration list, that property is set for one of the configuration list steps. Use the active_configuration_list_step property to specify which configuration list step to configure. + + set_as_active_list (bool): Sets this list as the active_configuration_list property when this parameter is enabled. NI recommends that you set this parameter to True when creating the list. + + ''' + self._interpreter.create_configuration_list(list_name, configuration_list_attributes, set_as_active_list) + + @ivi_synchronized + def create_configuration_list_step(self, set_as_active_step): + r'''create_configuration_list_step + + Creates a new configuration list step in the configuration list specified by the active_configuration_list property. When you create a configuration list step, a new instance of each property specified by the configuration list properties is created. Configuration list properties are specified when a configuration list is created. The new instance of a property can be accessed with any Set property method using the active_configuration_list and active_configuration_list_step properties. + + Args: + set_as_active_step (bool): Sets this step as the active_configuration_list_step property list specified by the active_configuration_list property. NI recommends that you set this parameter to True when creating the list steps. + + ''' + self._interpreter.create_configuration_list_step(set_as_active_step) + + @ivi_synchronized + def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_file_path, sparameter_orientation): + r'''create_deembedding_sparameter_table_s2_p_file + + Creates an S-parameter de-embedding table for the port based on the specified S2P file. + + Args: + port (str): yet to be defined + + table_name (str): yet to be defined + + s2p_file_path (str): yet to be defined + + sparameter_orientation (int): yet to be defined + + ''' + self._interpreter.create_deembedding_sparameter_table_s2_p_file(port, table_name, s2p_file_path, sparameter_orientation) + + @ivi_synchronized + def delete_all_deembedding_tables(self): + r'''delete_all_deembedding_tables + + Deletes all configured de-embedding tables for the session. + ''' + self._interpreter.delete_all_deembedding_tables() + + @ivi_synchronized + def delete_configuration_list(self, list_name): + r'''delete_configuration_list + + Deletes a previously created configuration list and all the configuration list steps in the specified configuration list. When a configuration list step is deleted, all the instances of the properties associated with the configuration list step are also removed. When you delete the active configuration list, NI-RFSG automatically resets the active_configuration_list property to '' (empty string), which indicates no list is active, and the active_configuration_list_step property to 0. + + Args: + list_name (str): Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. + + ''' + self._interpreter.delete_configuration_list(list_name) + + @ivi_synchronized + def delete_deembedding_table(self, port, table_name): + r'''delete_deembedding_table + + Deletes the selected de-embedding table for a given port. + + Args: + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + + table_name (str): Specifies the name of the table. + + ''' + self._interpreter.delete_deembedding_table(port, table_name) + + @ivi_synchronized + def disable(self): + r'''disable + + Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected. + ''' + self._interpreter.disable() + + @ivi_synchronized + def disable_configuration_list_step_trigger(self): + r'''disable_configuration_list_step_trigger + + Configures the device not to receive triggers for the configuration list. The configuration list does not advance steps if this trigger is disabled. Call this method only if a previously configured trigger needs to be disabled. The NI-RFSG device must be in the Configuration state before you call this method. + ''' + self._interpreter.disable_configuration_list_step_trigger() + + @ivi_synchronized + def disable_script_trigger(self, trigger_id): + r'''disable_script_trigger + + Configures the device not to wait for the specified Script Trigger. Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. + + Args: + trigger_id (str): Specifies the Script trigger to configure. + + ''' + self._interpreter.disable_script_trigger(trigger_id) + + @ivi_synchronized + def disable_start_trigger(self): + r'''disable_start_trigger + + Configures the device not to wait for a Start Trigger. This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. + ''' + self._interpreter.disable_start_trigger() + + @ivi_synchronized + def error_query(self, error_message): + r'''error_query + + Reads an error code and an error message from the instrument error queue. + + Args: + error_message (str): Returns the error message string read from the instrument error message queue. + + + Returns: + error_code (int): Returns the error code read from the instrument error queue. + + ''' + error_code = self._interpreter.error_query(error_message) + return error_code + + @ivi_synchronized + def export_signal(self, signal, signal_identifier, output_terminal): + r'''export_signal + + Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this method. + + Args: + signal (int): Specifies the type of signal to route. + + signal_identifier (str): Specifies which instance of the selected signal to export. This parameter is useful when you set the SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the SIGNAL_IDENTIFIER parameter to '' (empty string). + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + output_terminal (str): Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841. + + ''' + self._interpreter.export_signal(signal, signal_identifier, output_terminal) + + @ivi_synchronized + def _get_all_named_waveform_names(self, buffer_size): + r'''_get_all_named_waveform_names + + Return names of the waveforms present in the memory. + + Args: + buffer_size (int): Pass the number of bytes in the ViChar buffer you specify for the WAVEFORM_NAMES parameter. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + + Returns: + actual_buffer_size (int): Fetch the number of bytes needed to pass in the BUFFER_SIZE parameter. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + actual_buffer_size = self._interpreter.get_all_named_waveform_names(buffer_size) + return actual_buffer_size + + @ivi_synchronized + def _get_all_script_names(self, buffer_size): + r'''_get_all_script_names + + Return names of the scripts present in the memory. + + Args: + buffer_size (int): Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter. + + + Returns: + actual_buffer_size (int): Fetch the number of bytes needed to pass in the BUFFER_SIZE parameter.It can be fetch by passing VI_NULL in the SCRIPT_NAMES parameter. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + actual_buffer_size = self._interpreter.get_all_script_names(buffer_size) + return actual_buffer_size + + @ivi_synchronized + def _get_channel_name(self, index, buffer_size): + r'''_get_channel_name + + Returns the channel string that is in the channel table at an index you specify. + + Args: + index (int): Specifies a one-based index into the channel table. + + buffer_size (int): Specifies the size of the buffer for the channel string. + + ''' + self._interpreter.get_channel_name(index, buffer_size) + + @ivi_synchronized + def _get_deembedding_sparameters(self, sparameters_array_size): + r'''_get_deembedding_sparameters + + Returns the S-parameters used for de-embedding a measurement on the selected port. This includes interpolation of the parameters based on the configured carrier frequency. This method returns an empty array if no de-embedding is done. + + Note: The port orientation for the returned S-parameters is normalized to SparameterOrientation.PORT1. + + Args: + sparameters_array_size (int): Specifies the size of the array that is returned by the SPARAMETERS output. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + + Returns: + sparameters (ni_complex_number): Returns an array of S-parameters. The S-parameters are returned in the following order: s11, s12, s21, s22. + + number_of_sparameters (int): Returns the number of S-parameters. + + number_of_ports (int): Returns the number of S-parameter ports. The **sparameter** array is always *n* x *n*, where span *n* is the number of ports. + + ''' + sparameters, number_of_sparameters, number_of_ports = self._interpreter.get_deembedding_sparameters(sparameters_array_size) + return sparameters, number_of_sparameters, number_of_ports + + @ivi_synchronized + def _get_external_calibration_last_date_and_time(self): + r'''_get_external_calibration_last_date_and_time + + Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. + + Returns: + year (int): Returns the year of the last successful calibration. + + month (int): Returns the month of the last successful calibration. + + day (int): Returns the day of the last successful calibration. + + hour (int): Returns the hour of the last successful calibration. + + minute (int): Returns the minute of the last successful calibration. + + second (int): Returns the second of the last successful calibration. + + ''' + year, month, day, hour, minute, second = self._interpreter.get_external_calibration_last_date_and_time() + return year, month, day, hour, minute, second + + @ivi_synchronized + def _get_max_settable_power(self): + r'''_get_max_settable_power + + Returns the maximum settable output power level for the current configuration. + + Returns: + value (float): Returns maximum settable power level in dBm. + + ''' + value = self._interpreter.get_max_settable_power() + return value + + @ivi_synchronized + def _get_self_calibration_date_and_time(self, module): + r'''_get_self_calibration_date_and_time + + Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. + + Args: + module (int): Specifies from which stand-alone module to retrieve the last successful self-calibration date and time. + + + Returns: + year (int): Returns the year of the last successful calibration. + + month (int): Returns the month of the last successful calibration. + + day (int): Returns the day of the last successful calibration. + + hour (int): Returns the hour of the last successful calibration. + + minute (int): Returns the minute of the last successful calibration. + + second (int): Returns the second of the last successful calibration. + + ''' + year, month, day, hour, minute, second = self._interpreter.get_self_calibration_date_and_time(module) + return year, month, day, hour, minute, second + + @ivi_synchronized + def _get_self_calibration_temperature(self, module): + r'''_get_self_calibration_temperature + + Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. + + Args: + module (int): Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. + + + Returns: + temperature (float): Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. + + ''' + temperature = self._interpreter.get_self_calibration_temperature(module) + return temperature + + @ivi_synchronized + def _get_stream_endpoint_handle(self, stream_endpoint): + r'''_get_stream_endpoint_handle + + Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint. + + Args: + stream_endpoint (str): Specifies the stream endpoint FIFO to configure. + + + Returns: + reader_handle (int): Returns the reader endpoint handle that is used with NI-P2P to create a stream with the NI-RFSG device as an endpoint. + + ''' + reader_handle = self._interpreter.get_stream_endpoint_handle(stream_endpoint) + return reader_handle + + @ivi_synchronized + def _get_terminal_name(self, signal, signal_identifier, buffer_size): + r'''_get_terminal_name + + Returns the fully-qualified name of the specified signal. The fully-qualified name is helpful to automatically route signals in a multisegment chassis. + + Args: + signal (int): Specifies the signal to query. + + signal_identifier (str): Specifies which instance of the selected signal to query. This parameter is necessary when you set the SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT . Otherwise, set the SIGNAL_IDENTIFIER parameter to '' (empty string). + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + buffer_size (int): Pass the number of bytes in the ViChar buffer you specify for the TERMINAL_NAME parameter. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + self._interpreter.get_terminal_name(signal, signal_identifier, buffer_size) + + def _init_with_options(self, resource_name, id_query, reset_device, option_string): + r'''_init_with_options + + Opens a session to the device you specify as the RESOURCE_NAME and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. This method also configures the device through the OPTION_STRING input. + + Note: For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + resource_name (str): Specifies the resource name of the device to initialize. + + id_query (bool): Specifies whether you want NI-RFSG to perform an ID query. + + reset_device (bool): Specifies whether you want to reset the NI-RFSG device during the initialization procedure. + + option_string (str): Specifies the initial value of certain properties for the session. The following table lists the properties and the name you pass in this parameter to identify the property. + + + Returns: + new_vi (int): Returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. + + ''' + new_vi = self._interpreter.init_with_options(resource_name, id_query, reset_device, option_string) + return new_vi + + @ivi_synchronized + def _initiate(self): + r'''_initiate + + Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. + ''' + self._interpreter.initiate() + + @ivi_synchronized + def perform_power_search(self): + r'''perform_power_search + + Performs a power search if the alc_control property is disabled. Calling this method disables modulation for a short time while the device levels the output signal. + + Note: Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search. + ''' + self._interpreter.perform_power_search() + + @ivi_synchronized + def perform_thermal_correction(self): + r'''perform_thermal_correction + + Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + ''' + self._interpreter.perform_thermal_correction() + + @ivi_synchronized + def query_arb_waveform_capabilities(self): + r'''query_arb_waveform_capabilities + + Queries and returns the waveform capabilities of the NI-RFSG device. These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. + + Returns: + max_number_waveforms (int): Returns the value of the arb_max_number_waveforms property. This value is the maximum number of waveforms you can write. + + waveform_quantum (int): Returns the value of the arb_waveform_quantum property. If the waveform quantum is *q*, then the size of the waveform that you write should be a multiple of *q*. The units are expressed in samples. + + min_waveform_size (int): Returns the value of the arb_waveform_size_min property. The number of samples of the waveform that you write must be greater than or equal to this value. + + max_waveform_size (int): Returns the value of the arb_waveform_size_max property. The number of samples of the waveform that you write must be less than or equal to this value. + + ''' + max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size = self._interpreter.query_arb_waveform_capabilities() + return max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size + + @ivi_synchronized + def read_and_download_waveform_from_file_tdms(self, waveform_name, file_path, waveform_index): + r'''read_and_download_waveform_from_file_tdms + + Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators. + + Args: + waveform_name (str): Specifies the name used to store the waveform. This string is case-insensitive. + + file_path (str): Specifies the absolute path to the TDMS file from which the NI-RFSG reads the waveforms. + + waveform_index (int): Specifies the index of the waveform to be read from the TDMS file. + + ''' + self._interpreter.read_and_download_waveform_from_file_tdms(waveform_name, file_path, waveform_index) + + @ivi_synchronized + def reset(self): + r'''reset + + Resets all properties to their default values and moves the NI-RFSG device to the Configuration state. This method aborts the generation, deletes all de-embedding tables, clears all routes, and resets session properties to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route. + + Note: This method resets all configured routes for the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 in NI-RFSA and NI-RFSG. + ''' + self._interpreter.reset() + + @ivi_synchronized + def reset_device(self): + r'''reset_device + + Performs a hard reset on the device. + + Note: You must call the reset_device method if the NI-RFSG device has shut down because of a high-temperature condition. + ''' + self._interpreter.reset_device() + + @ivi_synchronized + def reset_with_defaults(self): + r'''reset_with_defaults + + Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store. + ''' + self._interpreter.reset_with_defaults() + + @ivi_synchronized + def reset_with_options(self, steps_to_omit): + r'''reset_with_options + + Resets all properties to default values and specifies steps to omit during the reset process, such as signal routes. + + Args: + steps_to_omit (int): Specifies a list of steps to skip during the reset process. The default value is StepsToOmit.NONE, which specifies that no step is omitted during reset. + + ''' + self._interpreter.reset_with_options(steps_to_omit) + + @ivi_synchronized + def revision_query(self, instrument_driver_revision, firmware_revision): + r'''revision_query + + Returns the revision numbers of the NI-RFSG driver and the instrument firmware. + + Args: + instrument_driver_revision (str): Returns the value of the specific_driver_revision property in the form of a string. + + firmware_revision (str): Returns the value of the instrument_firmware_revision property in the form of a string. + + ''' + self._interpreter.revision_query(instrument_driver_revision, firmware_revision) + + @ivi_synchronized + def select_arb_waveform(self, name): + r'''select_arb_waveform + + Specifies the waveform that is generated upon a call to the _initiate method when the **generationMode** parameter of the configure_generation_mode method is set to GenerationMode.ARB_WAVEFORM. You must specify a waveform using the NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + name (str): Specifies the name of the stored waveform to generate. This is a case-insensitive alphanumeric string that does not use reserved words. NI-RFSG sets the arb_selected_waveform property to this value. + + ''' + self._interpreter.select_arb_waveform(name) + + @ivi_synchronized + def self_cal(self): + r'''self_cal + + Performs an internal self-calibration on the device and associated modules that support self-calibration. If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module. + + Note: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842/5860 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. + ''' + self._interpreter.self_cal() + + @ivi_synchronized + def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level): + r'''self_calibrate_range + + Self-calibrates all configurations within the specified frequency and peak power level limits. + + Note: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. + + Args: + steps_to_omit (int): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. + + min_frequency (float): Specifies the minimum frequency to calibrate. + + max_frequency (float): Specifies the maximum frequency to calibrate. + + min_power_level (float): Specifies the minimum power level to calibrate. + + max_power_level (float): Specifies the maximum power level to calibrate. + + ''' + self._interpreter.self_calibrate_range(steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) + + @ivi_synchronized + def self_test(self, self_test_message): + r'''self_test + + Performs a self-test on the NI-RFSG device and returns the test results. This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. + + Args: + self_test_message (str): Returns the self-test response string from the NI-RFSG device. For an explanation of the string contents, refer to the **status** parameter of this method. + + + Returns: + self_test_result (int): This parameter contains the value returned from the NI-RFSG device self test. + + ''' + self_test_result = self._interpreter.self_test(self_test_message) + return self_test_result + + @ivi_synchronized + def _set_arb_waveform_next_write_position(self, waveform_name, relative_to, offset): + r'''_set_arb_waveform_next_write_position + + Configures the start position to use for writing a waveform before calling the write_arb_waveform method. This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the allocate_arb_waveform method or the write_arb_waveform method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. + + Note: If you use this method to write the waveform that is currently generating, an undefined output may result. + + Args: + waveform_name (str): Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ + + relative_to (int): Specifies the reference position in the waveform. The position and OFFSET together determine where to start loading data into the waveform. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + offset (int): Specifies the offset from the **relative to** parameter at which to start loading the data into the waveform. + + ''' + self._interpreter.set_arb_waveform_next_write_position(waveform_name, relative_to, offset) + + @ivi_synchronized + def wait_until_settled(self, max_time_milliseconds): + r'''wait_until_settled + + Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. Call this method after making a dynamic change to wait for the output signal to settle. + + Args: + max_time_milliseconds (int): Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. + + ''' + self._interpreter.wait_until_settled(max_time_milliseconds) + + @ivi_synchronized + def write_arb_waveform(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): + r'''write_arb_waveform + + Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex baseband signal. If the waveform to write is already allocated using the allocate_arb_waveform method, the MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. + + Note: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + waveform_name (str): Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. + + number_of_samples (int): Specifies the number of samples in both the I_DATA and Q_DATA arrays. The I_DATA and Q_DATA arrays must have the same length. If the arb_waveform_quantum property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + i_data (array.array("d")): Specifies the in-phase (I) component of the complex baseband signal. + + q_data (array.array("d")): Specifies the quadrature (Q) component of the complex baseband signal. + + more_data_pending (bool): Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set MORE_DATA_PENDING to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + if q_data is not None and len(q_data) != len(i_data): # case S160 + raise ValueError("Length of q_data and i_data parameters do not match.") # case S160 + self._interpreter.write_arb_waveform(waveform_name, number_of_samples, i_data, q_data, more_data_pending) + + @ivi_synchronized + def write_arb_waveform_f32(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): + r'''write_arb_waveform_f32 + + Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex single baseband signal. If the waveform to write is already allocated using the allocate_arb_waveform method, the MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E or PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. + + Note: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + Args: + waveform_name (str): Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. + + number_of_samples (int): Specifies the number of samples in both the I_DATA and Q_DATA arrays. The I_DATA and Q_DATA arrays must have the same length. If the arb_waveform_quantum property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + i_data (array.array("f")): Specifies the in-phase (I) component of the complex baseband signal. + + q_data (array.array("f")): Specifies the quadrature (Q) component of the complex baseband signal. + + more_data_pending (bool): Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set MORE_DATA_PENDING to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. + + Note: + One or more of the referenced properties are not in the Python API for this driver. + + ''' + if q_data is not None and len(q_data) != len(i_data): # case S160 + raise ValueError("Length of q_data and i_data parameters do not match.") # case S160 + self._interpreter.write_arb_waveform_f32(waveform_name, number_of_samples, i_data, q_data, more_data_pending) + + @ivi_synchronized + def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_data): + r'''write_p2_p_endpoint_i16 + + Writes an array of 16-bit integer data to the peer-to-peer endpoint. Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. + + Args: + stream_endpoint (str): Specifies the stream endpoint FIFO to configure. + + number_of_samples (int): Specifies the number of samples to write into the endpoint FIFO. + + endpoint_data (list of int): Specifies the array of data to write into the endpoint FIFO. The binary data is left-justified. + + ''' + self._interpreter.write_p2_p_endpoint_i16(stream_endpoint, number_of_samples, endpoint_data) + + @ivi_synchronized + def write_script(self, script): + r'''write_script + + Writes a script to the device to control waveform generation in Script mode. First, configure your device for Script mode by calling the configure_generation_mode method. The NI-RFSG device must be in the Configuration state before calling the write_script method. + + Note: If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported. + + Args: + script (str): Specifies a string containing a syntactically correct script. NI-RFSG supports multiple scripts that are selected with the selected_script property. Refer to `Scripting Instructions `_ for more information about using scripts. + + ''' + self._interpreter.write_script(script) + + def _close(self): + r'''_close + + Aborts any signal generation in progress and destroys the instrument driver session. + + Note: After calling this method, you cannot use NI-RFSG again until you call the Init method or the __init__ method. + + Note: + One or more of the referenced methods are not in the Python API for this driver. + ''' + self._interpreter.close() + + @ivi_synchronized + def self_test(self): + '''self_test + + TBD + ''' + code, msg = self._self_test() + if code: + raise errors.SelfTestError(code, msg) + return None diff --git a/generated/nirfsg/nirfsg/unit_tests/_matchers.py b/generated/nirfsg/nirfsg/unit_tests/_matchers.py new file mode 100644 index 0000000000..4a8ac9681e --- /dev/null +++ b/generated/nirfsg/nirfsg/unit_tests/_matchers.py @@ -0,0 +1,317 @@ +# -*- coding: utf-8 -*- +# This file was generated +'''Matcher classes used by unit tests in order to set mock expectations. +These work well with our visatype definitions. +''' + +import ctypes +import nirfsg._visatype as _visatype +import pprint + +pp = pprint.PrettyPrinter(indent=4) + + +# Base classes + + +class _ScalarMatcher(object): + def __init__(self, expected_type, expected_value): + self.expected_type = expected_type + self.expected_value = expected_value + + def __eq__(self, other): + if not isinstance(other, self.expected_type): + print("{}: Unexpected type. Expected: {}. Received: {}".format(self.__class__.__name__, self.expected_type, type(other))) + return False + if other.value != self.expected_value: + print("{}: Unexpected value. Expected: {}. Received: {}".format(self.__class__.__name__, self.expected_value, other.value)) + return False + return True + + def __repr__(self): + return '{}({}, {})'.format(self.__class__.__name__, pp.pformat(self.expected_type), pp.pformat(self.expected_value)) + + +class _PointerMatcher(object): + def __init__(self, expected_type): + self.expected_type = expected_type + + def __eq__(self, other): + if not isinstance(other, ctypes.POINTER(self.expected_type)): + print("Unexpected type. Expected: {}. Received: {}".format(ctypes.POINTER(self.expected_type), type(other))) + return False + return True + + def __repr__(self): + return '{}({})'.format(self.__class__.__name__, pp.pformat(self.expected_type)) + + +class _BufferMatcher(object): + def __init__(self, expected_element_type, expected_size_or_value): + if isinstance(expected_size_or_value, int): + # Were given the size of the buffer + self.expected_value = None + self.expected_size = expected_size_or_value + else: + # Were given a list or something that behaves like a list + self.expected_value = expected_size_or_value + self.expected_size = len(expected_size_or_value) + self.expected_type = expected_element_type * self.expected_size + # Store params for __repr__ + self._expected_element_type = expected_element_type + self._expected_size_or_value = expected_size_or_value + + def __eq__(self, other): + if not isinstance(other, self.expected_type): + # We try to "dereference" this in case it is a pointer and then do the check again. Only then saying they don't match + try: + other = other.contents + except AttributeError: + pass + + # Because of object lifetimes, we may need to mock the other instance and provide lists instead of the actual array + if not isinstance(other, self.expected_type) and not isinstance(other, list): + print("Unexpected type. Expected: {} or {}. Received: {}".format(self.expected_type, list, type(other))) + return False + if self.expected_size != len(other): + print("Unexpected length. Expected: {}. Received: {}".format(self.expected_size, len(other))) + return False + if self.expected_value is not None: + # Can't compare the objects directly because they're different types (one is list, another is ctypes array). + # Go element by element, which allows for reporting the first index where different values were found. + for i in range(0, len(self.expected_value)): + if self.expected_value[i] != other[i]: + print("Unexpected value at index {}. Expected: {}. Received: {}".format(i, self.expected_value[i], other[i])) + return False + return True + + def __repr__(self): + return '{}({}, {})'.format(self.__class__.__name__, pp.pformat(self._expected_element_type), pp.pformat(self._expected_size_or_value)) + + def __str__(self): + ret_str = self.__repr__() + '\n' + ret_str += ' expected_type = ' + str(self.expected_type) + '\n' + ret_str += ' expected_value = ' + str(self.expected_value) + '\n' + ret_str += ' expected_size = ' + str(self.expected_size) + '\n' + return ret_str + + +# Strings + + +class ViStringMatcher(object): + def __init__(self, expected_string_value): + self.expected_string_value = expected_string_value + + def __eq__(self, other): + if not isinstance(other, ctypes.Array): + # We try to "dereference" this in case it is a pointer and then do the check again. Only then saying they don't match + try: + other = other.contents + except AttributeError: + pass + + if not isinstance(other, ctypes.Array): + print("Unexpected type. Expected: {}. Received: {}".format(self.expected_type, type(other))) + return False + if len(other) < len(self.expected_string_value) + 1: # +1 for NULL terminating character + print("Unexpected length in C string. Expected at least: {}. Received {}".format(len(other), len(self.expected_string_value) + 1)) + return False + if not isinstance(other[0], bytes): + print("Unexpected type. Not a string. Received: {}".format(type(other[0]))) + return False + if other.value.decode("ascii") != self.expected_string_value: + print("Unexpected value. Expected {}. Received: {}".format(self.expected_string_value, other.value.decode)) + return False + return True + + def __repr__(self): + return '{}({})'.format(self.__class__.__name__, pp.pformat(self.expected_string_value)) + + +# Custom Type + + +def _compare_ctype_structs(expected, actual): + # From https://stackoverflow.com/questions/20986330/print-all-fields-of-ctypes-structure-with-introspection + for field in expected._fields_: + field_name = field[0] + expected_val = getattr(expected, field_name) + actual_val = getattr(actual, field_name) + if expected_val != actual_val: + print("Unexpected value field {}. Expected: {}. Received: {}".format(field_name, expected_val, actual_val)) + return False + return True + + +class CustomTypeMatcher(object): + def __init__(self, expected_type, expected_value): + self.expected_type = expected_type + self.expected_value = expected_value + + def __eq__(self, actual): + if not isinstance(actual, self.expected_type): + print("Unexpected type. Expected: {}. Received: {}".format(self.expected_type, type(actual))) + return False + return _compare_ctype_structs(self.expected_value, actual) + + def __repr__(self): + return '{}({}, {})'.format(self.__class__.__name__, pp.pformat(self.expected_type), pp.pformat(self.expected_value)) + + +class CustomTypeBufferMatcher(object): + def __init__(self, expected_element_type, expected_value): + self.expected_value = expected_value + self.expected_size = len(expected_value) + self.expected_type = expected_element_type * self.expected_size + self.expected_element_type = expected_element_type + + def __eq__(self, actual): + if not isinstance(actual, self.expected_type): + print("Unexpected array type. Expected: {}. Received: {}".format(self.expected_type, type(actual))) + return False + if self.expected_size != len(actual): + print("Unexpected length. Expected: {}. Received: {}".format(self.expected_size, len(actual))) + return False + if self.expected_value is not None: + # Can't compare the objects directly because they're different types (one is list, another is ctypes array). + # Go element by element, which allows for reporting the first index where different values were found. + for a, e in zip(actual, self.expected_value): + if not isinstance(a, self.expected_element_type): + print("Unexpected type. Expected: {}. Received: {}".format(self.expected_element_type, type(a))) + return False + if not _compare_ctype_structs(e, a): + return False + return True + + def __repr__(self): + expected_val_repr = '[' + ', '.join([x.__repr__() for x in self.expected_value]) + ']' + return '{}({}, {})'.format(self.__class__.__name__, pp.pformat(self.expected_element_type), expected_val_repr) + + def __str__(self): + ret_str = self.__repr__() + '\n' + ret_str += ' expected_type = ' + str(self.expected_type) + '\n' + ret_str += ' expected_size = ' + str(self.expected_size) + '\n' + return ret_str + + +# Scalars + + +class ViBooleanMatcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViBoolean, 1 if expected_value is True else 0) + + +class ViSessionMatcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViSession, expected_value) + + +class ViInt16Matcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViInt16, expected_value) + + +class ViInt32Matcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViInt32, expected_value) + + +class ViUInt32Matcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViUInt32, expected_value) + + +class ViAttrMatcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViAttr, expected_value) + + +class ViInt64Matcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViInt64, expected_value) + + +class ViReal64Matcher(_ScalarMatcher): + def __init__(self, expected_value): + _ScalarMatcher.__init__(self, _visatype.ViReal64, expected_value) + + +# Pointers + + +class ViBooleanPointerMatcher(_PointerMatcher): + def __init__(self): + _PointerMatcher.__init__(self, _visatype.ViBoolean) + + +class ViSessionPointerMatcher(_PointerMatcher): + def __init__(self): + _PointerMatcher.__init__(self, _visatype.ViSession) + + +class ViInt16PointerMatcher(_PointerMatcher): + def __init__(self): + _PointerMatcher.__init__(self, _visatype.ViInt16) + + +class ViInt32PointerMatcher(_PointerMatcher): + def __init__(self): + _PointerMatcher.__init__(self, _visatype.ViInt32) + + +class ViInt64PointerMatcher(_PointerMatcher): + def __init__(self): + _PointerMatcher.__init__(self, _visatype.ViInt64) + + +class ViReal64PointerMatcher(_PointerMatcher): + def __init__(self): + _PointerMatcher.__init__(self, _visatype.ViReal64) + + +# Buffers + + +class ViBooleanBufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViBoolean, expected_size_or_value) + + +class ViCharBufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViChar, expected_size_or_value) + + +class ViInt8BufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViInt8, expected_size_or_value) + + +class ViInt16BufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViInt16, expected_size_or_value) + + +class ViInt32BufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViInt32, expected_size_or_value) + + +class ViInt64BufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViInt64, expected_size_or_value) + + +class ViReal64BufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViReal64, expected_size_or_value) + + +class ViSessionBufferMatcher(_BufferMatcher): + def __init__(self, expected_size_or_value): + _BufferMatcher.__init__(self, _visatype.ViSession, expected_size_or_value) + + + diff --git a/generated/nirfsg/nirfsg/unit_tests/_mock_helper.py b/generated/nirfsg/nirfsg/unit_tests/_mock_helper.py new file mode 100644 index 0000000000..a5b14d7b2e --- /dev/null +++ b/generated/nirfsg/nirfsg/unit_tests/_mock_helper.py @@ -0,0 +1,1276 @@ +# -*- coding: utf-8 -*- +# This file was generated +import sys # noqa: F401 - Not all mock_helpers will need this + + +class MockFunctionCallError(Exception): + def __init__(self, function, param=None): + self.function = function + self.param = param + msg = "{0} called without setting side_effect".format(self.function) + if param is not None: + msg += " or setting the {0} parameter return value".format(self.param) + super(Exception, self).__init__(msg) + + +class SideEffectsHelper(object): + def __init__(self): + self._defaults = {} + self._defaults['Abort'] = {} + self._defaults['Abort']['return'] = 0 + self._defaults['AllocateArbWaveform'] = {} + self._defaults['AllocateArbWaveform']['return'] = 0 + self._defaults['ChangeExternalCalibrationPassword'] = {} + self._defaults['ChangeExternalCalibrationPassword']['return'] = 0 + self._defaults['CheckAttributeViBoolean'] = {} + self._defaults['CheckAttributeViBoolean']['return'] = 0 + self._defaults['CheckAttributeViInt32'] = {} + self._defaults['CheckAttributeViInt32']['return'] = 0 + self._defaults['CheckAttributeViInt64'] = {} + self._defaults['CheckAttributeViInt64']['return'] = 0 + self._defaults['CheckAttributeViReal64'] = {} + self._defaults['CheckAttributeViReal64']['return'] = 0 + self._defaults['CheckAttributeViSession'] = {} + self._defaults['CheckAttributeViSession']['return'] = 0 + self._defaults['CheckAttributeViString'] = {} + self._defaults['CheckAttributeViString']['return'] = 0 + self._defaults['CheckGenerationStatus'] = {} + self._defaults['CheckGenerationStatus']['return'] = 0 + self._defaults['CheckGenerationStatus']['isDone'] = None + self._defaults['CheckIfConfigurationListExists'] = {} + self._defaults['CheckIfConfigurationListExists']['return'] = 0 + self._defaults['CheckIfConfigurationListExists']['listExists'] = None + self._defaults['CheckIfScriptExists'] = {} + self._defaults['CheckIfScriptExists']['return'] = 0 + self._defaults['CheckIfScriptExists']['scriptExists'] = None + self._defaults['CheckIfWaveformExists'] = {} + self._defaults['CheckIfWaveformExists']['return'] = 0 + self._defaults['CheckIfWaveformExists']['waveformExists'] = None + self._defaults['ClearAllArbWaveforms'] = {} + self._defaults['ClearAllArbWaveforms']['return'] = 0 + self._defaults['ClearArbWaveform'] = {} + self._defaults['ClearArbWaveform']['return'] = 0 + self._defaults['ClearError'] = {} + self._defaults['ClearError']['return'] = 0 + self._defaults['ClearSelfCalibrateRange'] = {} + self._defaults['ClearSelfCalibrateRange']['return'] = 0 + self._defaults['Commit'] = {} + self._defaults['Commit']['return'] = 0 + self._defaults['ConfigureDeembeddingTableInterpolationLinear'] = {} + self._defaults['ConfigureDeembeddingTableInterpolationLinear']['return'] = 0 + self._defaults['ConfigureDeembeddingTableInterpolationNearest'] = {} + self._defaults['ConfigureDeembeddingTableInterpolationNearest']['return'] = 0 + self._defaults['ConfigureDeembeddingTableInterpolationSpline'] = {} + self._defaults['ConfigureDeembeddingTableInterpolationSpline']['return'] = 0 + self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger'] = {} + self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] = 0 + self._defaults['ConfigureDigitalEdgeScriptTrigger'] = {} + self._defaults['ConfigureDigitalEdgeScriptTrigger']['return'] = 0 + self._defaults['ConfigureDigitalEdgeStartTrigger'] = {} + self._defaults['ConfigureDigitalEdgeStartTrigger']['return'] = 0 + self._defaults['ConfigureDigitalLevelScriptTrigger'] = {} + self._defaults['ConfigureDigitalLevelScriptTrigger']['return'] = 0 + self._defaults['ConfigureDigitalModulationUserDefinedWaveform'] = {} + self._defaults['ConfigureDigitalModulationUserDefinedWaveform']['return'] = 0 + self._defaults['ConfigureGenerationMode'] = {} + self._defaults['ConfigureGenerationMode']['return'] = 0 + self._defaults['ConfigureOutputEnabled'] = {} + self._defaults['ConfigureOutputEnabled']['return'] = 0 + self._defaults['ConfigureP2PEndpointFullnessStartTrigger'] = {} + self._defaults['ConfigureP2PEndpointFullnessStartTrigger']['return'] = 0 + self._defaults['ConfigurePowerLevelType'] = {} + self._defaults['ConfigurePowerLevelType']['return'] = 0 + self._defaults['ConfigurePxiChassisClk10'] = {} + self._defaults['ConfigurePxiChassisClk10']['return'] = 0 + self._defaults['ConfigureRF'] = {} + self._defaults['ConfigureRF']['return'] = 0 + self._defaults['ConfigureRefClock'] = {} + self._defaults['ConfigureRefClock']['return'] = 0 + self._defaults['ConfigureSignalBandwidth'] = {} + self._defaults['ConfigureSignalBandwidth']['return'] = 0 + self._defaults['ConfigureSoftwareScriptTrigger'] = {} + self._defaults['ConfigureSoftwareScriptTrigger']['return'] = 0 + self._defaults['ConfigureSoftwareStartTrigger'] = {} + self._defaults['ConfigureSoftwareStartTrigger']['return'] = 0 + self._defaults['CreateConfigurationList'] = {} + self._defaults['CreateConfigurationList']['return'] = 0 + self._defaults['CreateConfigurationListStep'] = {} + self._defaults['CreateConfigurationListStep']['return'] = 0 + self._defaults['CreateDeembeddingSparameterTableS2PFile'] = {} + self._defaults['CreateDeembeddingSparameterTableS2PFile']['return'] = 0 + self._defaults['DeleteAllDeembeddingTables'] = {} + self._defaults['DeleteAllDeembeddingTables']['return'] = 0 + self._defaults['DeleteConfigurationList'] = {} + self._defaults['DeleteConfigurationList']['return'] = 0 + self._defaults['DeleteDeembeddingTable'] = {} + self._defaults['DeleteDeembeddingTable']['return'] = 0 + self._defaults['Disable'] = {} + self._defaults['Disable']['return'] = 0 + self._defaults['DisableConfigurationListStepTrigger'] = {} + self._defaults['DisableConfigurationListStepTrigger']['return'] = 0 + self._defaults['DisableScriptTrigger'] = {} + self._defaults['DisableScriptTrigger']['return'] = 0 + self._defaults['DisableStartTrigger'] = {} + self._defaults['DisableStartTrigger']['return'] = 0 + self._defaults['ErrorMessage'] = {} + self._defaults['ErrorMessage']['return'] = 0 + self._defaults['ErrorQuery'] = {} + self._defaults['ErrorQuery']['return'] = 0 + self._defaults['ErrorQuery']['errorCode'] = None + self._defaults['ExportSignal'] = {} + self._defaults['ExportSignal']['return'] = 0 + self._defaults['GetAllNamedWaveformNames'] = {} + self._defaults['GetAllNamedWaveformNames']['return'] = 0 + self._defaults['GetAllNamedWaveformNames']['actualBufferSize'] = None + self._defaults['GetAllScriptNames'] = {} + self._defaults['GetAllScriptNames']['return'] = 0 + self._defaults['GetAllScriptNames']['actualBufferSize'] = None + self._defaults['GetAttributeViBoolean'] = {} + self._defaults['GetAttributeViBoolean']['return'] = 0 + self._defaults['GetAttributeViBoolean']['value'] = None + self._defaults['GetAttributeViInt32'] = {} + self._defaults['GetAttributeViInt32']['return'] = 0 + self._defaults['GetAttributeViInt32']['value'] = None + self._defaults['GetAttributeViInt64'] = {} + self._defaults['GetAttributeViInt64']['return'] = 0 + self._defaults['GetAttributeViInt64']['value'] = None + self._defaults['GetAttributeViReal64'] = {} + self._defaults['GetAttributeViReal64']['return'] = 0 + self._defaults['GetAttributeViReal64']['value'] = None + self._defaults['GetAttributeViSession'] = {} + self._defaults['GetAttributeViSession']['return'] = 0 + self._defaults['GetAttributeViSession']['value'] = None + self._defaults['GetAttributeViString'] = {} + self._defaults['GetAttributeViString']['return'] = 0 + self._defaults['GetChannelName'] = {} + self._defaults['GetChannelName']['return'] = 0 + self._defaults['GetDeembeddingSparameters'] = {} + self._defaults['GetDeembeddingSparameters']['return'] = 0 + self._defaults['GetDeembeddingSparameters']['sparameters'] = None + self._defaults['GetDeembeddingSparameters']['numberOfSparameters'] = None + self._defaults['GetDeembeddingSparameters']['numberOfPorts'] = None + self._defaults['GetError'] = {} + self._defaults['GetError']['return'] = 0 + self._defaults['GetError']['errorCode'] = None + self._defaults['GetError']['errorDescription'] = None + self._defaults['GetExternalCalibrationLastDateAndTime'] = {} + self._defaults['GetExternalCalibrationLastDateAndTime']['return'] = 0 + self._defaults['GetExternalCalibrationLastDateAndTime']['year'] = None + self._defaults['GetExternalCalibrationLastDateAndTime']['month'] = None + self._defaults['GetExternalCalibrationLastDateAndTime']['day'] = None + self._defaults['GetExternalCalibrationLastDateAndTime']['hour'] = None + self._defaults['GetExternalCalibrationLastDateAndTime']['minute'] = None + self._defaults['GetExternalCalibrationLastDateAndTime']['second'] = None + self._defaults['GetMaxSettablePower'] = {} + self._defaults['GetMaxSettablePower']['return'] = 0 + self._defaults['GetMaxSettablePower']['value'] = None + self._defaults['GetSelfCalibrationDateAndTime'] = {} + self._defaults['GetSelfCalibrationDateAndTime']['return'] = 0 + self._defaults['GetSelfCalibrationDateAndTime']['year'] = None + self._defaults['GetSelfCalibrationDateAndTime']['month'] = None + self._defaults['GetSelfCalibrationDateAndTime']['day'] = None + self._defaults['GetSelfCalibrationDateAndTime']['hour'] = None + self._defaults['GetSelfCalibrationDateAndTime']['minute'] = None + self._defaults['GetSelfCalibrationDateAndTime']['second'] = None + self._defaults['GetSelfCalibrationTemperature'] = {} + self._defaults['GetSelfCalibrationTemperature']['return'] = 0 + self._defaults['GetSelfCalibrationTemperature']['temperature'] = None + self._defaults['GetStreamEndpointHandle'] = {} + self._defaults['GetStreamEndpointHandle']['return'] = 0 + self._defaults['GetStreamEndpointHandle']['readerHandle'] = None + self._defaults['GetTerminalName'] = {} + self._defaults['GetTerminalName']['return'] = 0 + self._defaults['GetWaveformBurstStartLocations'] = {} + self._defaults['GetWaveformBurstStartLocations']['return'] = 0 + self._defaults['GetWaveformBurstStartLocations']['locations'] = None + self._defaults['GetWaveformBurstStartLocations']['requiredSize'] = None + self._defaults['GetWaveformBurstStopLocations'] = {} + self._defaults['GetWaveformBurstStopLocations']['return'] = 0 + self._defaults['GetWaveformBurstStopLocations']['locations'] = None + self._defaults['GetWaveformBurstStopLocations']['requiredSize'] = None + self._defaults['GetWaveformMarkerEventLocations'] = {} + self._defaults['GetWaveformMarkerEventLocations']['return'] = 0 + self._defaults['GetWaveformMarkerEventLocations']['locations'] = None + self._defaults['GetWaveformMarkerEventLocations']['requiredSize'] = None + self._defaults['InitWithOptions'] = {} + self._defaults['InitWithOptions']['return'] = 0 + self._defaults['InitWithOptions']['newVi'] = None + self._defaults['Initiate'] = {} + self._defaults['Initiate']['return'] = 0 + self._defaults['LoadConfigurationsFromFile'] = {} + self._defaults['LoadConfigurationsFromFile']['return'] = 0 + self._defaults['LockSession'] = {} + self._defaults['LockSession']['return'] = 0 + self._defaults['LockSession']['callerHasLock'] = None + self._defaults['PerformPowerSearch'] = {} + self._defaults['PerformPowerSearch']['return'] = 0 + self._defaults['PerformThermalCorrection'] = {} + self._defaults['PerformThermalCorrection']['return'] = 0 + self._defaults['QueryArbWaveformCapabilities'] = {} + self._defaults['QueryArbWaveformCapabilities']['return'] = 0 + self._defaults['QueryArbWaveformCapabilities']['maxNumberWaveforms'] = None + self._defaults['QueryArbWaveformCapabilities']['waveformQuantum'] = None + self._defaults['QueryArbWaveformCapabilities']['minWaveformSize'] = None + self._defaults['QueryArbWaveformCapabilities']['maxWaveformSize'] = None + self._defaults['ReadAndDownloadWaveformFromFileTDMS'] = {} + self._defaults['ReadAndDownloadWaveformFromFileTDMS']['return'] = 0 + self._defaults['Reset'] = {} + self._defaults['Reset']['return'] = 0 + self._defaults['ResetAttribute'] = {} + self._defaults['ResetAttribute']['return'] = 0 + self._defaults['ResetDevice'] = {} + self._defaults['ResetDevice']['return'] = 0 + self._defaults['ResetWithDefaults'] = {} + self._defaults['ResetWithDefaults']['return'] = 0 + self._defaults['ResetWithOptions'] = {} + self._defaults['ResetWithOptions']['return'] = 0 + self._defaults['RevisionQuery'] = {} + self._defaults['RevisionQuery']['return'] = 0 + self._defaults['SaveConfigurationsToFile'] = {} + self._defaults['SaveConfigurationsToFile']['return'] = 0 + self._defaults['SelectArbWaveform'] = {} + self._defaults['SelectArbWaveform']['return'] = 0 + self._defaults['SelfCal'] = {} + self._defaults['SelfCal']['return'] = 0 + self._defaults['SelfCalibrateRange'] = {} + self._defaults['SelfCalibrateRange']['return'] = 0 + self._defaults['SelfTest'] = {} + self._defaults['SelfTest']['return'] = 0 + self._defaults['SelfTest']['selfTestResult'] = None + self._defaults['SendSoftwareEdgeTrigger'] = {} + self._defaults['SendSoftwareEdgeTrigger']['return'] = 0 + self._defaults['SetArbWaveformNextWritePosition'] = {} + self._defaults['SetArbWaveformNextWritePosition']['return'] = 0 + self._defaults['SetAttributeViBoolean'] = {} + self._defaults['SetAttributeViBoolean']['return'] = 0 + self._defaults['SetAttributeViInt32'] = {} + self._defaults['SetAttributeViInt32']['return'] = 0 + self._defaults['SetAttributeViInt64'] = {} + self._defaults['SetAttributeViInt64']['return'] = 0 + self._defaults['SetAttributeViReal64'] = {} + self._defaults['SetAttributeViReal64']['return'] = 0 + self._defaults['SetAttributeViSession'] = {} + self._defaults['SetAttributeViSession']['return'] = 0 + self._defaults['SetAttributeViString'] = {} + self._defaults['SetAttributeViString']['return'] = 0 + self._defaults['SetWaveformBurstStartLocations'] = {} + self._defaults['SetWaveformBurstStartLocations']['return'] = 0 + self._defaults['SetWaveformBurstStartLocations']['locations'] = None + self._defaults['SetWaveformBurstStopLocations'] = {} + self._defaults['SetWaveformBurstStopLocations']['return'] = 0 + self._defaults['SetWaveformBurstStopLocations']['locations'] = None + self._defaults['SetWaveformMarkerEventLocations'] = {} + self._defaults['SetWaveformMarkerEventLocations']['return'] = 0 + self._defaults['SetWaveformMarkerEventLocations']['locations'] = None + self._defaults['UnlockSession'] = {} + self._defaults['UnlockSession']['return'] = 0 + self._defaults['UnlockSession']['callerHasLock'] = None + self._defaults['WaitUntilSettled'] = {} + self._defaults['WaitUntilSettled']['return'] = 0 + self._defaults['WriteArbWaveform'] = {} + self._defaults['WriteArbWaveform']['return'] = 0 + self._defaults['WriteArbWaveformF32'] = {} + self._defaults['WriteArbWaveformF32']['return'] = 0 + self._defaults['WriteP2PEndpointI16'] = {} + self._defaults['WriteP2PEndpointI16']['return'] = 0 + self._defaults['WriteScript'] = {} + self._defaults['WriteScript']['return'] = 0 + self._defaults['close'] = {} + self._defaults['close']['return'] = 0 + + def __getitem__(self, func): + return self._defaults[func] + + def __setitem__(self, func, val): + self._defaults[func] = val + + def niRFSG_Abort(self, vi): # noqa: N802 + if self._defaults['Abort']['return'] != 0: + return self._defaults['Abort']['return'] + return self._defaults['Abort']['return'] + + def niRFSG_AllocateArbWaveform(self, vi, waveform_name, size_in_samples): # noqa: N802 + if self._defaults['AllocateArbWaveform']['return'] != 0: + return self._defaults['AllocateArbWaveform']['return'] + return self._defaults['AllocateArbWaveform']['return'] + + def niRFSG_ChangeExternalCalibrationPassword(self, vi, old_password, new_password): # noqa: N802 + if self._defaults['ChangeExternalCalibrationPassword']['return'] != 0: + return self._defaults['ChangeExternalCalibrationPassword']['return'] + return self._defaults['ChangeExternalCalibrationPassword']['return'] + + def niRFSG_CheckAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['CheckAttributeViBoolean']['return'] != 0: + return self._defaults['CheckAttributeViBoolean']['return'] + return self._defaults['CheckAttributeViBoolean']['return'] + + def niRFSG_CheckAttributeViInt32(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['CheckAttributeViInt32']['return'] != 0: + return self._defaults['CheckAttributeViInt32']['return'] + return self._defaults['CheckAttributeViInt32']['return'] + + def niRFSG_CheckAttributeViInt64(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['CheckAttributeViInt64']['return'] != 0: + return self._defaults['CheckAttributeViInt64']['return'] + return self._defaults['CheckAttributeViInt64']['return'] + + def niRFSG_CheckAttributeViReal64(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['CheckAttributeViReal64']['return'] != 0: + return self._defaults['CheckAttributeViReal64']['return'] + return self._defaults['CheckAttributeViReal64']['return'] + + def niRFSG_CheckAttributeViSession(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['CheckAttributeViSession']['return'] != 0: + return self._defaults['CheckAttributeViSession']['return'] + return self._defaults['CheckAttributeViSession']['return'] + + def niRFSG_CheckAttributeViString(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['CheckAttributeViString']['return'] != 0: + return self._defaults['CheckAttributeViString']['return'] + return self._defaults['CheckAttributeViString']['return'] + + def niRFSG_CheckGenerationStatus(self, vi, is_done): # noqa: N802 + if self._defaults['CheckGenerationStatus']['return'] != 0: + return self._defaults['CheckGenerationStatus']['return'] + # is_done + if self._defaults['CheckGenerationStatus']['isDone'] is None: + raise MockFunctionCallError("niRFSG_CheckGenerationStatus", param='isDone') + if is_done is not None: + is_done.contents.value = self._defaults['CheckGenerationStatus']['isDone'] + return self._defaults['CheckGenerationStatus']['return'] + + def niRFSG_CheckIfConfigurationListExists(self, vi, list_name, list_exists): # noqa: N802 + if self._defaults['CheckIfConfigurationListExists']['return'] != 0: + return self._defaults['CheckIfConfigurationListExists']['return'] + # list_exists + if self._defaults['CheckIfConfigurationListExists']['listExists'] is None: + raise MockFunctionCallError("niRFSG_CheckIfConfigurationListExists", param='listExists') + if list_exists is not None: + list_exists.contents.value = self._defaults['CheckIfConfigurationListExists']['listExists'] + return self._defaults['CheckIfConfigurationListExists']['return'] + + def niRFSG_CheckIfScriptExists(self, vi, script_name, script_exists): # noqa: N802 + if self._defaults['CheckIfScriptExists']['return'] != 0: + return self._defaults['CheckIfScriptExists']['return'] + # script_exists + if self._defaults['CheckIfScriptExists']['scriptExists'] is None: + raise MockFunctionCallError("niRFSG_CheckIfScriptExists", param='scriptExists') + if script_exists is not None: + script_exists.contents.value = self._defaults['CheckIfScriptExists']['scriptExists'] + return self._defaults['CheckIfScriptExists']['return'] + + def niRFSG_CheckIfWaveformExists(self, vi, waveform_name, waveform_exists): # noqa: N802 + if self._defaults['CheckIfWaveformExists']['return'] != 0: + return self._defaults['CheckIfWaveformExists']['return'] + # waveform_exists + if self._defaults['CheckIfWaveformExists']['waveformExists'] is None: + raise MockFunctionCallError("niRFSG_CheckIfWaveformExists", param='waveformExists') + if waveform_exists is not None: + waveform_exists.contents.value = self._defaults['CheckIfWaveformExists']['waveformExists'] + return self._defaults['CheckIfWaveformExists']['return'] + + def niRFSG_ClearAllArbWaveforms(self, vi): # noqa: N802 + if self._defaults['ClearAllArbWaveforms']['return'] != 0: + return self._defaults['ClearAllArbWaveforms']['return'] + return self._defaults['ClearAllArbWaveforms']['return'] + + def niRFSG_ClearArbWaveform(self, vi, name): # noqa: N802 + if self._defaults['ClearArbWaveform']['return'] != 0: + return self._defaults['ClearArbWaveform']['return'] + return self._defaults['ClearArbWaveform']['return'] + + def niRFSG_ClearError(self, vi): # noqa: N802 + if self._defaults['ClearError']['return'] != 0: + return self._defaults['ClearError']['return'] + return self._defaults['ClearError']['return'] + + def niRFSG_ClearSelfCalibrateRange(self, vi): # noqa: N802 + if self._defaults['ClearSelfCalibrateRange']['return'] != 0: + return self._defaults['ClearSelfCalibrateRange']['return'] + return self._defaults['ClearSelfCalibrateRange']['return'] + + def niRFSG_Commit(self, vi): # noqa: N802 + if self._defaults['Commit']['return'] != 0: + return self._defaults['Commit']['return'] + return self._defaults['Commit']['return'] + + def niRFSG_ConfigureDeembeddingTableInterpolationLinear(self, vi, port, table_name, format): # noqa: N802 + if self._defaults['ConfigureDeembeddingTableInterpolationLinear']['return'] != 0: + return self._defaults['ConfigureDeembeddingTableInterpolationLinear']['return'] + return self._defaults['ConfigureDeembeddingTableInterpolationLinear']['return'] + + def niRFSG_ConfigureDeembeddingTableInterpolationNearest(self, vi, port, table_name): # noqa: N802 + if self._defaults['ConfigureDeembeddingTableInterpolationNearest']['return'] != 0: + return self._defaults['ConfigureDeembeddingTableInterpolationNearest']['return'] + return self._defaults['ConfigureDeembeddingTableInterpolationNearest']['return'] + + def niRFSG_ConfigureDeembeddingTableInterpolationSpline(self, vi, port, table_name): # noqa: N802 + if self._defaults['ConfigureDeembeddingTableInterpolationSpline']['return'] != 0: + return self._defaults['ConfigureDeembeddingTableInterpolationSpline']['return'] + return self._defaults['ConfigureDeembeddingTableInterpolationSpline']['return'] + + def niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger(self, vi, source, edge): # noqa: N802 + if self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] != 0: + return self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] + return self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] + + def niRFSG_ConfigureDigitalEdgeScriptTrigger(self, vi, trigger_id, source, edge): # noqa: N802 + if self._defaults['ConfigureDigitalEdgeScriptTrigger']['return'] != 0: + return self._defaults['ConfigureDigitalEdgeScriptTrigger']['return'] + return self._defaults['ConfigureDigitalEdgeScriptTrigger']['return'] + + def niRFSG_ConfigureDigitalEdgeStartTrigger(self, vi, source, edge): # noqa: N802 + if self._defaults['ConfigureDigitalEdgeStartTrigger']['return'] != 0: + return self._defaults['ConfigureDigitalEdgeStartTrigger']['return'] + return self._defaults['ConfigureDigitalEdgeStartTrigger']['return'] + + def niRFSG_ConfigureDigitalLevelScriptTrigger(self, vi, trigger_id, source, level): # noqa: N802 + if self._defaults['ConfigureDigitalLevelScriptTrigger']['return'] != 0: + return self._defaults['ConfigureDigitalLevelScriptTrigger']['return'] + return self._defaults['ConfigureDigitalLevelScriptTrigger']['return'] + + def niRFSG_ConfigureDigitalModulationUserDefinedWaveform(self, vi, number_of_samples, user_defined_waveform): # noqa: N802 + if self._defaults['ConfigureDigitalModulationUserDefinedWaveform']['return'] != 0: + return self._defaults['ConfigureDigitalModulationUserDefinedWaveform']['return'] + return self._defaults['ConfigureDigitalModulationUserDefinedWaveform']['return'] + + def niRFSG_ConfigureGenerationMode(self, vi, generation_mode): # noqa: N802 + if self._defaults['ConfigureGenerationMode']['return'] != 0: + return self._defaults['ConfigureGenerationMode']['return'] + return self._defaults['ConfigureGenerationMode']['return'] + + def niRFSG_ConfigureOutputEnabled(self, vi, output_enabled): # noqa: N802 + if self._defaults['ConfigureOutputEnabled']['return'] != 0: + return self._defaults['ConfigureOutputEnabled']['return'] + return self._defaults['ConfigureOutputEnabled']['return'] + + def niRFSG_ConfigureP2PEndpointFullnessStartTrigger(self, vi, p2p_endpoint_fullness_level): # noqa: N802 + if self._defaults['ConfigureP2PEndpointFullnessStartTrigger']['return'] != 0: + return self._defaults['ConfigureP2PEndpointFullnessStartTrigger']['return'] + return self._defaults['ConfigureP2PEndpointFullnessStartTrigger']['return'] + + def niRFSG_ConfigurePowerLevelType(self, vi, power_level_type): # noqa: N802 + if self._defaults['ConfigurePowerLevelType']['return'] != 0: + return self._defaults['ConfigurePowerLevelType']['return'] + return self._defaults['ConfigurePowerLevelType']['return'] + + def niRFSG_ConfigurePxiChassisClk10(self, vi, pxi_clk10_source): # noqa: N802 + if self._defaults['ConfigurePxiChassisClk10']['return'] != 0: + return self._defaults['ConfigurePxiChassisClk10']['return'] + return self._defaults['ConfigurePxiChassisClk10']['return'] + + def niRFSG_ConfigureRF(self, vi, frequency, power_level): # noqa: N802 + if self._defaults['ConfigureRF']['return'] != 0: + return self._defaults['ConfigureRF']['return'] + return self._defaults['ConfigureRF']['return'] + + def niRFSG_ConfigureRefClock(self, vi, ref_clock_source, ref_clock_rate): # noqa: N802 + if self._defaults['ConfigureRefClock']['return'] != 0: + return self._defaults['ConfigureRefClock']['return'] + return self._defaults['ConfigureRefClock']['return'] + + def niRFSG_ConfigureSignalBandwidth(self, vi, signal_bandwidth): # noqa: N802 + if self._defaults['ConfigureSignalBandwidth']['return'] != 0: + return self._defaults['ConfigureSignalBandwidth']['return'] + return self._defaults['ConfigureSignalBandwidth']['return'] + + def niRFSG_ConfigureSoftwareScriptTrigger(self, vi, trigger_id): # noqa: N802 + if self._defaults['ConfigureSoftwareScriptTrigger']['return'] != 0: + return self._defaults['ConfigureSoftwareScriptTrigger']['return'] + return self._defaults['ConfigureSoftwareScriptTrigger']['return'] + + def niRFSG_ConfigureSoftwareStartTrigger(self, vi): # noqa: N802 + if self._defaults['ConfigureSoftwareStartTrigger']['return'] != 0: + return self._defaults['ConfigureSoftwareStartTrigger']['return'] + return self._defaults['ConfigureSoftwareStartTrigger']['return'] + + def niRFSG_CreateConfigurationList(self, vi, list_name, number_of_attributes, configuration_list_attributes, set_as_active_list): # noqa: N802 + if self._defaults['CreateConfigurationList']['return'] != 0: + return self._defaults['CreateConfigurationList']['return'] + return self._defaults['CreateConfigurationList']['return'] + + def niRFSG_CreateConfigurationListStep(self, vi, set_as_active_step): # noqa: N802 + if self._defaults['CreateConfigurationListStep']['return'] != 0: + return self._defaults['CreateConfigurationListStep']['return'] + return self._defaults['CreateConfigurationListStep']['return'] + + def niRFSG_CreateDeembeddingSparameterTableS2PFile(self, vi, port, table_name, s2p_file_path, sparameter_orientation): # noqa: N802 + if self._defaults['CreateDeembeddingSparameterTableS2PFile']['return'] != 0: + return self._defaults['CreateDeembeddingSparameterTableS2PFile']['return'] + return self._defaults['CreateDeembeddingSparameterTableS2PFile']['return'] + + def niRFSG_DeleteAllDeembeddingTables(self, vi): # noqa: N802 + if self._defaults['DeleteAllDeembeddingTables']['return'] != 0: + return self._defaults['DeleteAllDeembeddingTables']['return'] + return self._defaults['DeleteAllDeembeddingTables']['return'] + + def niRFSG_DeleteConfigurationList(self, vi, list_name): # noqa: N802 + if self._defaults['DeleteConfigurationList']['return'] != 0: + return self._defaults['DeleteConfigurationList']['return'] + return self._defaults['DeleteConfigurationList']['return'] + + def niRFSG_DeleteDeembeddingTable(self, vi, port, table_name): # noqa: N802 + if self._defaults['DeleteDeembeddingTable']['return'] != 0: + return self._defaults['DeleteDeembeddingTable']['return'] + return self._defaults['DeleteDeembeddingTable']['return'] + + def niRFSG_Disable(self, vi): # noqa: N802 + if self._defaults['Disable']['return'] != 0: + return self._defaults['Disable']['return'] + return self._defaults['Disable']['return'] + + def niRFSG_DisableConfigurationListStepTrigger(self, vi): # noqa: N802 + if self._defaults['DisableConfigurationListStepTrigger']['return'] != 0: + return self._defaults['DisableConfigurationListStepTrigger']['return'] + return self._defaults['DisableConfigurationListStepTrigger']['return'] + + def niRFSG_DisableScriptTrigger(self, vi, trigger_id): # noqa: N802 + if self._defaults['DisableScriptTrigger']['return'] != 0: + return self._defaults['DisableScriptTrigger']['return'] + return self._defaults['DisableScriptTrigger']['return'] + + def niRFSG_DisableStartTrigger(self, vi): # noqa: N802 + if self._defaults['DisableStartTrigger']['return'] != 0: + return self._defaults['DisableStartTrigger']['return'] + return self._defaults['DisableStartTrigger']['return'] + + def niRFSG_ErrorMessage(self, vi, error_code, error_message): # noqa: N802 + if self._defaults['ErrorMessage']['return'] != 0: + return self._defaults['ErrorMessage']['return'] + return self._defaults['ErrorMessage']['return'] + + def niRFSG_ErrorQuery(self, vi, error_code, error_message): # noqa: N802 + if self._defaults['ErrorQuery']['return'] != 0: + return self._defaults['ErrorQuery']['return'] + # error_code + if self._defaults['ErrorQuery']['errorCode'] is None: + raise MockFunctionCallError("niRFSG_ErrorQuery", param='errorCode') + if error_code is not None: + error_code.contents.value = self._defaults['ErrorQuery']['errorCode'] + return self._defaults['ErrorQuery']['return'] + + def niRFSG_ExportSignal(self, vi, signal, signal_identifier, output_terminal): # noqa: N802 + if self._defaults['ExportSignal']['return'] != 0: + return self._defaults['ExportSignal']['return'] + return self._defaults['ExportSignal']['return'] + + def niRFSG_GetAllNamedWaveformNames(self, vi, waveform_names, buffer_size, actual_buffer_size): # noqa: N802 + if self._defaults['GetAllNamedWaveformNames']['return'] != 0: + return self._defaults['GetAllNamedWaveformNames']['return'] + # actual_buffer_size + if self._defaults['GetAllNamedWaveformNames']['actualBufferSize'] is None: + raise MockFunctionCallError("niRFSG_GetAllNamedWaveformNames", param='actualBufferSize') + if actual_buffer_size is not None: + actual_buffer_size.contents.value = self._defaults['GetAllNamedWaveformNames']['actualBufferSize'] + return self._defaults['GetAllNamedWaveformNames']['return'] + + def niRFSG_GetAllScriptNames(self, vi, script_names, buffer_size, actual_buffer_size): # noqa: N802 + if self._defaults['GetAllScriptNames']['return'] != 0: + return self._defaults['GetAllScriptNames']['return'] + # actual_buffer_size + if self._defaults['GetAllScriptNames']['actualBufferSize'] is None: + raise MockFunctionCallError("niRFSG_GetAllScriptNames", param='actualBufferSize') + if actual_buffer_size is not None: + actual_buffer_size.contents.value = self._defaults['GetAllScriptNames']['actualBufferSize'] + return self._defaults['GetAllScriptNames']['return'] + + def niRFSG_GetAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['GetAttributeViBoolean']['return'] != 0: + return self._defaults['GetAttributeViBoolean']['return'] + # value + if self._defaults['GetAttributeViBoolean']['value'] is None: + raise MockFunctionCallError("niRFSG_GetAttributeViBoolean", param='value') + if value is not None: + value.contents.value = self._defaults['GetAttributeViBoolean']['value'] + return self._defaults['GetAttributeViBoolean']['return'] + + def niRFSG_GetAttributeViInt32(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['GetAttributeViInt32']['return'] != 0: + return self._defaults['GetAttributeViInt32']['return'] + # value + if self._defaults['GetAttributeViInt32']['value'] is None: + raise MockFunctionCallError("niRFSG_GetAttributeViInt32", param='value') + if value is not None: + value.contents.value = self._defaults['GetAttributeViInt32']['value'] + return self._defaults['GetAttributeViInt32']['return'] + + def niRFSG_GetAttributeViInt64(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['GetAttributeViInt64']['return'] != 0: + return self._defaults['GetAttributeViInt64']['return'] + # value + if self._defaults['GetAttributeViInt64']['value'] is None: + raise MockFunctionCallError("niRFSG_GetAttributeViInt64", param='value') + if value is not None: + value.contents.value = self._defaults['GetAttributeViInt64']['value'] + return self._defaults['GetAttributeViInt64']['return'] + + def niRFSG_GetAttributeViReal64(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['GetAttributeViReal64']['return'] != 0: + return self._defaults['GetAttributeViReal64']['return'] + # value + if self._defaults['GetAttributeViReal64']['value'] is None: + raise MockFunctionCallError("niRFSG_GetAttributeViReal64", param='value') + if value is not None: + value.contents.value = self._defaults['GetAttributeViReal64']['value'] + return self._defaults['GetAttributeViReal64']['return'] + + def niRFSG_GetAttributeViSession(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['GetAttributeViSession']['return'] != 0: + return self._defaults['GetAttributeViSession']['return'] + # value + if self._defaults['GetAttributeViSession']['value'] is None: + raise MockFunctionCallError("niRFSG_GetAttributeViSession", param='value') + if value is not None: + value.contents.value = self._defaults['GetAttributeViSession']['value'] + return self._defaults['GetAttributeViSession']['return'] + + def niRFSG_GetAttributeViString(self, vi, channel_name, attribute, buf_size, value): # noqa: N802 + if self._defaults['GetAttributeViString']['return'] != 0: + return self._defaults['GetAttributeViString']['return'] + return self._defaults['GetAttributeViString']['return'] + + def niRFSG_GetChannelName(self, vi, index, buffer_size, name): # noqa: N802 + if self._defaults['GetChannelName']['return'] != 0: + return self._defaults['GetChannelName']['return'] + return self._defaults['GetChannelName']['return'] + + def niRFSG_GetDeembeddingSparameters(self, vi, sparameters, sparameters_array_size, number_of_sparameters, number_of_ports): # noqa: N802 + if self._defaults['GetDeembeddingSparameters']['return'] != 0: + return self._defaults['GetDeembeddingSparameters']['return'] + # sparameters + if self._defaults['GetDeembeddingSparameters']['sparameters'] is None: + raise MockFunctionCallError("niRFSG_GetDeembeddingSparameters", param='sparameters') + if sparameters is not None: + sparameters.contents.value = self._defaults['GetDeembeddingSparameters']['sparameters'] + # number_of_sparameters + if self._defaults['GetDeembeddingSparameters']['numberOfSparameters'] is None: + raise MockFunctionCallError("niRFSG_GetDeembeddingSparameters", param='numberOfSparameters') + if number_of_sparameters is not None: + number_of_sparameters.contents.value = self._defaults['GetDeembeddingSparameters']['numberOfSparameters'] + # number_of_ports + if self._defaults['GetDeembeddingSparameters']['numberOfPorts'] is None: + raise MockFunctionCallError("niRFSG_GetDeembeddingSparameters", param='numberOfPorts') + if number_of_ports is not None: + number_of_ports.contents.value = self._defaults['GetDeembeddingSparameters']['numberOfPorts'] + return self._defaults['GetDeembeddingSparameters']['return'] + + def niRFSG_GetError(self, vi, error_code, error_description_buffer_size, error_description): # noqa: N802 + if self._defaults['GetError']['return'] != 0: + return self._defaults['GetError']['return'] + # error_code + if self._defaults['GetError']['errorCode'] is None: + raise MockFunctionCallError("niRFSG_GetError", param='errorCode') + if error_code is not None: + error_code.contents.value = self._defaults['GetError']['errorCode'] + # error_description + if self._defaults['GetError']['errorDescription'] is None: + raise MockFunctionCallError("niRFSG_GetError", param='errorDescription') + if error_description_buffer_size.value == 0: + return len(self._defaults['GetError']['errorDescription']) + error_description.value = self._defaults['GetError']['errorDescription'].encode('ascii') + return self._defaults['GetError']['return'] + + def niRFSG_GetExternalCalibrationLastDateAndTime(self, vi, year, month, day, hour, minute, second): # noqa: N802 + if self._defaults['GetExternalCalibrationLastDateAndTime']['return'] != 0: + return self._defaults['GetExternalCalibrationLastDateAndTime']['return'] + # year + if self._defaults['GetExternalCalibrationLastDateAndTime']['year'] is None: + raise MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime", param='year') + if year is not None: + year.contents.value = self._defaults['GetExternalCalibrationLastDateAndTime']['year'] + # month + if self._defaults['GetExternalCalibrationLastDateAndTime']['month'] is None: + raise MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime", param='month') + if month is not None: + month.contents.value = self._defaults['GetExternalCalibrationLastDateAndTime']['month'] + # day + if self._defaults['GetExternalCalibrationLastDateAndTime']['day'] is None: + raise MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime", param='day') + if day is not None: + day.contents.value = self._defaults['GetExternalCalibrationLastDateAndTime']['day'] + # hour + if self._defaults['GetExternalCalibrationLastDateAndTime']['hour'] is None: + raise MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime", param='hour') + if hour is not None: + hour.contents.value = self._defaults['GetExternalCalibrationLastDateAndTime']['hour'] + # minute + if self._defaults['GetExternalCalibrationLastDateAndTime']['minute'] is None: + raise MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime", param='minute') + if minute is not None: + minute.contents.value = self._defaults['GetExternalCalibrationLastDateAndTime']['minute'] + # second + if self._defaults['GetExternalCalibrationLastDateAndTime']['second'] is None: + raise MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime", param='second') + if second is not None: + second.contents.value = self._defaults['GetExternalCalibrationLastDateAndTime']['second'] + return self._defaults['GetExternalCalibrationLastDateAndTime']['return'] + + def niRFSG_GetMaxSettablePower(self, vi, value): # noqa: N802 + if self._defaults['GetMaxSettablePower']['return'] != 0: + return self._defaults['GetMaxSettablePower']['return'] + # value + if self._defaults['GetMaxSettablePower']['value'] is None: + raise MockFunctionCallError("niRFSG_GetMaxSettablePower", param='value') + if value is not None: + value.contents.value = self._defaults['GetMaxSettablePower']['value'] + return self._defaults['GetMaxSettablePower']['return'] + + def niRFSG_GetSelfCalibrationDateAndTime(self, vi, module, year, month, day, hour, minute, second): # noqa: N802 + if self._defaults['GetSelfCalibrationDateAndTime']['return'] != 0: + return self._defaults['GetSelfCalibrationDateAndTime']['return'] + # year + if self._defaults['GetSelfCalibrationDateAndTime']['year'] is None: + raise MockFunctionCallError("niRFSG_GetSelfCalibrationDateAndTime", param='year') + if year is not None: + year.contents.value = self._defaults['GetSelfCalibrationDateAndTime']['year'] + # month + if self._defaults['GetSelfCalibrationDateAndTime']['month'] is None: + raise MockFunctionCallError("niRFSG_GetSelfCalibrationDateAndTime", param='month') + if month is not None: + month.contents.value = self._defaults['GetSelfCalibrationDateAndTime']['month'] + # day + if self._defaults['GetSelfCalibrationDateAndTime']['day'] is None: + raise MockFunctionCallError("niRFSG_GetSelfCalibrationDateAndTime", param='day') + if day is not None: + day.contents.value = self._defaults['GetSelfCalibrationDateAndTime']['day'] + # hour + if self._defaults['GetSelfCalibrationDateAndTime']['hour'] is None: + raise MockFunctionCallError("niRFSG_GetSelfCalibrationDateAndTime", param='hour') + if hour is not None: + hour.contents.value = self._defaults['GetSelfCalibrationDateAndTime']['hour'] + # minute + if self._defaults['GetSelfCalibrationDateAndTime']['minute'] is None: + raise MockFunctionCallError("niRFSG_GetSelfCalibrationDateAndTime", param='minute') + if minute is not None: + minute.contents.value = self._defaults['GetSelfCalibrationDateAndTime']['minute'] + # second + if self._defaults['GetSelfCalibrationDateAndTime']['second'] is None: + raise MockFunctionCallError("niRFSG_GetSelfCalibrationDateAndTime", param='second') + if second is not None: + second.contents.value = self._defaults['GetSelfCalibrationDateAndTime']['second'] + return self._defaults['GetSelfCalibrationDateAndTime']['return'] + + def niRFSG_GetSelfCalibrationTemperature(self, vi, module, temperature): # noqa: N802 + if self._defaults['GetSelfCalibrationTemperature']['return'] != 0: + return self._defaults['GetSelfCalibrationTemperature']['return'] + # temperature + if self._defaults['GetSelfCalibrationTemperature']['temperature'] is None: + raise MockFunctionCallError("niRFSG_GetSelfCalibrationTemperature", param='temperature') + if temperature is not None: + temperature.contents.value = self._defaults['GetSelfCalibrationTemperature']['temperature'] + return self._defaults['GetSelfCalibrationTemperature']['return'] + + def niRFSG_GetStreamEndpointHandle(self, vi, stream_endpoint, reader_handle): # noqa: N802 + if self._defaults['GetStreamEndpointHandle']['return'] != 0: + return self._defaults['GetStreamEndpointHandle']['return'] + # reader_handle + if self._defaults['GetStreamEndpointHandle']['readerHandle'] is None: + raise MockFunctionCallError("niRFSG_GetStreamEndpointHandle", param='readerHandle') + if reader_handle is not None: + reader_handle.contents.value = self._defaults['GetStreamEndpointHandle']['readerHandle'] + return self._defaults['GetStreamEndpointHandle']['return'] + + def niRFSG_GetTerminalName(self, vi, signal, signal_identifier, buffer_size, terminal_name): # noqa: N802 + if self._defaults['GetTerminalName']['return'] != 0: + return self._defaults['GetTerminalName']['return'] + return self._defaults['GetTerminalName']['return'] + + def niRFSG_GetWaveformBurstStartLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 + if self._defaults['GetWaveformBurstStartLocations']['return'] != 0: + return self._defaults['GetWaveformBurstStartLocations']['return'] + # locations + if self._defaults['GetWaveformBurstStartLocations']['locations'] is None: + raise MockFunctionCallError("niRFSG_GetWaveformBurstStartLocations", param='locations') + if locations is not None: + locations.contents.value = self._defaults['GetWaveformBurstStartLocations']['locations'] + # required_size + if self._defaults['GetWaveformBurstStartLocations']['requiredSize'] is None: + raise MockFunctionCallError("niRFSG_GetWaveformBurstStartLocations", param='requiredSize') + if required_size is not None: + required_size.contents.value = self._defaults['GetWaveformBurstStartLocations']['requiredSize'] + return self._defaults['GetWaveformBurstStartLocations']['return'] + + def niRFSG_GetWaveformBurstStopLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 + if self._defaults['GetWaveformBurstStopLocations']['return'] != 0: + return self._defaults['GetWaveformBurstStopLocations']['return'] + # locations + if self._defaults['GetWaveformBurstStopLocations']['locations'] is None: + raise MockFunctionCallError("niRFSG_GetWaveformBurstStopLocations", param='locations') + if locations is not None: + locations.contents.value = self._defaults['GetWaveformBurstStopLocations']['locations'] + # required_size + if self._defaults['GetWaveformBurstStopLocations']['requiredSize'] is None: + raise MockFunctionCallError("niRFSG_GetWaveformBurstStopLocations", param='requiredSize') + if required_size is not None: + required_size.contents.value = self._defaults['GetWaveformBurstStopLocations']['requiredSize'] + return self._defaults['GetWaveformBurstStopLocations']['return'] + + def niRFSG_GetWaveformMarkerEventLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 + if self._defaults['GetWaveformMarkerEventLocations']['return'] != 0: + return self._defaults['GetWaveformMarkerEventLocations']['return'] + # locations + if self._defaults['GetWaveformMarkerEventLocations']['locations'] is None: + raise MockFunctionCallError("niRFSG_GetWaveformMarkerEventLocations", param='locations') + if locations is not None: + locations.contents.value = self._defaults['GetWaveformMarkerEventLocations']['locations'] + # required_size + if self._defaults['GetWaveformMarkerEventLocations']['requiredSize'] is None: + raise MockFunctionCallError("niRFSG_GetWaveformMarkerEventLocations", param='requiredSize') + if required_size is not None: + required_size.contents.value = self._defaults['GetWaveformMarkerEventLocations']['requiredSize'] + return self._defaults['GetWaveformMarkerEventLocations']['return'] + + def niRFSG_InitWithOptions(self, resource_name, id_query, reset_device, option_string, new_vi): # noqa: N802 + if self._defaults['InitWithOptions']['return'] != 0: + return self._defaults['InitWithOptions']['return'] + # new_vi + if self._defaults['InitWithOptions']['newVi'] is None: + raise MockFunctionCallError("niRFSG_InitWithOptions", param='newVi') + if new_vi is not None: + new_vi.contents.value = self._defaults['InitWithOptions']['newVi'] + return self._defaults['InitWithOptions']['return'] + + def niRFSG_Initiate(self, vi): # noqa: N802 + if self._defaults['Initiate']['return'] != 0: + return self._defaults['Initiate']['return'] + return self._defaults['Initiate']['return'] + + def niRFSG_LoadConfigurationsFromFile(self, vi, channel_name, file_path): # noqa: N802 + if self._defaults['LoadConfigurationsFromFile']['return'] != 0: + return self._defaults['LoadConfigurationsFromFile']['return'] + return self._defaults['LoadConfigurationsFromFile']['return'] + + def niRFSG_LockSession(self, vi, caller_has_lock): # noqa: N802 + if self._defaults['LockSession']['return'] != 0: + return self._defaults['LockSession']['return'] + # caller_has_lock + if self._defaults['LockSession']['callerHasLock'] is None: + raise MockFunctionCallError("niRFSG_LockSession", param='callerHasLock') + if caller_has_lock is not None: + caller_has_lock.contents.value = self._defaults['LockSession']['callerHasLock'] + return self._defaults['LockSession']['return'] + + def niRFSG_PerformPowerSearch(self, vi): # noqa: N802 + if self._defaults['PerformPowerSearch']['return'] != 0: + return self._defaults['PerformPowerSearch']['return'] + return self._defaults['PerformPowerSearch']['return'] + + def niRFSG_PerformThermalCorrection(self, vi): # noqa: N802 + if self._defaults['PerformThermalCorrection']['return'] != 0: + return self._defaults['PerformThermalCorrection']['return'] + return self._defaults['PerformThermalCorrection']['return'] + + def niRFSG_QueryArbWaveformCapabilities(self, vi, max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size): # noqa: N802 + if self._defaults['QueryArbWaveformCapabilities']['return'] != 0: + return self._defaults['QueryArbWaveformCapabilities']['return'] + # max_number_waveforms + if self._defaults['QueryArbWaveformCapabilities']['maxNumberWaveforms'] is None: + raise MockFunctionCallError("niRFSG_QueryArbWaveformCapabilities", param='maxNumberWaveforms') + if max_number_waveforms is not None: + max_number_waveforms.contents.value = self._defaults['QueryArbWaveformCapabilities']['maxNumberWaveforms'] + # waveform_quantum + if self._defaults['QueryArbWaveformCapabilities']['waveformQuantum'] is None: + raise MockFunctionCallError("niRFSG_QueryArbWaveformCapabilities", param='waveformQuantum') + if waveform_quantum is not None: + waveform_quantum.contents.value = self._defaults['QueryArbWaveformCapabilities']['waveformQuantum'] + # min_waveform_size + if self._defaults['QueryArbWaveformCapabilities']['minWaveformSize'] is None: + raise MockFunctionCallError("niRFSG_QueryArbWaveformCapabilities", param='minWaveformSize') + if min_waveform_size is not None: + min_waveform_size.contents.value = self._defaults['QueryArbWaveformCapabilities']['minWaveformSize'] + # max_waveform_size + if self._defaults['QueryArbWaveformCapabilities']['maxWaveformSize'] is None: + raise MockFunctionCallError("niRFSG_QueryArbWaveformCapabilities", param='maxWaveformSize') + if max_waveform_size is not None: + max_waveform_size.contents.value = self._defaults['QueryArbWaveformCapabilities']['maxWaveformSize'] + return self._defaults['QueryArbWaveformCapabilities']['return'] + + def niRFSG_ReadAndDownloadWaveformFromFileTDMS(self, vi, waveform_name, file_path, waveform_index): # noqa: N802 + if self._defaults['ReadAndDownloadWaveformFromFileTDMS']['return'] != 0: + return self._defaults['ReadAndDownloadWaveformFromFileTDMS']['return'] + return self._defaults['ReadAndDownloadWaveformFromFileTDMS']['return'] + + def niRFSG_Reset(self, vi): # noqa: N802 + if self._defaults['Reset']['return'] != 0: + return self._defaults['Reset']['return'] + return self._defaults['Reset']['return'] + + def niRFSG_ResetAttribute(self, vi, channel_name, attribute_id): # noqa: N802 + if self._defaults['ResetAttribute']['return'] != 0: + return self._defaults['ResetAttribute']['return'] + return self._defaults['ResetAttribute']['return'] + + def niRFSG_ResetDevice(self, vi): # noqa: N802 + if self._defaults['ResetDevice']['return'] != 0: + return self._defaults['ResetDevice']['return'] + return self._defaults['ResetDevice']['return'] + + def niRFSG_ResetWithDefaults(self, vi): # noqa: N802 + if self._defaults['ResetWithDefaults']['return'] != 0: + return self._defaults['ResetWithDefaults']['return'] + return self._defaults['ResetWithDefaults']['return'] + + def niRFSG_ResetWithOptions(self, vi, steps_to_omit): # noqa: N802 + if self._defaults['ResetWithOptions']['return'] != 0: + return self._defaults['ResetWithOptions']['return'] + return self._defaults['ResetWithOptions']['return'] + + def niRFSG_RevisionQuery(self, vi, instrument_driver_revision, firmware_revision): # noqa: N802 + if self._defaults['RevisionQuery']['return'] != 0: + return self._defaults['RevisionQuery']['return'] + return self._defaults['RevisionQuery']['return'] + + def niRFSG_SaveConfigurationsToFile(self, vi, channel_name, file_path): # noqa: N802 + if self._defaults['SaveConfigurationsToFile']['return'] != 0: + return self._defaults['SaveConfigurationsToFile']['return'] + return self._defaults['SaveConfigurationsToFile']['return'] + + def niRFSG_SelectArbWaveform(self, vi, name): # noqa: N802 + if self._defaults['SelectArbWaveform']['return'] != 0: + return self._defaults['SelectArbWaveform']['return'] + return self._defaults['SelectArbWaveform']['return'] + + def niRFSG_SelfCal(self, vi): # noqa: N802 + if self._defaults['SelfCal']['return'] != 0: + return self._defaults['SelfCal']['return'] + return self._defaults['SelfCal']['return'] + + def niRFSG_SelfCalibrateRange(self, vi, steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level): # noqa: N802 + if self._defaults['SelfCalibrateRange']['return'] != 0: + return self._defaults['SelfCalibrateRange']['return'] + return self._defaults['SelfCalibrateRange']['return'] + + def niRFSG_SelfTest(self, vi, self_test_result, self_test_message): # noqa: N802 + if self._defaults['SelfTest']['return'] != 0: + return self._defaults['SelfTest']['return'] + # self_test_result + if self._defaults['SelfTest']['selfTestResult'] is None: + raise MockFunctionCallError("niRFSG_SelfTest", param='selfTestResult') + if self_test_result is not None: + self_test_result.contents.value = self._defaults['SelfTest']['selfTestResult'] + return self._defaults['SelfTest']['return'] + + def niRFSG_SendSoftwareEdgeTrigger(self, vi, trigger, trigger_identifier): # noqa: N802 + if self._defaults['SendSoftwareEdgeTrigger']['return'] != 0: + return self._defaults['SendSoftwareEdgeTrigger']['return'] + return self._defaults['SendSoftwareEdgeTrigger']['return'] + + def niRFSG_SetArbWaveformNextWritePosition(self, vi, waveform_name, relative_to, offset): # noqa: N802 + if self._defaults['SetArbWaveformNextWritePosition']['return'] != 0: + return self._defaults['SetArbWaveformNextWritePosition']['return'] + return self._defaults['SetArbWaveformNextWritePosition']['return'] + + def niRFSG_SetAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['SetAttributeViBoolean']['return'] != 0: + return self._defaults['SetAttributeViBoolean']['return'] + return self._defaults['SetAttributeViBoolean']['return'] + + def niRFSG_SetAttributeViInt32(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['SetAttributeViInt32']['return'] != 0: + return self._defaults['SetAttributeViInt32']['return'] + return self._defaults['SetAttributeViInt32']['return'] + + def niRFSG_SetAttributeViInt64(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['SetAttributeViInt64']['return'] != 0: + return self._defaults['SetAttributeViInt64']['return'] + return self._defaults['SetAttributeViInt64']['return'] + + def niRFSG_SetAttributeViReal64(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['SetAttributeViReal64']['return'] != 0: + return self._defaults['SetAttributeViReal64']['return'] + return self._defaults['SetAttributeViReal64']['return'] + + def niRFSG_SetAttributeViSession(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['SetAttributeViSession']['return'] != 0: + return self._defaults['SetAttributeViSession']['return'] + return self._defaults['SetAttributeViSession']['return'] + + def niRFSG_SetAttributeViString(self, vi, channel_name, attribute, value): # noqa: N802 + if self._defaults['SetAttributeViString']['return'] != 0: + return self._defaults['SetAttributeViString']['return'] + return self._defaults['SetAttributeViString']['return'] + + def niRFSG_SetWaveformBurstStartLocations(self, vi, channel_name, number_of_locations, locations): # noqa: N802 + if self._defaults['SetWaveformBurstStartLocations']['return'] != 0: + return self._defaults['SetWaveformBurstStartLocations']['return'] + # locations + if self._defaults['SetWaveformBurstStartLocations']['locations'] is None: + raise MockFunctionCallError("niRFSG_SetWaveformBurstStartLocations", param='locations') + if locations is not None: + locations.contents.value = self._defaults['SetWaveformBurstStartLocations']['locations'] + return self._defaults['SetWaveformBurstStartLocations']['return'] + + def niRFSG_SetWaveformBurstStopLocations(self, vi, channel_name, number_of_locations, locations): # noqa: N802 + if self._defaults['SetWaveformBurstStopLocations']['return'] != 0: + return self._defaults['SetWaveformBurstStopLocations']['return'] + # locations + if self._defaults['SetWaveformBurstStopLocations']['locations'] is None: + raise MockFunctionCallError("niRFSG_SetWaveformBurstStopLocations", param='locations') + if locations is not None: + locations.contents.value = self._defaults['SetWaveformBurstStopLocations']['locations'] + return self._defaults['SetWaveformBurstStopLocations']['return'] + + def niRFSG_SetWaveformMarkerEventLocations(self, vi, channel_name, number_of_locations, locations): # noqa: N802 + if self._defaults['SetWaveformMarkerEventLocations']['return'] != 0: + return self._defaults['SetWaveformMarkerEventLocations']['return'] + # locations + if self._defaults['SetWaveformMarkerEventLocations']['locations'] is None: + raise MockFunctionCallError("niRFSG_SetWaveformMarkerEventLocations", param='locations') + if locations is not None: + locations.contents.value = self._defaults['SetWaveformMarkerEventLocations']['locations'] + return self._defaults['SetWaveformMarkerEventLocations']['return'] + + def niRFSG_UnlockSession(self, vi, caller_has_lock): # noqa: N802 + if self._defaults['UnlockSession']['return'] != 0: + return self._defaults['UnlockSession']['return'] + # caller_has_lock + if self._defaults['UnlockSession']['callerHasLock'] is None: + raise MockFunctionCallError("niRFSG_UnlockSession", param='callerHasLock') + if caller_has_lock is not None: + caller_has_lock.contents.value = self._defaults['UnlockSession']['callerHasLock'] + return self._defaults['UnlockSession']['return'] + + def niRFSG_WaitUntilSettled(self, vi, max_time_milliseconds): # noqa: N802 + if self._defaults['WaitUntilSettled']['return'] != 0: + return self._defaults['WaitUntilSettled']['return'] + return self._defaults['WaitUntilSettled']['return'] + + def niRFSG_WriteArbWaveform(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 + if self._defaults['WriteArbWaveform']['return'] != 0: + return self._defaults['WriteArbWaveform']['return'] + return self._defaults['WriteArbWaveform']['return'] + + def niRFSG_WriteArbWaveformF32(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 + if self._defaults['WriteArbWaveformF32']['return'] != 0: + return self._defaults['WriteArbWaveformF32']['return'] + return self._defaults['WriteArbWaveformF32']['return'] + + def niRFSG_WriteP2PEndpointI16(self, vi, stream_endpoint, number_of_samples, endpoint_data): # noqa: N802 + if self._defaults['WriteP2PEndpointI16']['return'] != 0: + return self._defaults['WriteP2PEndpointI16']['return'] + return self._defaults['WriteP2PEndpointI16']['return'] + + def niRFSG_WriteScript(self, vi, script): # noqa: N802 + if self._defaults['WriteScript']['return'] != 0: + return self._defaults['WriteScript']['return'] + return self._defaults['WriteScript']['return'] + + def niRFSG_close(self, vi): # noqa: N802 + if self._defaults['close']['return'] != 0: + return self._defaults['close']['return'] + return self._defaults['close']['return'] + + # Helper function to setup Mock object with default side effects and return values + def set_side_effects_and_return_values(self, mock_library): + mock_library.niRFSG_Abort.side_effect = MockFunctionCallError("niRFSG_Abort") + mock_library.niRFSG_Abort.return_value = 0 + mock_library.niRFSG_AllocateArbWaveform.side_effect = MockFunctionCallError("niRFSG_AllocateArbWaveform") + mock_library.niRFSG_AllocateArbWaveform.return_value = 0 + mock_library.niRFSG_ChangeExternalCalibrationPassword.side_effect = MockFunctionCallError("niRFSG_ChangeExternalCalibrationPassword") + mock_library.niRFSG_ChangeExternalCalibrationPassword.return_value = 0 + mock_library.niRFSG_CheckAttributeViBoolean.side_effect = MockFunctionCallError("niRFSG_CheckAttributeViBoolean") + mock_library.niRFSG_CheckAttributeViBoolean.return_value = 0 + mock_library.niRFSG_CheckAttributeViInt32.side_effect = MockFunctionCallError("niRFSG_CheckAttributeViInt32") + mock_library.niRFSG_CheckAttributeViInt32.return_value = 0 + mock_library.niRFSG_CheckAttributeViInt64.side_effect = MockFunctionCallError("niRFSG_CheckAttributeViInt64") + mock_library.niRFSG_CheckAttributeViInt64.return_value = 0 + mock_library.niRFSG_CheckAttributeViReal64.side_effect = MockFunctionCallError("niRFSG_CheckAttributeViReal64") + mock_library.niRFSG_CheckAttributeViReal64.return_value = 0 + mock_library.niRFSG_CheckAttributeViSession.side_effect = MockFunctionCallError("niRFSG_CheckAttributeViSession") + mock_library.niRFSG_CheckAttributeViSession.return_value = 0 + mock_library.niRFSG_CheckAttributeViString.side_effect = MockFunctionCallError("niRFSG_CheckAttributeViString") + mock_library.niRFSG_CheckAttributeViString.return_value = 0 + mock_library.niRFSG_CheckGenerationStatus.side_effect = MockFunctionCallError("niRFSG_CheckGenerationStatus") + mock_library.niRFSG_CheckGenerationStatus.return_value = 0 + mock_library.niRFSG_CheckIfConfigurationListExists.side_effect = MockFunctionCallError("niRFSG_CheckIfConfigurationListExists") + mock_library.niRFSG_CheckIfConfigurationListExists.return_value = 0 + mock_library.niRFSG_CheckIfScriptExists.side_effect = MockFunctionCallError("niRFSG_CheckIfScriptExists") + mock_library.niRFSG_CheckIfScriptExists.return_value = 0 + mock_library.niRFSG_CheckIfWaveformExists.side_effect = MockFunctionCallError("niRFSG_CheckIfWaveformExists") + mock_library.niRFSG_CheckIfWaveformExists.return_value = 0 + mock_library.niRFSG_ClearAllArbWaveforms.side_effect = MockFunctionCallError("niRFSG_ClearAllArbWaveforms") + mock_library.niRFSG_ClearAllArbWaveforms.return_value = 0 + mock_library.niRFSG_ClearArbWaveform.side_effect = MockFunctionCallError("niRFSG_ClearArbWaveform") + mock_library.niRFSG_ClearArbWaveform.return_value = 0 + mock_library.niRFSG_ClearError.side_effect = MockFunctionCallError("niRFSG_ClearError") + mock_library.niRFSG_ClearError.return_value = 0 + mock_library.niRFSG_ClearSelfCalibrateRange.side_effect = MockFunctionCallError("niRFSG_ClearSelfCalibrateRange") + mock_library.niRFSG_ClearSelfCalibrateRange.return_value = 0 + mock_library.niRFSG_Commit.side_effect = MockFunctionCallError("niRFSG_Commit") + mock_library.niRFSG_Commit.return_value = 0 + mock_library.niRFSG_ConfigureDeembeddingTableInterpolationLinear.side_effect = MockFunctionCallError("niRFSG_ConfigureDeembeddingTableInterpolationLinear") + mock_library.niRFSG_ConfigureDeembeddingTableInterpolationLinear.return_value = 0 + mock_library.niRFSG_ConfigureDeembeddingTableInterpolationNearest.side_effect = MockFunctionCallError("niRFSG_ConfigureDeembeddingTableInterpolationNearest") + mock_library.niRFSG_ConfigureDeembeddingTableInterpolationNearest.return_value = 0 + mock_library.niRFSG_ConfigureDeembeddingTableInterpolationSpline.side_effect = MockFunctionCallError("niRFSG_ConfigureDeembeddingTableInterpolationSpline") + mock_library.niRFSG_ConfigureDeembeddingTableInterpolationSpline.return_value = 0 + mock_library.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger") + mock_library.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger.return_value = 0 + mock_library.niRFSG_ConfigureDigitalEdgeScriptTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalEdgeScriptTrigger") + mock_library.niRFSG_ConfigureDigitalEdgeScriptTrigger.return_value = 0 + mock_library.niRFSG_ConfigureDigitalEdgeStartTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalEdgeStartTrigger") + mock_library.niRFSG_ConfigureDigitalEdgeStartTrigger.return_value = 0 + mock_library.niRFSG_ConfigureDigitalLevelScriptTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalLevelScriptTrigger") + mock_library.niRFSG_ConfigureDigitalLevelScriptTrigger.return_value = 0 + mock_library.niRFSG_ConfigureDigitalModulationUserDefinedWaveform.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalModulationUserDefinedWaveform") + mock_library.niRFSG_ConfigureDigitalModulationUserDefinedWaveform.return_value = 0 + mock_library.niRFSG_ConfigureGenerationMode.side_effect = MockFunctionCallError("niRFSG_ConfigureGenerationMode") + mock_library.niRFSG_ConfigureGenerationMode.return_value = 0 + mock_library.niRFSG_ConfigureOutputEnabled.side_effect = MockFunctionCallError("niRFSG_ConfigureOutputEnabled") + mock_library.niRFSG_ConfigureOutputEnabled.return_value = 0 + mock_library.niRFSG_ConfigureP2PEndpointFullnessStartTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureP2PEndpointFullnessStartTrigger") + mock_library.niRFSG_ConfigureP2PEndpointFullnessStartTrigger.return_value = 0 + mock_library.niRFSG_ConfigurePowerLevelType.side_effect = MockFunctionCallError("niRFSG_ConfigurePowerLevelType") + mock_library.niRFSG_ConfigurePowerLevelType.return_value = 0 + mock_library.niRFSG_ConfigurePxiChassisClk10.side_effect = MockFunctionCallError("niRFSG_ConfigurePxiChassisClk10") + mock_library.niRFSG_ConfigurePxiChassisClk10.return_value = 0 + mock_library.niRFSG_ConfigureRF.side_effect = MockFunctionCallError("niRFSG_ConfigureRF") + mock_library.niRFSG_ConfigureRF.return_value = 0 + mock_library.niRFSG_ConfigureRefClock.side_effect = MockFunctionCallError("niRFSG_ConfigureRefClock") + mock_library.niRFSG_ConfigureRefClock.return_value = 0 + mock_library.niRFSG_ConfigureSignalBandwidth.side_effect = MockFunctionCallError("niRFSG_ConfigureSignalBandwidth") + mock_library.niRFSG_ConfigureSignalBandwidth.return_value = 0 + mock_library.niRFSG_ConfigureSoftwareScriptTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureSoftwareScriptTrigger") + mock_library.niRFSG_ConfigureSoftwareScriptTrigger.return_value = 0 + mock_library.niRFSG_ConfigureSoftwareStartTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureSoftwareStartTrigger") + mock_library.niRFSG_ConfigureSoftwareStartTrigger.return_value = 0 + mock_library.niRFSG_CreateConfigurationList.side_effect = MockFunctionCallError("niRFSG_CreateConfigurationList") + mock_library.niRFSG_CreateConfigurationList.return_value = 0 + mock_library.niRFSG_CreateConfigurationListStep.side_effect = MockFunctionCallError("niRFSG_CreateConfigurationListStep") + mock_library.niRFSG_CreateConfigurationListStep.return_value = 0 + mock_library.niRFSG_CreateDeembeddingSparameterTableS2PFile.side_effect = MockFunctionCallError("niRFSG_CreateDeembeddingSparameterTableS2PFile") + mock_library.niRFSG_CreateDeembeddingSparameterTableS2PFile.return_value = 0 + mock_library.niRFSG_DeleteAllDeembeddingTables.side_effect = MockFunctionCallError("niRFSG_DeleteAllDeembeddingTables") + mock_library.niRFSG_DeleteAllDeembeddingTables.return_value = 0 + mock_library.niRFSG_DeleteConfigurationList.side_effect = MockFunctionCallError("niRFSG_DeleteConfigurationList") + mock_library.niRFSG_DeleteConfigurationList.return_value = 0 + mock_library.niRFSG_DeleteDeembeddingTable.side_effect = MockFunctionCallError("niRFSG_DeleteDeembeddingTable") + mock_library.niRFSG_DeleteDeembeddingTable.return_value = 0 + mock_library.niRFSG_Disable.side_effect = MockFunctionCallError("niRFSG_Disable") + mock_library.niRFSG_Disable.return_value = 0 + mock_library.niRFSG_DisableConfigurationListStepTrigger.side_effect = MockFunctionCallError("niRFSG_DisableConfigurationListStepTrigger") + mock_library.niRFSG_DisableConfigurationListStepTrigger.return_value = 0 + mock_library.niRFSG_DisableScriptTrigger.side_effect = MockFunctionCallError("niRFSG_DisableScriptTrigger") + mock_library.niRFSG_DisableScriptTrigger.return_value = 0 + mock_library.niRFSG_DisableStartTrigger.side_effect = MockFunctionCallError("niRFSG_DisableStartTrigger") + mock_library.niRFSG_DisableStartTrigger.return_value = 0 + mock_library.niRFSG_ErrorMessage.side_effect = MockFunctionCallError("niRFSG_ErrorMessage") + mock_library.niRFSG_ErrorMessage.return_value = 0 + mock_library.niRFSG_ErrorQuery.side_effect = MockFunctionCallError("niRFSG_ErrorQuery") + mock_library.niRFSG_ErrorQuery.return_value = 0 + mock_library.niRFSG_ExportSignal.side_effect = MockFunctionCallError("niRFSG_ExportSignal") + mock_library.niRFSG_ExportSignal.return_value = 0 + mock_library.niRFSG_GetAllNamedWaveformNames.side_effect = MockFunctionCallError("niRFSG_GetAllNamedWaveformNames") + mock_library.niRFSG_GetAllNamedWaveformNames.return_value = 0 + mock_library.niRFSG_GetAllScriptNames.side_effect = MockFunctionCallError("niRFSG_GetAllScriptNames") + mock_library.niRFSG_GetAllScriptNames.return_value = 0 + mock_library.niRFSG_GetAttributeViBoolean.side_effect = MockFunctionCallError("niRFSG_GetAttributeViBoolean") + mock_library.niRFSG_GetAttributeViBoolean.return_value = 0 + mock_library.niRFSG_GetAttributeViInt32.side_effect = MockFunctionCallError("niRFSG_GetAttributeViInt32") + mock_library.niRFSG_GetAttributeViInt32.return_value = 0 + mock_library.niRFSG_GetAttributeViInt64.side_effect = MockFunctionCallError("niRFSG_GetAttributeViInt64") + mock_library.niRFSG_GetAttributeViInt64.return_value = 0 + mock_library.niRFSG_GetAttributeViReal64.side_effect = MockFunctionCallError("niRFSG_GetAttributeViReal64") + mock_library.niRFSG_GetAttributeViReal64.return_value = 0 + mock_library.niRFSG_GetAttributeViSession.side_effect = MockFunctionCallError("niRFSG_GetAttributeViSession") + mock_library.niRFSG_GetAttributeViSession.return_value = 0 + mock_library.niRFSG_GetAttributeViString.side_effect = MockFunctionCallError("niRFSG_GetAttributeViString") + mock_library.niRFSG_GetAttributeViString.return_value = 0 + mock_library.niRFSG_GetChannelName.side_effect = MockFunctionCallError("niRFSG_GetChannelName") + mock_library.niRFSG_GetChannelName.return_value = 0 + mock_library.niRFSG_GetDeembeddingSparameters.side_effect = MockFunctionCallError("niRFSG_GetDeembeddingSparameters") + mock_library.niRFSG_GetDeembeddingSparameters.return_value = 0 + mock_library.niRFSG_GetError.side_effect = MockFunctionCallError("niRFSG_GetError") + mock_library.niRFSG_GetError.return_value = 0 + mock_library.niRFSG_GetExternalCalibrationLastDateAndTime.side_effect = MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime") + mock_library.niRFSG_GetExternalCalibrationLastDateAndTime.return_value = 0 + mock_library.niRFSG_GetMaxSettablePower.side_effect = MockFunctionCallError("niRFSG_GetMaxSettablePower") + mock_library.niRFSG_GetMaxSettablePower.return_value = 0 + mock_library.niRFSG_GetSelfCalibrationDateAndTime.side_effect = MockFunctionCallError("niRFSG_GetSelfCalibrationDateAndTime") + mock_library.niRFSG_GetSelfCalibrationDateAndTime.return_value = 0 + mock_library.niRFSG_GetSelfCalibrationTemperature.side_effect = MockFunctionCallError("niRFSG_GetSelfCalibrationTemperature") + mock_library.niRFSG_GetSelfCalibrationTemperature.return_value = 0 + mock_library.niRFSG_GetStreamEndpointHandle.side_effect = MockFunctionCallError("niRFSG_GetStreamEndpointHandle") + mock_library.niRFSG_GetStreamEndpointHandle.return_value = 0 + mock_library.niRFSG_GetTerminalName.side_effect = MockFunctionCallError("niRFSG_GetTerminalName") + mock_library.niRFSG_GetTerminalName.return_value = 0 + mock_library.niRFSG_GetWaveformBurstStartLocations.side_effect = MockFunctionCallError("niRFSG_GetWaveformBurstStartLocations") + mock_library.niRFSG_GetWaveformBurstStartLocations.return_value = 0 + mock_library.niRFSG_GetWaveformBurstStopLocations.side_effect = MockFunctionCallError("niRFSG_GetWaveformBurstStopLocations") + mock_library.niRFSG_GetWaveformBurstStopLocations.return_value = 0 + mock_library.niRFSG_GetWaveformMarkerEventLocations.side_effect = MockFunctionCallError("niRFSG_GetWaveformMarkerEventLocations") + mock_library.niRFSG_GetWaveformMarkerEventLocations.return_value = 0 + mock_library.niRFSG_InitWithOptions.side_effect = MockFunctionCallError("niRFSG_InitWithOptions") + mock_library.niRFSG_InitWithOptions.return_value = 0 + mock_library.niRFSG_Initiate.side_effect = MockFunctionCallError("niRFSG_Initiate") + mock_library.niRFSG_Initiate.return_value = 0 + mock_library.niRFSG_LoadConfigurationsFromFile.side_effect = MockFunctionCallError("niRFSG_LoadConfigurationsFromFile") + mock_library.niRFSG_LoadConfigurationsFromFile.return_value = 0 + mock_library.niRFSG_LockSession.side_effect = MockFunctionCallError("niRFSG_LockSession") + mock_library.niRFSG_LockSession.return_value = 0 + mock_library.niRFSG_PerformPowerSearch.side_effect = MockFunctionCallError("niRFSG_PerformPowerSearch") + mock_library.niRFSG_PerformPowerSearch.return_value = 0 + mock_library.niRFSG_PerformThermalCorrection.side_effect = MockFunctionCallError("niRFSG_PerformThermalCorrection") + mock_library.niRFSG_PerformThermalCorrection.return_value = 0 + mock_library.niRFSG_QueryArbWaveformCapabilities.side_effect = MockFunctionCallError("niRFSG_QueryArbWaveformCapabilities") + mock_library.niRFSG_QueryArbWaveformCapabilities.return_value = 0 + mock_library.niRFSG_ReadAndDownloadWaveformFromFileTDMS.side_effect = MockFunctionCallError("niRFSG_ReadAndDownloadWaveformFromFileTDMS") + mock_library.niRFSG_ReadAndDownloadWaveformFromFileTDMS.return_value = 0 + mock_library.niRFSG_Reset.side_effect = MockFunctionCallError("niRFSG_Reset") + mock_library.niRFSG_Reset.return_value = 0 + mock_library.niRFSG_ResetAttribute.side_effect = MockFunctionCallError("niRFSG_ResetAttribute") + mock_library.niRFSG_ResetAttribute.return_value = 0 + mock_library.niRFSG_ResetDevice.side_effect = MockFunctionCallError("niRFSG_ResetDevice") + mock_library.niRFSG_ResetDevice.return_value = 0 + mock_library.niRFSG_ResetWithDefaults.side_effect = MockFunctionCallError("niRFSG_ResetWithDefaults") + mock_library.niRFSG_ResetWithDefaults.return_value = 0 + mock_library.niRFSG_ResetWithOptions.side_effect = MockFunctionCallError("niRFSG_ResetWithOptions") + mock_library.niRFSG_ResetWithOptions.return_value = 0 + mock_library.niRFSG_RevisionQuery.side_effect = MockFunctionCallError("niRFSG_RevisionQuery") + mock_library.niRFSG_RevisionQuery.return_value = 0 + mock_library.niRFSG_SaveConfigurationsToFile.side_effect = MockFunctionCallError("niRFSG_SaveConfigurationsToFile") + mock_library.niRFSG_SaveConfigurationsToFile.return_value = 0 + mock_library.niRFSG_SelectArbWaveform.side_effect = MockFunctionCallError("niRFSG_SelectArbWaveform") + mock_library.niRFSG_SelectArbWaveform.return_value = 0 + mock_library.niRFSG_SelfCal.side_effect = MockFunctionCallError("niRFSG_SelfCal") + mock_library.niRFSG_SelfCal.return_value = 0 + mock_library.niRFSG_SelfCalibrateRange.side_effect = MockFunctionCallError("niRFSG_SelfCalibrateRange") + mock_library.niRFSG_SelfCalibrateRange.return_value = 0 + mock_library.niRFSG_SelfTest.side_effect = MockFunctionCallError("niRFSG_SelfTest") + mock_library.niRFSG_SelfTest.return_value = 0 + mock_library.niRFSG_SendSoftwareEdgeTrigger.side_effect = MockFunctionCallError("niRFSG_SendSoftwareEdgeTrigger") + mock_library.niRFSG_SendSoftwareEdgeTrigger.return_value = 0 + mock_library.niRFSG_SetArbWaveformNextWritePosition.side_effect = MockFunctionCallError("niRFSG_SetArbWaveformNextWritePosition") + mock_library.niRFSG_SetArbWaveformNextWritePosition.return_value = 0 + mock_library.niRFSG_SetAttributeViBoolean.side_effect = MockFunctionCallError("niRFSG_SetAttributeViBoolean") + mock_library.niRFSG_SetAttributeViBoolean.return_value = 0 + mock_library.niRFSG_SetAttributeViInt32.side_effect = MockFunctionCallError("niRFSG_SetAttributeViInt32") + mock_library.niRFSG_SetAttributeViInt32.return_value = 0 + mock_library.niRFSG_SetAttributeViInt64.side_effect = MockFunctionCallError("niRFSG_SetAttributeViInt64") + mock_library.niRFSG_SetAttributeViInt64.return_value = 0 + mock_library.niRFSG_SetAttributeViReal64.side_effect = MockFunctionCallError("niRFSG_SetAttributeViReal64") + mock_library.niRFSG_SetAttributeViReal64.return_value = 0 + mock_library.niRFSG_SetAttributeViSession.side_effect = MockFunctionCallError("niRFSG_SetAttributeViSession") + mock_library.niRFSG_SetAttributeViSession.return_value = 0 + mock_library.niRFSG_SetAttributeViString.side_effect = MockFunctionCallError("niRFSG_SetAttributeViString") + mock_library.niRFSG_SetAttributeViString.return_value = 0 + mock_library.niRFSG_SetWaveformBurstStartLocations.side_effect = MockFunctionCallError("niRFSG_SetWaveformBurstStartLocations") + mock_library.niRFSG_SetWaveformBurstStartLocations.return_value = 0 + mock_library.niRFSG_SetWaveformBurstStopLocations.side_effect = MockFunctionCallError("niRFSG_SetWaveformBurstStopLocations") + mock_library.niRFSG_SetWaveformBurstStopLocations.return_value = 0 + mock_library.niRFSG_SetWaveformMarkerEventLocations.side_effect = MockFunctionCallError("niRFSG_SetWaveformMarkerEventLocations") + mock_library.niRFSG_SetWaveformMarkerEventLocations.return_value = 0 + mock_library.niRFSG_UnlockSession.side_effect = MockFunctionCallError("niRFSG_UnlockSession") + mock_library.niRFSG_UnlockSession.return_value = 0 + mock_library.niRFSG_WaitUntilSettled.side_effect = MockFunctionCallError("niRFSG_WaitUntilSettled") + mock_library.niRFSG_WaitUntilSettled.return_value = 0 + mock_library.niRFSG_WriteArbWaveform.side_effect = MockFunctionCallError("niRFSG_WriteArbWaveform") + mock_library.niRFSG_WriteArbWaveform.return_value = 0 + mock_library.niRFSG_WriteArbWaveformF32.side_effect = MockFunctionCallError("niRFSG_WriteArbWaveformF32") + mock_library.niRFSG_WriteArbWaveformF32.return_value = 0 + mock_library.niRFSG_WriteP2PEndpointI16.side_effect = MockFunctionCallError("niRFSG_WriteP2PEndpointI16") + mock_library.niRFSG_WriteP2PEndpointI16.return_value = 0 + mock_library.niRFSG_WriteScript.side_effect = MockFunctionCallError("niRFSG_WriteScript") + mock_library.niRFSG_WriteScript.return_value = 0 + mock_library.niRFSG_close.side_effect = MockFunctionCallError("niRFSG_close") + mock_library.niRFSG_close.return_value = 0 diff --git a/generated/nirfsg/setup.py b/generated/nirfsg/setup.py new file mode 100644 index 0000000000..c063b0222f --- /dev/null +++ b/generated/nirfsg/setup.py @@ -0,0 +1,55 @@ +#!/usr/bin/python +# This file was generated + + +from setuptools import setup + + +pypi_name = 'nirfsg' + + +def read_contents(file_to_read): + with open(file_to_read, 'r') as f: + return f.read() + + +setup( + name=pypi_name, + zip_safe=True, + version='1.4.8.dev0', + description='NI-RFSG Python API', + long_description=read_contents('README.rst'), + long_description_content_type='text/x-rst', + author='NI', + author_email="opensource@ni.com", + url="https://github.com/ni/nimi-python", + maintainer="NI", + maintainer_email="opensource@ni.com", + keywords=['nirfsg'], + license='MIT', + include_package_data=True, + packages=['nirfsg'], + python_requires='>=3.9', + install_requires=[ + 'hightime>=0.2.0', + 'nitclk', + ], + classifiers=[ + "Development Status :: 3 - Alpha", + "Intended Audience :: Developers", + "Intended Audience :: Manufacturing", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: MIT License", + "Operating System :: Microsoft :: Windows", + "Operating System :: POSIX", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: Implementation :: CPython", + "Topic :: System :: Hardware :: Hardware Drivers" + ], + package_data={pypi_name: ['VERSION']}, +) diff --git a/generated/nirfsg/tox-system_tests.ini b/generated/nirfsg/tox-system_tests.ini new file mode 100644 index 0000000000..a5031430b1 --- /dev/null +++ b/generated/nirfsg/tox-system_tests.ini @@ -0,0 +1,69 @@ +# Tox (http://tox.testrun.org/) is a tool for running tests +# in multiple virtualenvs. This configuration file will run the +# test suite on all supported python versions. To use it, "pip install tox" +# and then run "tox -c tox-system_tests.ini" from the driver directory. (generated/nirfsg) +[tox] +envlist = py{39,310,311,312,313}-nirfsg-wheel_dep,py{39,310,311,312,313}-nirfsg-system_tests, py313-nirfsg-coverage +skip_missing_interpreters=True +ignore_basepython_conflict=True +# We put the .tox directory outside of the Jenkins workspace so that it isn't wiped with the rest of the repo +toxworkdir = ../../../.tox + +[testenv] +description = + nirfsg-wheel_dep: Build the nitclk wheel because we use it in nirfsg tests + nirfsg-system_tests: Run nirfsg system tests (requires NI-RFSG runtime to be installed) + nirfsg-coverage: Prepare coverage report for upload to codecov.io # upload handled by GitHub Actions + +changedir = + nirfsg-wheel_dep: ../nitclk + nirfsg-system_tests: . + nirfsg-coverage: . + +commands = + nirfsg-wheel_dep: python -m build --wheel + + # --disable-pip-version-check prevents pip from telling us we need to upgrade pip, since we are doing that now + nirfsg-system_tests: python -m pip install --disable-pip-version-check --upgrade pip + nirfsg-system_tests: python ../../tools/install_local_wheel.py --driver nitclk --start-path ../.. + nirfsg-system_tests: python -c "import nirfsg; nirfsg.print_diagnostic_information()" + nirfsg-system_tests: coverage run --rcfile=../../tools/coverage_system_tests.rc --source nirfsg --parallel-mode -m pytest ../../src/nirfsg/examples --junitxml=../junit/junit-nirfsg-{envname}-examples-{env:BITNESS:64}.xml {posargs} + nirfsg-system_tests: coverage run --rcfile=../../tools/coverage_system_tests.rc --source nirfsg --parallel-mode -m pytest ../../src/nirfsg/system_tests -c tox-system_tests.ini --junitxml=../junit/junit-nirfsg-{envname}-{env:BITNESS:64}.xml --durations=5 {posargs} + + nirfsg-coverage: coverage combine --rcfile=../../tools/coverage_system_tests.rc ./ + # Create the report to upload + nirfsg-coverage: coverage xml -i --rcfile=../../tools/coverage_system_tests.rc + # Display the coverage results + nirfsg-coverage: coverage report --rcfile=../../tools/coverage_system_tests.rc + +deps = + nirfsg-wheel_dep: build + + nirfsg-system_tests: pytest + nirfsg-system_tests: coverage + nirfsg-system_tests: numpy + nirfsg-system_tests: hightime + nirfsg-system_tests: fasteners + nirfsg-system_tests: pytest-json + + nirfsg-coverage: coverage + +depends = + nirfsg-coverage: py{39,310,311,312,313}-nirfsg-system_tests + nirfsg-system_tests: py{39,310,311,312,313}-nirfsg-wheel_dep, + +passenv = + GIT_BRANCH + GIT_COMMIT + BUILD_URL + BRANCH_NAME + JENKINS_URL + BUILD_NUMBER + +[pytest] +addopts = --verbose +filterwarnings = + error::pytest.PytestUnhandledThreadExceptionWarning +norecursedirs = .* build dist CVS _darcs {arch} *.egg venv +junit_suite_name = nimi-python +junit_family = xunit1 diff --git a/src/nirfsg/metadata/__init__.py b/src/nirfsg/metadata/__init__.py new file mode 100644 index 0000000000..a3666701cb --- /dev/null +++ b/src/nirfsg/metadata/__init__.py @@ -0,0 +1,26 @@ +from metadata.config import config +from metadata.functions import functions +from metadata.attributes import attributes +from metadata.enums import enums +import metadata.functions_addon +import metadata.attributes_addon +import metadata.enums_addon +import metadata.config_addon + +import build.helper as helper +import sys + +# Update generated functions data with hand maintained data +config['modules'] = sys.modules +helper.add_all_metadata(functions, attributes, enums, config) + +#if 'note' not in config['functions']['_init_function']['parameters'][3]: +# config['functions']['_init_function']['parameters'][3]['note'] = [] +#if not isinstance(config['functions']['_init_function']['parameters'][3]['note'], list): +# config['functions']['_init_function']['parameters'][3]['note'] = [config['functions']['_init_function']['parameters'][3]['note']] +#import pdb; pdb.set_trace() + + +__version__ = config['module_version'] + + diff --git a/src/nirfsg/metadata/attributes.py b/src/nirfsg/metadata/attributes.py new file mode 100644 index 0000000000..1a42c19a92 --- /dev/null +++ b/src/nirfsg/metadata/attributes.py @@ -0,0 +1,5503 @@ +# -*- coding: utf-8 -*- +# This file is generated from NI-RFSG API metadata version 25.5.0d9999 +attributes = { + 1050002: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to validate attribute values and function parameters. Range checking parameters is very useful for debugging. After you validate your program, set this attribute to VI_FALSE to disable range checking and maximize performance. NI-RFSG can choose to ignore range checking for particular attributes, regardless of the setting of this attribute. Use the nirfsg_InitWithOptions function to override the default value.\n\n **Default Value:** VI_TRUE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Enable range checking.' + ], + [ + 'VI_FALSE', + 'Disable range checking.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Inherent IVI Attributes:User Options:Range Check', + 'name': 'RANGE_CHECK', + 'type': 'ViBoolean' + }, + 1050003: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether NI-RFSG queries the NI-RFSG device status after each operation. Querying the device status is useful for debugging. After you validate your program, set this attribute to VI_FALSE to disable status checking and maximize performance.\n\n NI-RFSG can choose to ignore status checking for particular attributes, regardless of the setting of this attribute. Use the nirfsg_InitWithOptions function to override the default value.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'NI-RFSG queries the instrument status after each operation.' + ], + [ + 'VI_FALSE', + 'NI-RFSG does not query the instrument status.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Inherent IVI Attributes:User Options:Query Instrument Status', + 'name': 'QUERY_INSTRUMENT_STATUS', + 'type': 'ViBoolean' + }, + 1050004: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to cache the value of attributes. When caching is enabled, NI-RFSG tracks the current NI-RFSG device settings and avoids sending redundant commands to the device. NI-RFSG can always cache or never cache particular attributes, regardless of the setting of this attribute. Call the nirfsg_InitWithOptions function to override the default value.\n\n **Default Value:** VI_TRUE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Enables caching.' + ], + [ + 'VI_FALSE', + 'Disables caching.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Inherent IVI Attributes:User Options:Cache', + 'name': 'CACHE', + 'type': 'ViBoolean' + }, + 1050005: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns whether NI-RFSG simulates I/O operations. This attribute is useful for debugging applications without using hardware. After a session is opened, you cannot change the simulation state. Use the nirfsg_InitWithOptions function to enable simulation.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Simulation is enabled.' + ], + [ + 'VI_FALSE', + 'Simulation is disabled.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Inherent IVI Attributes:User Options:Simulate', + 'name': 'SIMULATE', + 'type': 'ViBoolean' + }, + 1050006: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the IVI engine keeps a list of the value coercions it makes for integer and real type attributes.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'note': 'Enabling record value coercions is not supported.', + 'table_body': [ + [ + 'VI_TRUE', + 'The IVI engine keeps a list of coercions.' + ], + [ + 'VI_FALSE', + 'The IVI engine does not keep a list of coercions.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Inherent IVI Attributes:User Options:Record Value Coercions', + 'name': 'RECORD_COERCIONS', + 'type': 'ViBoolean' + }, + 1050021: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to perform interchangeability checking and retrieve interchangeability warnings.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Defined Values**:\n ', + 'note': 'Enabling interchangeability check is not supported.', + 'table_body': [ + [ + 'VI_TRUE', + 'Interchange check is enabled.' + ], + [ + 'VI_FALSE', + 'Interchange check is disabled.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Inherent IVI Attributes:User Options:Interchange Check', + 'name': 'INTERCHANGE_CHECK', + 'type': 'ViBoolean' + }, + 1050302: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the prefix for NI-RFSG. The name of each user-callable function in NI-RFSG starts with this prefix. This attribute returns\n\n niRFSG.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Identification:Driver Prefix', + 'name': 'SPECIFIC_DRIVER_PREFIX', + 'type': 'ViString' + }, + 1050304: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the resource name NI-RFSG uses to identify the physical device. If you initialize NI-RFSG with a logical name, this attribute contains the resource name that corresponds to the entry in the IVI Configuration Utility. If you initialize NI-RFSG with the resource name, this attribute contains that value.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Advanced Session Information:Resource Descriptor', + 'name': 'IO_RESOURCE_DESCRIPTOR', + 'type': 'ViString' + }, + 1050305: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the logical name you specified when opening the current IVI session. You can pass a logical name to the nirfsg_Init function or the nirfsg_InitWithOptions function. The IVI Configuration Utility must contain an entry for the logical name. The logical name entry refers to a driver session section in the IVI Configuration file. The driver session section specifies a physical device and initial user options.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Advanced Session Information:Logical Name', + 'name': 'LOGICAL_NAME', + 'type': 'ViString' + }, + 1050327: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains a model code of the NI-RFSG device. For drivers that support more than one device, this attribute contains a comma-separated list of supported devices.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Capabilities:Supported Instrument Models', + 'name': 'SUPPORTED_INSTRUMENT_MODELS', + 'type': 'ViString' + }, + 1050401: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains a comma-separated list of class-extension groups that NI-RFSG implements.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Capabilities:Class Group Capabilities', + 'name': 'GROUP_CAPABILITIES', + 'type': 'ViString' + }, + 1050510: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the firmware revision information for the NI-RFSG device you are currently using.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **High-Level Functions**:\n\n - nirfsg_RevisionQuery' + }, + 'lv_property': 'Inherent IVI Attributes:Instrument Identification:Firmware Revision', + 'name': 'INSTRUMENT_FIRMWARE_REVISION', + 'type': 'ViString' + }, + 1050511: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the name of the manufacturer of the NI-RFSG device you are currently using.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Instrument Identification:Manufacturer', + 'name': 'INSTRUMENT_MANUFACTURER', + 'type': 'ViString' + }, + 1050512: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the model number or name of the NI-RFSG device that you are currently using. For drivers that support more than one device, this attribute returns a comma-separated list of supported devices.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Instrument Identification:Model', + 'name': 'INSTRUMENT_MODEL', + 'type': 'ViString' + }, + 1050513: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the name of the vendor that supplies NI-RFSG. This attribute returns\n\n National Instruments.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Identification:Driver Vendor', + 'name': 'SPECIFIC_DRIVER_VENDOR', + 'type': 'ViString' + }, + 1050514: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains a brief description of NI-RFSG. This attribute returns\n\n National Instruments RF Signal Generator Instrument Driver.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Identification:Description', + 'name': 'SPECIFIC_DRIVER_DESCRIPTION', + 'type': 'ViString' + }, + 1050515: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the major version number of the class specification with which NI-RFSG is compliant.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Identification:Class Specification Major Version', + 'name': 'SPECIFIC_DRIVER_CLASS_SPEC_MAJOR_VERSION', + 'type': 'ViInt32' + }, + 1050516: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the minor version number of the class specification with which NI-RFSG is compliant.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Identification:Class Specification Minor Version', + 'name': 'SPECIFIC_DRIVER_CLASS_SPEC_MINOR_VERSION', + 'type': 'ViInt32' + }, + 1050551: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains additional version information about NI-RFSG. For example, NI-RFSG can return\n\n Driver: NI-RFSG14.5.0, Compiler: MSVC9.00, Components: IVI Engine4.00, VISA-Spec4.00 as the value of this attribute.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Inherent IVI Attributes:Driver Identification:Revision', + 'name': 'SPECIFIC_DRIVER_REVISION', + 'type': 'ViString' + }, + 1150001: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Reference Clock source. To set this attribute, the NI-RFSG device must be in the Configuration state. Only certain combinations of this attribute and the NIRFSG_ATTR_PXI_CHASSIS_CLK10_SOURCE attribute are valid, as shown in the following table.\n\n **Default Value:** NIRFSG_VAL_ONBOARD_CLOCK_STR\n\n **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Timing Configurations `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureRefClock\n \n **Defined Values**:\n ', + 'note': 'The PXI-5670/5671 and PXIe-5672 devices also allow you to drive the PXI 10 MHz backplane clock on PXI chassis *only* using the NIRFSG_ATTR_PXI_CHASSIS_CLK10_SOURCE attribute.', + 'table_body': [ + [ + 'NIRFSG_VAL_ONBOARD_CLOCK_STR', + 'OnboardClock', + 'Uses the onboard Reference Clock as the clock source. **PXIe-5830/5831** —For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831/5832, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. ** PXIe-5831/5832 with PXIe-5653** —Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. **PXIe-5841 with PXIe-5655** —Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.' + ], + [ + 'NIRFSG_VAL_CLK_IN_STR', + 'ClkIn', + 'Uses the clock signal present at the front panel CLK IN connector as the Reference Clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655.' + ], + [ + 'NIRFSG_VAL_REF_IN_STR', + 'RefIn', + 'Uses the clock signal present at the front panel REF IN connector as the Reference Clock source. **PXIe-5830/5831** —For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831/5832, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831/5832, lock the external signal to the PXIe-3622 REF IN connector. **PXIe-5831/5832 with PXIe-5653** —Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5841 with PXIe-5655** —Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.' + ], + [ + 'NIRFSG_VAL_PXI_CLK_STR', + 'PXI_CLK', + 'Uses the PXI_CLK signal, which is present on the PXI backplane, as the Reference Clock source.' + ], + [ + 'NIRFSG_VAL_REF_IN_2_STR', + 'RefIn2', + 'This value is not valid on any supported devices.' + ], + [ + 'NIRFSG_VAL_PXI_CLK_MASTER_STR', + 'PXI_ClkMaster', + 'This value is valid on only the PXIe-5831/5832 with PXIe-5653. **PXIe-5831/5832 with PXIe-5653** —NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use NIRFSG_VAL_PXI_CLK_STR as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ReferenceClockSource', + 'lv_property': 'Clock:Reference Clock Source', + 'name': 'REF_CLOCK_SOURCE', + 'type': 'ViString' + }, + 1150002: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the source terminal for the Start Trigger. This attribute is used when the NIRFSG_ATTR_START_TRIGGER_TYPE attribute is set to digital edge. The NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute is not case-sensitive. To set the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeStartTrigger\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The trigger is received on PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The trigger is received on PFI 1.' + ], + [ + 'NIRFSG_VAL_PFI2_STR', + 'PFI2', + 'The trigger is received on PFI 2.' + ], + [ + 'NIRFSG_VAL_PFI3_STR', + 'PFI3', + 'The trigger is received on PFI 3.' + ], + [ + 'NIRFSG_VAL_PXI_STAR_STR', + 'PXI_Star', + 'The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG7_STR', + 'PXI_Trig7', + 'The trigger is received on PXI trigger line 7.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'PXIe_DStarB', + 'The trigger is received on the PXI DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + ], + [ + 'NIRFSG_VAL_TRIG_IN_STR', + 'TrigIn', + 'The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_SYNC_SCRIPT_TRIGGER_STR', + 'Sync_Script', + 'The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'StartTrigDigEdgeSource', + 'lv_property': 'Triggers:Start:Digital Edge:Source', + 'name': 'DIGITAL_EDGE_START_TRIGGER_SOURCE', + 'type': 'ViString' + }, + 1150003: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Start Trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The signal is not exported.' + ], + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The signal is exported to the PFI 1 connector.' + ], + [ + 'NIRFSG_VAL_PFI4_STR', + 'PFI4', + 'The signal is exported to the PFI 4 connector.' + ], + [ + 'NIRFSG_VAL_PFI5_STR', + 'PFI5', + 'The signal is exported to the PFI 5 connector.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'PXIe_DStarC', + 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + ], + [ + 'NIRFSG_VAL_TRIG_OUT_STR', + 'TrigOut', + 'The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'StartTrigExportOutputTerm', + 'lv_property': 'Triggers:Start:Export Output Terminal', + 'name': 'EXPORTED_START_TRIGGER_OUTPUT_TERMINAL', + 'type': 'ViString' + }, + 1150004: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the clock source for driving the PXI 10 MHz backplane Reference Clock. This attribute is configurable if the PXI-5610 upconverter module is installed in *only* Slot 2 of a PXI chassis. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Defined Values**:\n\nName (Value): Description\n\nNIRFSG_VAL_NONE (0) :Do not drive the PXI_CLK10 signal.\n\nNIRFSG_VAL_ONBOARD_CLOCK_STR (OnboardClock) :Uses the highly stable oven-controlled onboard Reference Clock to drive the PXI_CLK signal.\n\nNIRFSG_VAL_REF_IN_STR (RefIn) :Uses the clock present at the front panel REF IN connector to drive the PXI_CLK signal.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXI-5610, PXI-5670/5671\n\n **Related Topics**\n\n `Timing Configurations `_\n\n `System Reference Clock `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigurePxiChassisClk10\n \n \n Only certain combinations of this attribute and the NIRFSG_ATTR_REF_CLOCK_SOURCE attribute are valid, as shown in the following table.\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_NONE, NIRFSG_VAL_ONBOARD_CLOCK_STR', + 'NIRFSG_VAL_ONBOARD_CLOCK_STR' + ], + [ + 'NIRFSG_VAL_NONE, NIRFSG_VAL_REF_IN_STR', + 'NIRFSG_VAL_REF_IN_STR' + ], + [ + 'NIRFSG_VAL_NONE, NIRFSG_VAL_REF_IN_STR', + 'NIRFSG_VAL_PXI_CLK_STR' + ] + ], + 'table_header': [ + 'NIRFSG_ATTR_PXI_CHASSIS_CLK10_SOURCE Setting', + 'NIRFSG_ATTR_REF_CLOCK_SOURCE Setting' + ] + }, + 'enum': 'PxiChassisClk10Source', + 'lv_property': 'Clock:PXI Chassis Clk 10 Source', + 'name': 'PXI_CHASSIS_CLK10_SOURCE', + 'type': 'ViString' + }, + 1150005: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the driver maintains phase continuity in the arbitrary waveforms. When this attribute is set to NIRFSG_VAL_ENABLE, NI-RFSG may increase the waveform size. When this attribute is set to NIRFSG_VAL_ENABLE, the NIRFSG_ATTR_FREQUENCY_TOLERANCE attribute specifies the maximum allowable frequency error that can be introduced when keeping the signal phase-continuous. To set the NIRFSG_ATTR_PHASE_CONTINUITY_ENABLED attribute, the NI-RFSG device must be in the Configuration state. NIRFSG_ATTR_PHASE_CONTINUITY_ENABLED applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT.\n\n PXI-5671: When using the PXI-5671 with I/Q rates less than or equal to 8.33MS/s, an input phase-continuous signal is always phase-continuous upon output, and this attribute has no effect.\n\n PXIe-5644/5645/5646, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Phase continuity is *always* enabled on this device.\n\n **Default Value:** NIRFSG_VAL_AUTO\n \n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Related Topics**\n\n `Phase Continuity `_\n\n `Arb Waveform Mode Tuning Speed Factors `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_AUTO', + '-1 (-0x1)', + 'When the Generation Mode property is set to Arb Waveform, the arbitrary waveform may be repeated to ensure phase continuity after upconversion. This setting could cause waveform size to increase. When the Generation Mode property is set to Script, the Phase Continuity Enabled property indicates a warning condition. NI-RFSG cannot guarantee a phase-continuous output signal in Script mode. Phase continuity is automatically disabled in script mode, and the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion.' + ], + [ + 'NIRFSG_VAL_DISABLE', + '0 (0x0)', + 'When the Generation Mode property is set to Arb Waveform, the arbitrary waveform is played back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained. When the Generation Mode property is set to Script, the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained.' + ], + [ + 'NIRFSG_VAL_ENABLE', + '1 (0x1)', + 'When the Generation Mode property is set to Arb Waveform, the arbitrary waveform may be repeated to ensure phase continuity after upconversion. Enabling this property could cause waveform size to increase. When the Generation Mode property is set to Script, the arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained.' + ] + ], + 'table_header': [ + 'NIRFSG_ATTR_PHASE_CONTINUITY_ENABLED Attribute Setting', + 'Value', + 'With I/Q Rates > 8.33 MS/s.' + ] + }, + 'enum': 'PhaseContinuityEnabled', + 'lv_property': 'Arb:Phase Continuity Enabled', + 'name': 'PHASE_CONTINUITY_ENABLED', + 'type': 'ViInt32' + }, + 1150006: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the allowable frequency error introduced during the software upconversion process. NI-RFSG may introduce a frequency error up to the specified amount to optimize computational speed and onboard memory usage while upconverting phase-continuous signals.\n\n If the NIRFSG_ATTR_PHASE_CONTINUITY_ENABLED attribute is set to NIRFSG_VAL_DISABLE, the NIRFSG_ATTR_FREQUENCY_TOLERANCE attribute is ignored, and the driver does not introduce a frequency error. On devices that do not use software upconversion, this attribute is ignored. The PXI-5670 always uses software upconversion, and the PXI-5671 uses software upconversion for I/Q rates greater than 8.33MS/s.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Units**: hertz (Hz)\n\n **Default Value:** 50\n\n **Supported Devices:** PXI-5670/5671\n\n **Related Topics**\n\n `Phase Continuity `_\n ' + }, + 'lv_property': 'RF:Frequency Tolerance (Hz)', + 'name': 'FREQUENCY_TOLERANCE', + 'type': 'ViReal64' + }, + 1150007: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': " Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× NIRFSG_ATTR_IQ_RATE).\n\n NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f*\\ :sub:`max`\\ - *f*\\ :sub:`min`\\ .\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT, except for when using the PXIe-5830/5831/5832/5840/5841, which supports setting this attribute in all supported generation modes. To set the NIRFSG_ATTR_SIGNAL_BANDWIDTH attribute, the NI-RFSG device must be in the Configuration state.\n\n PXI-5670/5671, PXIe-5672: Based on your signal bandwidth, NI-RFSG determines whether to configure the upconverter center frequency in increments of 1MHz or 5MHz. Failure to configure this attribute may result in the signal being placed outside the upconverter passband.\n\n PXIe-5644/5645/5646, PXIe-5673/5673E: This attribute is used only for error-checking purposes. Otherwise, this attribute is ignored.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Based on your signal bandwidth, NI-RFSG decides the equalized bandwidth. If this attribute is not set, NI-RFSG uses the maximum available signal bandwidth. For the PXIe-5840/5841, the maximum allowed signal bandwidth depends on the upconverter center frequency. Refer to the specifications document for your device for more information about signal bandwidth. The device specifications depend on the signal bandwidth.\n\n **Units**: hertz (Hz)\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Phase-Locked Loop Bandwidth `_\n\n `Frequency Tuning Times `_\n\n `PXIe-5830 Frequency and Bandwidth Selection `_\n\n `PXIe-5831/5832 Frequency and Bandwidth Selection `_\n\n `PXIe-5841 Frequency and Bandwidth Selection `_\n " + }, + 'lv_property': 'Arb:Signal Bandwidth (Hz)', + 'name': 'SIGNAL_BANDWIDTH', + 'type': 'ViReal64' + }, + 1150008: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables automatic thermal correction. When this attribute is enabled, changes to settings cause NI-RFSG to check whether the device temperature has changed and adjusts the settings as needed. When this attribute is disabled, you must explicitly call the nirfsg_PerformThermalCorrection function to adjust the device for temperature changes.\n\n **Default Value:** NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Temperature Monitoring `_\n\n `Settling Times `_\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DISABLE', + '0 (0x0)', + 'Automatic thermal correction is disabled.' + ], + [ + 'NIRFSG_VAL_ENABLE', + '1 (0x1)', + 'Automatic thermal correction is enabled.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AutomaticThermalCorrection', + 'lv_property': 'RF:Automatic Thermal Correction', + 'name': 'AUTOMATIC_THERMAL_CORRECTION', + 'type': 'ViInt32' + }, + 1150009: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether attenuator hold is enabled. While this attribute is set to VI_TRUE, changing the power level causes NI-RFSG to scale the digital data sent to the AWG instead of adjusting the attenuators. Changing power levels in this manner allows the device to increase or decrease the power level in more accurate increments, but it may affect signal-to-noise ratios (noise density).\n\n\n Setting the NIRFSG_ATTR_ATTENUATOR_HOLD_ENABLED attribute to VI_TRUE limits the power levels that can be attained. With attenuator hold enabled, the power level must satisfy the following conditions:\n\n - Power level less than or equal to NIRFSG_ATTR_ATTENUATOR_HOLD_MAX_POWER\n - Power level greater than or equal to (maximum power level -70dB)\n - Power level greater than or equal to -145dBm\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Attenuator Hold `_\n\n `Settling Times `_\n\n **Defined Values**:\n ', + 'note': 'The frequency cannot be changed on the PXI-5670/5671 or PXIe-5672 while this attribute is set to VI_TRUE.', + 'table_body': [ + [ + 'VI_TRUE', + 'Enables attenuator hold.' + ], + [ + 'VI_FALSE', + 'Disables attenuator hold.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'RF:Attenuator Hold Enabled', + 'name': 'ATTENUATOR_HOLD_ENABLED', + 'type': 'ViBoolean' + }, + 1150010: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the maximum power level of the RF output signal when the NIRFSG_ATTR_ATTENUATOR_HOLD_ENABLED attribute is set to VI_TRUE.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Units**: dBm\n\n **Defined Values**:\n Refer to the specifications document for your device for allowable maximum power levels.\n\n **Default Value:**\n\n PXI-5670/5671, PXIe-5672: 17\n\n PXIe-5673/5673E: 10\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Attenuator Hold `_\n\n `Settling Times `_\n ' + }, + 'lv_property': 'RF:Attenuator Hold Max Power (dBm)', + 'name': 'ATTENUATOR_HOLD_MAX_POWER', + 'type': 'ViReal64' + }, + 1150011: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the maximum instantaneous power of the RF output signal.\n\n **Units**: dBm\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'note': '- This attribute is valid only when the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute is set to NIRFSG_VAL_AVERAGE_POWER.\n\n - The NIRFSG_ATTR_ARB_DIGITAL_GAIN attribute is not included in the calculation of the NIRFSG_ATTR_PEAK_ENVELOPE_POWER attribute.' + }, + 'lv_property': 'RF:Peak Envelope Power (dBm)', + 'name': 'PEAK_ENVELOPE_POWER', + 'type': 'ViReal64' + }, + 1150012: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' When this attribute is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (\\>500 kHz), but it increases tuning times.\n\n On the PXI-5670/5671, equalization is performed in the software, so tuning time is increased. On the PXIe-5672, equalization is performed in the hardware so that there is no compromise in performance.\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_ENABLE is the only supported value for this device.\n\n **Default Value:**\n\n PXI-5670/5671: NIRFSG_VAL_DISABLE\n\n PXIe-5644/5645/5646, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Response and Software Equalization `_—Refer to this topic for more information about equalization performed in software.\n\n `Frequency Tuning Times `_\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DISABLE', + '0 (0x0)', + 'Filter is not applied' + ], + [ + 'NIRFSG_VAL_ENABLE', + '1 (0x1)', + 'Filter is applied.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'DigitalEqualizationEnabled', + 'lv_property': 'Arb:Digital Equalization Enabled', + 'name': 'DIGITAL_EQUALIZATION_ENABLED', + 'type': 'ViInt32' + }, + 1150013: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the local oscillator signal is present at the LO OUT front panel connector. The local oscillator signal remains at the LO OUT front panel connector until this attribute is set to VI_FALSE, even if the NIRFSG_ATTR_OUTPUT_ENABLED attribute is set to VI_FALSE, the nirfsg_Abort function is called, or the NI-RFSG session is closed.\n\n To use this attribute for the PXIe-5830/5831/5832, you must use the channelName parameter of the nirfsg_SetAttributeViBoolean function to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string).\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `LO OUT `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_ENABLE', + 'The local oscillator signal is present at the LO OUT front panel connector.' + ], + [ + 'NIRFSG_VAL_DISABLE', + 'The local oscillator signal is not present at the LO OUT front panel connector.' + ] + ], + 'table_header': [ + 'Name', + 'Description' + ] + }, + 'lv_property': 'RF:LO Out Enabled', + 'name': 'LO_OUT_ENABLED', + 'type': 'ViBoolean' + }, + 1150014: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables warnings or errors when you set the frequency, power, and bandwidth values beyond the limits of the NI-RFSG device specifications. When you enable the NIRFSG_ATTR_ALLOW_OUT_OF_SPECIFICATION_USER_SETTINGS attribute, the driver does not report out-of-specification warnings or errors.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Defined Values**:\n ', + 'note': 'Accuracy cannot be guaranteed outside of device specifications, and results may vary by module.', + 'table_body': [ + [ + 'NIRFSG_VAL_DISABLE', + '0 (0x0)', + 'Disables out-of-specification user settings.' + ], + [ + 'NIRFSG_VAL_ENABLE', + '1 (0x1)', + 'Enables out-of-specification user settings.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AllowOutOfSpecificationUserSettings', + 'lv_property': 'RF:Allow Out Of Specification User Settings', + 'name': 'ALLOW_OUT_OF_SPECIFICATION_USER_SETTINGS', + 'type': 'ViInt32' + }, + 1150015: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': '\n **Units**: hertz (Hz)\n\n **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_—Refer to this topic for more information about using this attribute to associate a carrier frequency with a waveform.\n Indicates the carrier frequency generated by the arbitrary waveform generator (AWG) module. The specified carrier frequency is related to the RF output as shown in the following equations:\n ', + 'note': '- Use this attribute to associate a carrier frequency with a waveform.\n\n - This attribute is read-only on the PXI-5670/5671 and PXIe-5672.', + 'table_body': [ + [ + 'PXI-5610, PXI-5670/5671, PXIe-5672', + 'RF Frequency (MHz) = *Upconverter Center Frequency* + *Arb Carrier Frequency* – 25 MHz' + ], + [ + 'PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860', + 'RF Frequency (MHz) = *Upconverter Center Frequency* + *Arb Carrier Frequency*.Note that - the NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY attribute and the NIRFSG_ATTR_ARB_CARRIER_FREQUENCY attribute cannot be set at the same time. The only time the carrier frequency is nonzero on these devices is when in-band retuning is used. ' + ] + ], + 'table_header': [ + 'Device', + 'Equations' + ] + }, + 'lv_property': 'Arb:Arb Carrier Frequency (Hz)', + 'name': 'ARB_CARRIER_FREQUENCY', + 'type': 'ViReal64' + }, + 1150016: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Indicates the average output power from the PXI-5421, PXI-5441, PXIe-5442, and PXIe-5450 AWG module. If an arbitrary waveform is being generated, this attribute specifies either the average power or the peak power of the signal, depending on the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute setting.\n\n **Units**: dBm\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E\n ' + }, + 'lv_property': 'Arb:Arb Power (dBm)', + 'name': 'ARB_POWER', + 'type': 'ViReal64' + }, + 1150017: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the device temperature. If the NI-RFSG session is controlling multiple devices, this attribute returns the temperature of the primary NI RF device. The NI-RFSG session is opened using the primary RF device name.\n\n Serial signals between the sensor and the system control unit could modulate the signal being generated, thus causing phase spurs. After the device thoroughly warms up, its temperature varies only slightly (less than 1 degree Celsius) and slowly, and it is not necessary to constantly poll this temperature sensor.\n\n PXIe-5644/5645/5646, PXIe-5820/5840/5841: If you query this attribute during RF list mode, list steps may take longer to complete during list execution.\n\n PXIe-5830/5831/5832: To use this attribute, you must first set the channelName parameter of the nirfsg_SetAttributeViReal64 function to using the appropriate string for your instrument configuration. Setting the nirfsg_SetAttributeViReal64 function is not required for the PXIe-3621/3622. Refer to the following table to determine which strings are valid for your configuration.\n\n **Units**: degrees Celsius (°C)\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Temperature Monitoring `_\n\n `Thermal Shutdown `_\n ', + 'table_body': [ + [ + 'PXIe-3621/3622', + '—', + 'if or "" (empty string)' + ], + [ + 'PXIe-5820', + '—', + 'fpga' + ], + [ + 'First connected mmRH-5582', + 'DIRECT TRX PORTS Only', + 'rf0' + ], + [ + 'First connected mmRH-5582', + 'SWITCHED TRX PORTS [0-7]', + 'rf0switch0' + ], + [ + 'First connected mmRH-5582', + 'SWITCHED TRX PORTS [0-7]', + 'rf0switch1' + ], + [ + 'Second connected mmRH-5582', + 'DIRECT TRX PORTS Only', + 'rf1' + ], + [ + 'Second connected mmRH-5582', + 'SWITCHED TRX PORTS [0-7]', + 'rf1switch0' + ], + [ + 'Second connected mmRH-5582', + 'SWITCHED TRX PORTS [0-7]', + 'rf1switch1' + ] + ], + 'table_header': [ + 'Hardware Module', + 'TRX Port Type', + 'Active Channel String' + ] + }, + 'lv_property': 'Device Characteristics:Device Temperature (Degrees C)', + 'name': 'DEVICE_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150018: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to generate a continuous wave (CW) signal, the arbitrary waveform specified by the NIRFSG_ATTR_ARB_SELECTED_WAVEFORM attribute, or the script specified by the NIRFSG_ATTR_SELECTED_SCRIPT attribute, upon calling the nirfsg_Initiate function.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_CW\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696 (CW support only), PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n\n `Scripting Instructions `_—Refer to this topic for more information about scripting.\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureGenerationMode\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_ARB_WAVEFORM', + '1001 (0x3e9)', + 'Configures the RF signal generator to generate the arbitrary waveform specified by the NIRFSG_ATTR_ARB_SELECTED_WAVEFORM attribute.' + ], + [ + 'NIRFSG_VAL_CW', + '1000 (0x3e8)', + 'Configures the RF signal generator to generate a CW signal.' + ], + [ + 'NIRFSG_VAL_SCRIPT', + '1002 (0x3ea)', + 'Configures the RF signal generator to generate arbitrary waveforms as directed by the NIRFSG_ATTR_SELECTED_SCRIPT attribute..' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'GenerationMode', + 'lv_property': 'Arb:Generation Mode', + 'name': 'GENERATION_MODE', + 'type': 'ViInt32' + }, + 1150019: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Script Trigger type. Depending upon the value of this attribute, more attributes may be needed to fully configure the trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Trigger Types `_\n\n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeScriptTrigger\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_NONE', + 'No trigger is configured. Signal generation starts immediately.' + ], + [ + 'NIRFSG_VAL_DIGITAL_EDGE', + 'The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute, and the active edge is specified with the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_EDGE attribute.' + ], + [ + 'NIRFSG_VAL_DIGITAL_LEVEL', + 'The data operation does not start until the digital level is detected. The source of the digital level is specified in the NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_SOURCE attribute, and the active level is specified in the NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_ACTIVE_LEVEL attribute.' + ], + [ + 'NIRFSG_VAL_SOFTWARE', + 'The data operation does not start until a software trigger occurs. You can create a software event by calling the niRFSG_SendSoftwareEdgeTrigger function.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigType', + 'lv_property': 'Triggers:Script:Type', + 'name': 'SCRIPT_TRIGGER_TYPE', + 'supported_rep_caps': [ + 'script_triggers' + ], + 'type': 'ViInt32' + }, + 1150020: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the source terminal for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to digital edge. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeScriptTrigger\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The trigger is received on PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The trigger is received on PFI 1.' + ], + [ + 'NIRFSG_VAL_PFI2_STR', + 'PFI2', + 'The trigger is received on PFI 2.' + ], + [ + 'NIRFSG_VAL_PFI3_STR', + 'PFI3', + 'The trigger is received on PFI 3.' + ], + [ + 'NIRFSG_VAL_PXI_STAR_STR', + 'PXI_Star', + 'The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG7_STR', + 'PXI_Trig7', + 'The trigger is received on PXI trigger line 7.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'PXIe_DStarB', + 'The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + ], + [ + 'NIRFSG_VAL_PULSE_IN_STR', + 'PulseIn', + 'The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_SYNC_SCRIPT_TRIGGER_STR', + 'Sync_Script', + 'The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigDigEdgeSource', + 'lv_property': 'Triggers:Script:Digital Edge:Source', + 'name': 'DIGITAL_EDGE_SCRIPT_TRIGGER_SOURCE', + 'supported_rep_caps': [ + 'script_triggers' + ], + 'type': 'ViString' + }, + 1150021: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the active edge for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to digital edge. To set the NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_EDGE attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_RISING_EDGE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Edge Trigger `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeScriptTrigger\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_FALLING_EDGE', + '1 (0x1)', + 'Asserts the trigger when the signal transitions from high level to low level.' + ], + [ + 'NIRFSG_VAL_RISING_EDGE', + '0 (0x0)', + 'Asserts the trigger when the signal transitions from low level to high level.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigDigEdgeEdge', + 'lv_property': 'Triggers:Script:Digital Edge:Edge', + 'name': 'DIGITAL_EDGE_SCRIPT_TRIGGER_EDGE', + 'supported_rep_caps': [ + 'script_triggers' + ], + 'type': 'ViInt32' + }, + 1150022: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Script Trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_ —Refer to this topic for information about trigger delay.\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ExportSignal\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The signal is not exported.' + ], + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The signal is exported to the PFI 1 connector.' + ], + [ + 'NIRFSG_VAL_PFI4_STR', + 'PFI4', + 'The signal is exported to the PFI 4 connector.' + ], + [ + 'NIRFSG_VAL_PFI5_STR', + 'PFI5', + 'The signal is exported to the PFI 5 connector.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'PXIe_DStarC', + 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigExportOutputTerm', + 'lv_property': 'Triggers:Script:Export Output Terminal', + 'name': 'EXPORTED_SCRIPT_TRIGGER_OUTPUT_TERMINAL', + 'supported_rep_caps': [ + 'script_triggers' + ], + 'type': 'ViString' + }, + 1150023: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the script in onboard memory to generate upon calling the nirfsg_Initiate function when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_SCRIPT.\n\n The NIRFSG_ATTR_SELECTED_SCRIPT attribute is ignored when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_CW. To set the NIRFSG_ATTR_SELECTED_SCRIPT attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n\n `Scripting Instructions `_\n ' + }, + 'lv_property': 'Arb:Selected Script', + 'name': 'SELECTED_SCRIPT', + 'type': 'ViString' + }, + 1150024: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the phase of the RF output signal. Use this attribute to align the phase of the RF output with the phase of the RF output of another device, as long as the two devices are phase-coherent.\n\n **Units**: degrees (°)\n\n **Default Value:** 0\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Phase Synchronization and Phase Coherency `_\n ' + }, + 'lv_property': 'RF:Phase Offset (Degrees)', + 'name': 'PHASE_OFFSET', + 'type': 'ViReal64' + }, + 1150025: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the AWG prefilter gain. The prefilter gain is applied to the waveform data before any other signal processing. Reduce this value to prevent overflow in the AWG interpolation filters. Other gains on the NI-RFSG device are automatically adjusted to compensate for nonunity AWG prefilter gain. The PXI-5671, PXIe-5672 must be in the Configuration state to use this attribute. However, the PXIe-5644/5645/5646, PXIe-5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842 can be in either the Configuration or the Generation state to use this attribute. PXIe-5860 can only be in the Configuration state to use this attribute.\n\n On the PXI-5671, this attribute applies only when the NIRFSG_ATTR_IQ_RATE attribute is set to a value less than or equal to 8.33MS/s. On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, this attribute is always applicable.\n\n **Units**: dB\n\n **Default Value:** 0dB\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Arb:Pre-filter Gain (dB)', + 'name': 'ARB_PRE_FILTER_GAIN', + 'type': 'ViReal64' + }, + 1150026: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the serial number of the RF module. If the NI-RFSG session is controlling multiple modules, this attribute returns the serial number of the primary RF module.\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Device Characteristics:Serial Number', + 'name': 'SERIAL_NUMBER', + 'type': 'ViString' + }, + 1150027: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Configures the loop bandwidth of the tuning PLLs. This attribute is ignored on the PXI-5610, PXI-5670/5671, and PXIe-5672 for signal bandwidths greater than or equal to 10MHz. This attribute is ignored on the PXI/PXIe-5650/5651/5652 for RF frequencies less than 50MHz.\n\n To use this attribute for the PXIe-5830/5831/5832, you must use the channelName parameter of the nirfsg_SetAttributeViInt32 function to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string).\n\n **Default Value:**\n\n PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842: NIRFSG_VAL_MEDIUM\n\n PXI/PXIe-5650/5651/5652, PXIe-5673/5673E: NIRFSG_VAL_NARROW\n\n **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Phase-Locked Loop Bandwidth `_\n\n `Modulation Implementation `_\n\n `Sinusoidal Tone Versus Modulation Operation `_\n \n **Defined Values**:\n ', + 'note': 'Setting this attribute to NIRFSG_VAL_WIDE on the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, or the PXIe-5673/5673E allows the frequency to settle significantly faster at the expense of increased phase noise. Setting this attribute to NIRFSG_VAL_MEDIUM is not a valid option on the PXI/PXIe-5650/5651/5652 or PXIe-5673/5673E. NIRFSG_VAL_MEDIUM is the only supported value for the PXIe-5840/5841/5842.', + 'table_body': [ + [ + 'NIRFSG_VAL_MEDIUM', + '1 (0x1)', + 'Uses the medium loop bandwidth setting for the PLL.' + ], + [ + 'NIRFSG_VAL_NARROW', + '0 (0x0)', + 'Uses the narrowest loop bandwidth setting for the PLL.' + ], + [ + 'NIRFSG_VAL_WIDE', + '2 (0x2)', + 'Uses the widest loop bandwidth setting for the PLL.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'LoopBandwidth', + 'lv_property': 'RF:Loop Bandwidth', + 'name': 'LOOP_BANDWIDTH', + 'type': 'ViInt32' + }, + 1150029: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Sample Clock mode on the device. To set this attribute, the device must be in the Configuration state.\n\n PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_DIVIDE_DOWN is the only supported value for this device.\n\n **Default Values:**\n\n PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_DIVIDE_DOWN\n\n PXIe-5673/5673E: NIRFSG_VAL_HIGH_RESOLUTION\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Clocking Modes `_\n\n **Valid Values**:\n ', + 'note': 'Using the high resolution clock may result in increased phase noise.', + 'table_body': [ + [ + 'NIRFSG_VAL_HIGH_RESOLUTION', + 'Sample rates are generated by a high-resolution clock.' + ], + [ + 'NIRFSG_VAL_DIVIDE_DOWN', + 'Sample rates are generated by dividing the source frequency.' + ] + ], + 'table_header': [ + 'Name', + 'Description' + ] + }, + 'enum': 'ArbOnboardSampleClockMode', + 'lv_property': 'Clock:Arb Onboard Sample Clock Mode', + 'name': 'ARB_ONBOARD_SAMPLE_CLOCK_MODE', + 'type': 'ViInt32' + }, + 1150030: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Sample Clock source for the device. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_ONBOARD_CLOCK_STR is the only supported value for this device.\n\n **Default Value:** NIRFSG_VAL_ONBOARD_CLOCK_STR\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Timing Configurations `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_CLK_IN_STR', + 'ClkIn', + 'Uses the external clock as the Sample Clock source.' + ], + [ + 'NIRFSG_VAL_ONBOARD_CLOCK_STR', + 'OnboardClock', + 'Uses the AWG module onboard clock as the Sample Clock source.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ArbSampleClockSource', + 'lv_property': 'Clock:Arb Sample Clock Source', + 'name': 'ARB_SAMPLE_CLOCK_SOURCE', + 'type': 'ViString' + }, + 1150031: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the rate of the Sample Clock on the device.\n\n **Units**: hertz (Hz)\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Clock:Arb Sample Clock Rate (Hz)', + 'name': 'ARB_SAMPLE_CLOCK_RATE', + 'type': 'ViReal64' + }, + 1150032: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the analog modulation format to use.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Modulation `_\n\n `PXI/PXIe-5650/5651/5652 Modulation Schemes `_\n\n `PXIe-5654/5654 with PXIe-5696 Modulation Schemes `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_AM', + '2002 (0x7d2)', + 'Specifies that the analog modulation type is AM.' + ], + [ + 'NIRFSG_VAL_FM', + '2000 (0x7d0)', + 'Specifies that the analog modulation type is FM.' + ], + [ + 'NIRFSG_VAL_NONE', + '0 (0x0)', + 'Disables analog modulation.' + ], + [ + 'NIRFSG_VAL_PM', + '2001 (0x7d1)', + 'Specifies that the analog modulation type is PM.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AnlgModType', + 'lv_property': 'Modulation:Analog:Modulation Type', + 'name': 'ANALOG_MODULATION_TYPE', + 'type': 'ViInt32' + }, + 1150033: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the type of waveform to use as the message signal for analog modulation.\n\n **Default Value:** NIRFSG_VAL_SINE\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_SINE', + '3000 (0xbb8)', + 'Specifies that the analog modulation waveform type is sine.' + ], + [ + 'NIRFSG_VAL_SQUARE', + '3001 (0xbb9)', + 'Specifies that the analog modulation waveform type is square.' + ], + [ + 'NIRFSG_VAL_TRIANGLE', + '3002 (0xbba)', + 'Specifies that the analog modulation waveform type is triangle.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AnlgModWfmType', + 'lv_property': 'Modulation:Analog:Waveform Type', + 'name': 'ANALOG_MODULATION_WAVEFORM_TYPE', + 'type': 'ViInt32' + }, + 1150034: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the frequency of the waveform to use as the message signal in analog modulation.\n\n **Units:** hertz (Hz)\n\n **Default Value:** 1kHz\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n ' + }, + 'lv_property': 'Modulation:Analog:Waveform Frequency (Hz)', + 'name': 'ANALOG_MODULATION_WAVEFORM_FREQUENCY', + 'type': 'ViReal64' + }, + 1150035: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the frequency deviation to use in frequency modulation.\n\n **Units**: hertz (Hz)\n\n **Default Value:** 1kHz\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n ' + }, + 'lv_property': 'Modulation:Analog:FM Deviation (Hz)', + 'name': 'ANALOG_MODULATION_FM_DEVIATION', + 'type': 'ViReal64' + }, + 1150036: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the digital modulation format to use.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_FSK', + '4000 (0xfa0)', + 'Specifies that the digital modulation type is frequency-shift keying (FSK).' + ], + [ + 'NIRFSG_VAL_NONE', + '0 (0x0)', + 'Disables digital modulation.' + ], + [ + 'NIRFSG_VAL_OOK', + '4001 (0xfa1)', + 'Specifies that the digital modulation type is on-off keying (OOK).' + ], + [ + 'NIRFSG_VAL_PSK', + '4002 (0xfa2)', + 'Specifies that the digital modulation type is phase-shift keying (PSK).' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'DigModType', + 'lv_property': 'Modulation:Digital:Modulation Type', + 'name': 'DIGITAL_MODULATION_TYPE', + 'type': 'ViInt32' + }, + 1150037: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the symbol rate of the bit stream for digital modulation.\n\n **Units**: hertz (Hz)\n\n **Default Value:** 1kHz\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n ' + }, + 'lv_property': 'Modulation:Digital:Symbol Rate', + 'name': 'DIGITAL_MODULATION_SYMBOL_RATE', + 'type': 'ViReal64' + }, + 1150038: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the type of waveform to use as the message signal in digital modulation.\n\n **Default Value:** NIRFSG_VAL_PRBS\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_PRBS', + '5000 (0x1388)', + 'Specifies that the digital modulation waveform type is pseudorandom bit sequence (PRBS).' + ], + [ + 'NIRFSG_VAL_USER_DEFINED', + '5001 (0x1389)', + 'Specifies that the digital modulation waveform type is user defined. To specify the user-defined waveform, call the niRFSG_ConfigureDigitalModulationUserDefinedWaveform function.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'DigModWfmType', + 'lv_property': 'Modulation:Digital:Waveform Type', + 'name': 'DIGITAL_MODULATION_WAVEFORM_TYPE', + 'type': 'ViInt32' + }, + 1150039: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the order of pseudorandom bit sequence (PRBS) internally generated by hardware and used as the message signal in digital modulation.\n\n **Default Value:** 16\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n ' + }, + 'lv_property': 'Modulation:Digital:PRBS Order', + 'name': 'DIGITAL_MODULATION_PRBS_ORDER', + 'type': 'ViInt32' + }, + 1150040: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the seed of the internally generated pseudorandom bit sequence (PRBS).\n\n **Default Value:** 1\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n ' + }, + 'lv_property': 'Modulation:Digital:PRBS Seed', + 'name': 'DIGITAL_MODULATION_PRBS_SEED', + 'type': 'ViInt32' + }, + 1150041: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the deviation to use in FSK modulation.\n\n **Units**: hertz (Hz)\n\n **Default Value:** 1,000\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652\n\n **Related Topics**\n\n `Modulation Schemes `_\n ' + }, + 'lv_property': 'Modulation:Digital:FSK Deviation (Hz)', + 'name': 'DIGITAL_MODULATION_FSK_DEVIATION', + 'type': 'ViReal64' + }, + 1150042: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the nirfsg_WriteArbWaveform function immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this attribute when an arbitrary waveform is first allocated.\n\n For the PXI-5670, direct download is always disabled. For all other devices, direct download is always enabled.\n\n PXI-5671: To increase performance when using large waveforms, enable direct download. To maximize reconfigurability, disable direct download.\n\n Perform the following steps to enable direct download:\n\n\n\n 1\\. Set the I/Q rate to less than or equal to 8.33MS/s with the NIRFSG_ATTR_IQ_RATE attribute.\n\n 2\\. Set the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to NIRFSG_VAL_PEAK_POWER.\n\n 3\\. Disable the NIRFSG_ATTR_IQ_SWAP_ENABLED attribute.\n\n 4\\. Disable the NIRFSG_ATTR_DIGITAL_EQUALIZATION_ENABLED attribute.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DISABLE', + '0 (0x0)', + 'The RF In local oscillator signal is not present at the front panel LO OUT connector.' + ], + [ + 'NIRFSG_VAL_ENABLE', + '1 (0x1)', + 'The RF In local oscillator signal is present at the front panel LO OUT connector.' + ], + [ + 'NIRFSG_VAL_UNSPECIFIED', + '-2 (-0x2)', + 'The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'DirectDownload', + 'lv_property': 'Arb:Data Transfer:Direct Download', + 'name': 'DIRECT_DOWNLOAD', + 'type': 'ViInt32' + }, + 1150043: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies how NI-RFSG interprets the value of the NIRFSG_ATTR_POWER_LEVEL attribute. The NIRFSG_ATTR_POWER_LEVEL_TYPE attribute also affects how waveforms are scaled.\n\n PXI-5670/5671: While in Script generation mode, if this attribute is set to NIRFSG_VAL_AVERAGE_POWER, NI-RFSG scales each waveform so that all waveforms have the same average power. The average power level of each waveform matches the value set with the NIRFSG_ATTR_POWER_LEVEL attribute. You can disable this scaling operation by setting the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to NIRFSG_VAL_PEAK_POWER.\n\n PXIe-5644/5645/5646, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: While in Script generation mode, this attribute must be set to NIRFSG_VAL_PEAK_POWER.\n\n Converting from Average Power to Peak Power\n\n Typically, this attribute is set to NIRFSG_VAL_AVERAGE_POWER. However, some instrument modes require this attribute to be set to NIRFSG_VAL_PEAK_POWER. Use the following equations to calculate the equivalent peak power given the desired average power for your waveform:\n\n\n Where 1 is the highest possible magnitude in the waveform.\n\n\n\n **Default Value:**\n\n PXIe-5820: NIRFSG_VAL_PEAK_POWER\n\n All other devices: NIRFSG_VAL_AVERAGE_POWER\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Spurious Performance `_\n\n `Optimizing for Low Power Generation `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigurePowerLevelType \n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_AVERAGE_POWER', + 'Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If your write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820.' + ], + [ + 'NIRFSG_VAL_PEAK_POWER', + 'Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires that the magnitude of the I/Q waveform must always be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute. You can use the NIRFSG_ATTR_PEAK_POWER_ADJUSTMENT attribute in conjunction with the NIRFSG_ATTR_POWER_LEVEL attribute when the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute is set to NIRFSG_VAL_PEAK_POWER.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'PowerLevelType', + 'lv_property': 'RF:Power Level Type', + 'name': 'POWER_LEVEL_TYPE', + 'type': 'ViInt32' + }, + 1150044: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables digital pattern on the PXI-5421/5441 AWG module. This attribute must be set to VI_TRUE to enable signal routing to and from the Digital Data & Control connector.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXI-5670/5671\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Signal routing enabled.' + ], + [ + 'VI_FALSE', + 'Signal routing disabled.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Arb:Digital Pattern', + 'name': 'DIGITAL_PATTERN', + 'type': 'ViBoolean' + }, + 1150045: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables and disables continuous streaming of waveform data.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Streaming is enabled.' + ], + [ + 'VI_FALSE', + 'Streaming is disabled.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Arb:Data Transfer:Streaming:Streaming Enabled', + 'name': 'STREAMING_ENABLED', + 'type': 'ViBoolean' + }, + 1150046: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the name of the waveform used to continually stream data during generation.\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n\n `Streaming Waveform Data `_\n ' + }, + 'lv_property': 'Arb:Data Transfer:Streaming:Streaming Waveform Name', + 'name': 'STREAMING_WAVEFORM_NAME', + 'type': 'ViString' + }, + 1150047: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Indicates the space available, in samples, in the streaming waveform for writing new data. For optimal performance, write new data to the waveform in a fixed size that is an integer divisor of the total size of the streaming waveform. This waveform size ensures that writes do not have to wrap around from the end to the beginning of the waveform buffer.\n\n To read this attribute, the NI-RFSG device must be in the Committed state.\n\n **Units**: samples\n\n **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n ' + }, + 'lv_property': 'Arb:Data Transfer:Streaming:Space Available In Streaming Waveform (Samples)', + 'name': 'STREAMING_SPACE_AVAILABLE_IN_WAVEFORM', + 'type': 'ViInt64' + }, + 1150048: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Indicates the number of samples to transfer at one time from the device to host memory. This attribute is useful when the total data to be transferred to onboard memory is large.\n\n **Units**: samples (s)\n\n **Default Value**: 1Ms\n\n **Supported Devices:** PXIe-5672/5673/5673E\n ' + }, + 'lv_property': 'Arb:Data Transfer:Data Transfer Block Size', + 'name': 'DATA_TRANSFER_BLOCK_SIZE', + 'type': 'ViInt32' + }, + 1150052: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies how much to scale the data before writing it with the nirfsg_WriteArbWaveform function. The resulting waveform must be smaller than 1.0 in complex magnitude. This attribute is supported only if you set the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to NIRFSG_VAL_PEAK_POWER.\n\n **Default Value:** 1.0\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Spurious Performance `_\n ' + }, + 'lv_property': 'Arb:Software Scaling Factor', + 'name': 'ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR', + 'type': 'ViReal64' + }, + 1150053: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Reference Clock on the RF signal generators. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_DO_NOT_EXPORT_STR\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Interconnecting Multiple NI 5673E Modules `_\n \n **Defined Values**:\n\nName (Value): Description\n\nNIRFSG_VAL_DO_NOT_EXPORT_STR () :The Reference Clock signal is not exported.\n\nNIRFSG_VAL_REF_OUT_STR (RefOut) :Exports the Reference Clock signal to the REF OUT connector of the device.\n\nNIRFSG_VAL_REF_OUT2_STR (RefOut2) :Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable.\n\nNIRFSG_VAL_CLK_OUT_STR (ClkOut) :Exports the Reference Clock signal to the CLK OUT connector of the device.\n ', + 'note': 'The NIRFSG_VAL_REF_OUT2_STR output terminal value is valid for only the PXIe-5650/5651/5652, not the PXI-5650/5651/5652.', + 'table_body': [ + [ + 'NIRFSG_VAL_CLK_OUT_STR', + 'ClkOut', + 'Exports the Reference Clock signal to the CLK OUT connector of the device.', + 'Supported on PXIe-5673, 5673E' + ], + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The Reference Clock signal is not exported.', + 'Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5652, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5652 (See Note)' + ], + [ + 'NIRFSG_VAL_REF_OUT_STR', + 'RefOut', + 'Exports the Reference Clock signal to the REF OUT connector of the device.', + 'Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5653, 5653, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5653, ' + ], + [ + 'NIRFSG_VAL_REF_OUT2_STR', + 'RefOut2', + 'Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable.', + 'Supported on PXIe-5650/5651/5652, 5654, 5673E, PXIe-5654 with PXIe-5696' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description', + 'Supported devices' + ] + }, + 'enum': 'ReferenceClockExportOutputTerminal', + 'lv_property': 'Clock:Reference Clock Export Output Terminal', + 'name': 'EXPORTED_REF_CLOCK_OUTPUT_TERMINAL', + 'type': 'ViString' + }, + 1150054: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the source terminal for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to NIRFSG_VAL_DIGITAL_LEVEL. The NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_SOURCE attribute is not case-sensitive.\n\n To set the NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_SOURCE attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The trigger is received on PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The trigger is received on PFI 1.' + ], + [ + 'NIRFSG_VAL_PFI2_STR', + 'PFI2', + 'The trigger is received on PFI 2.' + ], + [ + 'NIRFSG_VAL_PFI3_STR', + 'PFI3', + 'The trigger is received on PFI 3.' + ], + [ + 'NIRFSG_VAL_PXI_STAR_STR', + 'PXI_Star', + 'The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG7_STR', + 'PXI_Trig7', + 'The trigger is received on PXI trigger line 7.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'PXIe_DStarB', + 'The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + ], + [ + 'NIRFSG_VAL_PULSE_IN_STR', + 'PulseIn', + 'The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigDigLevelSource', + 'lv_property': 'Triggers:Script:Digital Level:Source', + 'name': 'DIGITAL_LEVEL_SCRIPT_TRIGGER_SOURCE', + 'supported_rep_caps': [ + 'script_triggers' + ], + 'type': 'ViString' + }, + 1150055: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the active level for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to NIRFSG_VAL_DIGITAL_LEVEL.\n\n **Default Value:** NIRFSG_VAL_ACTIVE_HIGH\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Level Trigger `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_ACTIVE_HIGH', + '9000 (0x2328)', + 'Trigger when the digital trigger signal is high.' + ], + [ + 'NIRFSG_VAL_ACTIVE_LOW', + '9001 (0x2329)', + 'Trigger when the digital trigger signal is low.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigDigLevelActiveLevel', + 'lv_property': 'Triggers:Script:Digital Level:Active Level', + 'name': 'DIGITAL_LEVEL_SCRIPT_TRIGGER_ACTIVE_LEVEL', + 'supported_rep_caps': [ + 'script_triggers' + ], + 'type': 'ViInt32' + }, + 1150056: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the pulse-shaping filter type for the FIR filter. You can use this attribute only with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this attribute with a device that does not support OSP.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_NONE', + '0 (0x0)', + 'Disables analog modulation.' + ], + [ + 'NIRFSG_VAL_ARB_FILTER_TYPE_RAISED_COSINE', + '10002 (0x2712)', + 'Applies a raised cosine filter to the data with the alpha value specified with the NIRFSG_ATTR_ARB_FILTER_RAISED_COSINE_ALPHA attribute.' + ], + [ + 'NIRFSG_VAL_ARB_FILTER_TYPE_ROOT_RAISED_COSINE', + '10001 (0x2711)', + 'Applies a root-raised cosine filter to the data with the alpha value specified with the NIRFSG_ATTR_ARB_FILTER_ROOT_RAISED_COSINE_ALPHA attribute.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'FilterType', + 'lv_property': 'Arb:Pulse Shaping:Filter Type', + 'name': 'ARB_FILTER_TYPE', + 'type': 'ViInt32' + }, + 1150057: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the alpha value to use when calculating the pulse-shaping FIR filter coefficients. You can use this attribute only when the NIRFSG_ATTR_ARB_FILTER_TYPE attribute is set to NIRFSG_VAL_ARB_FILTER_TYPE_ROOT_RAISED_COSINE and with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this attribute with a device that does not support OSP.\n\n **Supported Devices:** PXI-5671, PXIe-5672/5673/5673E\n ' + }, + 'lv_property': 'Arb:Pulse Shaping:Root Raised Cosine Alpha', + 'name': 'ARB_FILTER_ROOT_RAISED_COSINE_ALPHA', + 'type': 'ViReal64' + }, + 1150060: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the alpha value to use when calculating the pulse-shaping filter coefficients. You can use this attribute only when the NIRFSG_ATTR_ARB_FILTER_TYPE attribute is set to NIRFSG_VAL_ARB_FILTER_TYPE_RAISED_COSINE and with signal generators that support onboard signal processing (OSP). NI-RFSG returns an error if you use this attribute with a device that does not support OSP.\n\n **Supported Devices:** PXI-5671, PXIe-5672/5673/5673E\n ' + }, + 'lv_property': 'Arb:Pulse Shaping:Raised Cosine Alpha', + 'name': 'ARB_FILTER_RAISED_COSINE_ALPHA', + 'type': 'ViReal64' + }, + 1150061: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' The total amount of memory on the signal generator in bytes.\n\n **Units:** bytes\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Memory Options `_\n\n `Phase Continuity `_\n ', + 'note': 'Not all onboard memory is available for waveform storage. A portion of onboard memory stores scripts that specify how the waveforms are generated. These scripts typically require less than 1KB of onboard memory.' + }, + 'lv_property': 'Arb:Memory Size', + 'name': 'MEMORY_SIZE', + 'type': 'ViInt64' + }, + 1150062: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the `deviation `_ to use in phase modulation, in degrees.\n\n **Units**: degrees (°)\n\n **Default Value:** 90°\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653\n\n **Related Topics**\n\n `Modulation Schemes `_\n ' + }, + 'lv_property': 'Modulation:Analog:PM Deviation (Degrees)', + 'name': 'ANALOG_MODULATION_PM_DEVIATION', + 'type': 'ViReal64' + }, + 1150063: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Done event. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n\n `Events `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ExportSignal\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The signal is not exported.' + ], + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The signal is exported to the PFI 1 connector.' + ], + [ + 'NIRFSG_VAL_PFI4_STR', + 'PFI4', + 'The signal is exported to the PFI 4 connector.' + ], + [ + 'NIRFSG_VAL_PFI5_STR', + 'PFI5', + 'The signal is exported to the PFI 5 connector.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'PXIe_DStarC', + 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'DoneEventExportOutputTerm', + 'lv_property': 'Events:Done Event Export Output Terminal', + 'name': 'EXPORTED_DONE_EVENT_OUTPUT_TERMINAL', + 'type': 'ViString' + }, + 1150064: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Marker Event. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Marker Events `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ExportSignal\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The signal is not exported.' + ], + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The signal is exported to the PFI 1 connector.' + ], + [ + 'NIRFSG_VAL_PFI4_STR', + 'PFI4', + 'The signal is exported to the PFI 4 connector.' + ], + [ + 'NIRFSG_VAL_PFI5_STR', + 'PFI5', + 'The signal is exported to the PFI 5 connector.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'PXIe_DStarC', + 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'MarkerEventExportOutputTerm', + 'lv_property': 'Events:Marker:Output Terminal', + 'name': 'EXPORTED_MARKER_EVENT_OUTPUT_TERMINAL', + 'repeated_capability_type': 'markers', + 'supported_rep_caps': [ + 'markers' + ], + 'type': 'ViString' + }, + 1150065: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Started event. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Events `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ExportSignal\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The signal is not exported.' + ], + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The signal is exported to the PFI 1 connector.' + ], + [ + 'NIRFSG_VAL_PFI4_STR', + 'PFI4', + 'The signal is exported to the PFI 4 connector.' + ], + [ + 'NIRFSG_VAL_PFI5_STR', + 'PFI5', + 'The signal is exported to the PFI 5 connector.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'PXIe_DStarC', + 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'StartedEventExportOutputTerm', + 'lv_property': 'Events:Started Event Export Output Terminal', + 'name': 'EXPORTED_STARTED_EVENT_OUTPUT_TERMINAL', + 'type': 'ViString' + }, + 1150066: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the power level of the signal at the LO OUT front panel connector.\n\n To use this attribute for the PXIe-5830/5831/5832, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string).\n\n **Units**: dBm\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `LO OUT `_\n ', + 'note': 'For the PXIe-5644/5645/5646 and PXIe-5673/5673E, this attribute is always read-only.' + }, + 'lv_property': 'RF:LO Out Power (dBm)', + 'name': 'LO_OUT_POWER', + 'type': 'ViReal64' + }, + 1150067: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the power level of the signal at the LO IN front panel connector.\n\n To use this attribute for the PXIe-5830/5831/5832, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string).\n\n **Units**: dBm\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `LO OUT `_\n ', + 'note': '- This attribute is read/write if you are using an external LO. Otherwise, this attribute is read-only.\n\n - For the PXIe-5644/5645/5646, this attribute is always read-only.' + }, + 'lv_property': 'RF:LO In Power (dBm)', + 'name': 'LO_IN_POWER', + 'type': 'ViReal64' + }, + 1150068: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the AWG module temperature in degrees Celsius.\n\n PXIe-5820/5840/5841/5842: If you query this attribute during RF list mode, list steps may take longer to complete during list execution.\n\n **Units**: degrees Celsius (°C)\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Device Characteristics:AWG Temperature (Degrees C)', + 'name': 'ARB_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150069: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables I/Q impairment. The NIRFSG_ATTR_IQ_I_OFFSET, NIRFSG_ATTR_IQ_Q_OFFSET, NIRFSG_ATTR_IQ_GAIN_IMBALANCE, and NIRFSG_ATTR_IQ_SKEW attributes are ignored when the NIRFSG_ATTR_IQ_IMPAIRMENT_ENABLED attribute is disabled.\n\n **Default Value:** VI_TRUE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'I/Q impairment is enabled.' + ], + [ + 'VI_FALSE', + 'I/Q impairment is disabled.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'IQ Impairment:Enabled', + 'name': 'IQ_IMPAIRMENT_ENABLED', + 'type': 'ViBoolean' + }, + 1150070: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' When using a National Instruments AWG module or vector signal transceiver (VST), this attribute specifies the I-signal DC offset. Units are either percent (%) or volts (V), depending on the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute setting.\n\n PXIe-5673/5673E: Actual AWG signal offset is equal to the I/Q modulator offset correction plus the value specified by this attribute. When using an external AWG (non–National Instruments AWG), this attribute is read-only and indicates the I/Q modulator I-offset. Units are volts, as specified by the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute.\n\n **Valid Values:**-100 to 100% or -0.2V to 0.2V\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Impairment Calibration `_\n ' + }, + 'lv_property': 'IQ Impairment:I Offset', + 'name': 'IQ_I_OFFSET', + 'type': 'ViReal64' + }, + 1150071: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' When using a National Instruments AWG module or VST device, this attribute specifies the Q-signal DC offset. Units are either percent (%) or volts (V), depending on the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute setting.\n\n PXIe-5673/5673E: Actual AWG signal offset is equal to the I/Q modulator offset correction plus the value specified by this attribute. When using an external AWG (non–National Instruments AWG), the NIRFSG_ATTR_IQ_Q_OFFSET attribute is read-only and indicates the I/Q modulator Q-offset. Units are volts, as indicated by the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute.\n\n **Valid Values**: -100% to 100% or -0.2V to 0.2V\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Impairment Calibration `_\n ' + }, + 'lv_property': 'IQ Impairment:Q Offset', + 'name': 'IQ_Q_OFFSET', + 'type': 'ViReal64' + }, + 1150072: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the gain imbalance of the I/Q modulator (I versus Q).\n\n Gain imbalance is calculated with the following equation:\n\n\n **Units**: dB\n\n **Valid Values:**-6dB to 6dB\n\n **Default Value:** 0dB\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Impairment Calibration `_\n\n `Spurious Performance `_\n ' + }, + 'lv_property': 'IQ Impairment:Gain Imbalance (dB)', + 'name': 'IQ_GAIN_IMBALANCE', + 'type': 'ViReal64' + }, + 1150073: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the adjustment of the phase angle between the I and Q vectors. If the skew is zero, the phase angle is 90 degrees.\n\n This attribute is ignored when the NIRFSG_ATTR_IQ_IMPAIRMENT_ENABLED attribute is disabled.\n\n **Units**: degrees (°)\n\n **Valid Values:**-30° to 30°\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Impairment Calibration `_\n ' + }, + 'lv_property': 'IQ Impairment:IQ Skew (Degrees)', + 'name': 'IQ_SKEW', + 'type': 'ViReal64' + }, + 1150075: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the LO module temperature in degrees Celsius.\n\n PXIe-5840/5841: If you query this attribute during RF list mode, list steps may take longer to complete during list execution.\n\n **Units**: degrees Celsius (°C)\n\n **Supported Devices:** PXIe-5673/5673E, PXIe-5840/5841/5842\n ' + }, + 'lv_property': 'Device Characteristics:LO Temperature (Degrees C)', + 'name': 'LO_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150076: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the recommended interval between each external calibration of the device.\n\n **Units**: months\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'External Calibration:Recommended Interval', + 'name': 'EXTERNAL_CALIBRATION_RECOMMENDED_INTERVAL', + 'type': 'ViInt32' + }, + 1150077: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the temperature of the device at the time of the last external calibration.\n\n **Units**: degrees Celsius (°C)\n\n **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E\n ' + }, + 'lv_property': 'External Calibration:Last External Calibration Temperature', + 'name': 'EXTERNAL_CALIBRATION_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150081: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the units of the NIRFSG_ATTR_IQ_I_OFFSET attribute and NIRFSG_ATTR_IQ_Q_OFFSET attribute. Offset units are either percent or volts.\n\n The AWG or VST offset is the specified percentage of the AWG or VST peak power level when the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute is set to NIRFSG_VAL_PERCENT. Given perfect carrier leakage suppression, the following equation is satisfied\n \n\n or equivalently\n\n\n If the NIRFSG_ATTR_IQ_I_OFFSET attribute is set to 100%, NIRFSG_ATTR_IQ_Q_OFFSET attribute is set to 0%, and NIRFSG_ATTR_POWER_LEVEL attribute set to 0 dBm, the desired RF signal is at 0 dBm and the carrier leakage is also at 0 dBm.\n\n The AWG or VST peak power level changes when settings change in other attributes such as the NIRFSG_ATTR_POWER_LEVEL, NIRFSG_ATTR_FREQUENCY, NIRFSG_ATTR_IQ_SKEW, NIRFSG_ATTR_IQ_GAIN_IMBALANCE, NIRFSG_ATTR_ATTENUATOR_HOLD_ENABLED, and NIRFSG_ATTR_ARB_PRE_FILTER_GAIN attributes. When the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute is set to NIRFSG_VAL_PERCENT, the actual AWG or VST offset changes as the AWG or VST peak power level changes to satisfy the preceding equations. These changes are useful if you are intentionally adding carrier leakage to test the tolerance of a receiver. When the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute is set to NIRFSG_VAL_PERCENT, the carrier leakage, in dBc, remains at a consistent level.\n\n If you are trying to eliminate residual carrier leakage due to calibration inaccuracies or drift, set the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute to NIRFSG_VAL_VOLTS. Offset correction voltage is applied to the I/Q modulator or VST, regardless of changes to the AWG or VST peak power level.\n\n **Default Value**: NIRFSG_VAL_PERCENT\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n \n **Defined Values**:\n ', + 'note': 'For any devices except PXIe-5820, if the NIRFSG_ATTR_IQ_OFFSET_UNITS attribute is set to NIRFSG_VAL_VOLTS, a 0.1 I offset results in a 0.1 V offset in the output. For PXIe-5820 devices, 0.1 I offset results in a 10% offset in the output.', + 'table_body': [ + [ + 'NIRFSG_VAL_PERCENT', + 'Specifies the NIRFSG_ATTR_IQ_I_OFFSET and NIRFSG_ATTR_IQ_Q_OFFSET attribute units as percent.' + ], + [ + 'NIRFSG_VAL_VOLTS', + 'Specifies the NIRFSG_ATTR_IQ_I_OFFSET and NIRFSG_ATTR_IQ_Q_OFFSET attribute units as volts.' + ] + ], + 'table_header': [ + 'Name', + 'Description' + ] + }, + 'enum': 'OffsetUnits', + 'lv_property': 'IQ Impairment:Offset Units', + 'name': 'IQ_OFFSET_UNITS', + 'type': 'ViInt32' + }, + 1150082: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the interpretation of the value passed to the NIRFSG_ATTR_FREQUENCY_SETTLING attribute.\n\n PXIe-5650/5651/5652/5653, PXIe-5673E: When the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute is set to a valid list name, the NIRFSG_ATTR_FREQUENCY_SETTLING_UNITS attribute supports only NIRFSG_VAL_TIME_AFTER_IO as a valid value.\n\n PXIe-5654/5654 with PXIe-5696: The NIRFSG_ATTR_FREQUENCY_SETTLING_UNITS attribute supports only NIRFSG_VAL_TIME_AFTER_IO and NIRFSG_VAL_PPM as valid values.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842\n\n **Default Value**: NIRFSG_VAL_PPM\n\n **Related Topics**\n\n `Events `_\n\n **Defined Values**:\n ', + 'note': 'If you set this attribute to NIRFSG_VAL_TIME_AFTER_IO, the definition of settled for the Configuration Settled event changes.', + 'table_body': [ + [ + 'NIRFSG_VAL_TIME_AFTER_LOCK', + 'Specifies the time to wait after the frequency PLL locks.' + ], + [ + 'NIRFSG_VAL_TIME_AFTER_IO', + 'Specifies the time to wait after all writes occur to change the frequency.' + ], + [ + 'NIRFSG_VAL_PPM', + 'Specifies the minimum frequency accuracy when settling completes. Units are in parts per million (PPM or 1E-6).' + ] + ], + 'table_header': [ + 'Name', + 'Description' + ] + }, + 'enum': 'FrequencySettlingUnits', + 'lv_property': 'RF:Frequency Settling Units', + 'name': 'FREQUENCY_SETTLING_UNITS', + 'type': 'ViInt32' + }, + 1150083: { + 'access': 'read-write', + 'attribute_class': 'AttributeViReal64TimeDeltaSeconds', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the frequency settling time. Interpretation of this value depends on the NIRFSG_ATTR_FREQUENCY_SETTLING_UNITS attribute.\n\n **Valid Values:**\n\n The valid values for this attribute depend on the NIRFSG_ATTR_FREQUENCY_SETTLING_UNITS attribute.\n\n \n\n\n **Default Value**: 1.0\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Settling Times `_\n\n `Events `_\n ' + }, + 'lv_property': 'RF:Frequency Settling', + 'name': 'FREQUENCY_SETTLING', + 'type': 'ViReal64', + 'type_in_documentation': 'hightime.timedelta, datetime.timedelta, or float in seconds' + }, + 1150084: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the module revision letter. If the NI-RFSG session is controlling multiple modules, this attribute returns the revision letter of the primary RF module. The NI-RFSG session is opened using the primary RF device name.\n\n **Supported Devices:** PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Identifying Module Revision `_\n ' + }, + 'lv_property': 'Device Characteristics:Module Revision', + 'name': 'MODULE_REVISION', + 'type': 'ViString' + }, + 1150085: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the external amplification or attenuation, if any, between the RF signal generator and the device under test.\n\n Positive values for this attribute represent amplification, and negative values for this attribute represent attenuation.\n\n **Valid Values:** -INF dB to +INF dB\n\n **Default Value:** 0dB\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'note': '- Setting this attribute adjusts the actual device output power to compensate for any amplification or attenuation between the RF signal generator and the device under test.\n\n - For the PXIe-5645, this attribute is ignored if you are using the I/Q ports.' + }, + 'lv_property': 'RF:External Gain (dB)', + 'name': 'EXTERNAL_GAIN', + 'type': 'ViReal64' + }, + 1150086: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the maximum amount of bus bandwidth to use for data transfers.\n\n **Units**: bytes per second\n\n **Default Value**: Device maximum\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Improving Streaming Performance `_\n ' + }, + 'lv_property': 'Arb:Data Transfer:Maximum Bandwidth', + 'name': 'DATA_TRANSFER_MAXIMUM_BANDWIDTH', + 'type': 'ViReal64' + }, + 1150087: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the preferred size of the data field in a PCI Express read request packet.\n\n In general, the larger the packet size, the more efficiently the device uses the bus. By default, NI RF signal generators use the largest packet size allowed by the system. However, due to different system implementations, some systems may perform better with smaller packet sizes.\n\n Recommended values for this attribute are powers of two between 64 and 512.\n\n **Units**: bytes\n\n **Default Value**: Device maximum\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Improving Streaming Performance `_\n ', + 'note': 'In some cases, the RF signal generator generates packets smaller than the preferred size you set with this attribute.' + }, + 'lv_property': 'Arb:Data Transfer:Advanced:Preferred Packet Size', + 'name': 'DATA_TRANSFER_PREFERRED_PACKET_SIZE', + 'type': 'ViInt32' + }, + 1150088: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the maximum number of concurrent PCI Express read requests the RF signal generator can issue.\n\n When transferring data from computer memory to device onboard memory across the PCI Express bus, the signal generator can issue multiple memory reads at the same time. In general, the larger the number of read requests, the more efficiently the device uses the bus because the multiple read requests keep the data flowing, even in a PCI Express topology that has high latency due to PCI Express switches in the data path. Most NI devices can issue a large number of read requests (typically 8 or 16). By default, this attribute is set to the highest value the RF signal generator supports.\n\n If other devices in your system cannot tolerate long data latencies, it may be helpful to decrease the number of in-flight read requests the RF signal generator issues. This helps to reduce the amount of data the signal generator reads at one time.\n\n **Units**: number of packets\n\n **Default Value**: Device maximum\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Improving Streaming Performance `_\n ' + }, + 'lv_property': 'Arb:Data Transfer:Advanced:Maximum In-Flight Read Requests', + 'name': 'DATA_TRANSFER_MAXIMUM_IN_FLIGHT_READS', + 'type': 'ViInt32' + }, + 1150089: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': " Specifies the oscillator phase digital-to-analog converter (DAC) value on the arbitrary waveform generator (AWG). Use this attribute to reduce the trigger jitter when synchronizing multiple devices with NI-TClk. This attribute can also help maintain synchronization repeatability by writing a previous measurement's phase DAC value to the current session. This attribute is applicable only when using the NIRFSG_ATTR_ARB_SAMPLE_CLOCK_SOURCE attribute set to NIRFSG_VAL_CLK_IN_STR.\n\n **Supported Devices:** PXIe-5673/5673E\n\n **Related Topics**\n\n `NI-TClk Overview `_\n " + }, + 'lv_property': 'Clock:Advanced:Arb Oscillator Phase DAC Value', + 'name': 'ARB_OSCILLATOR_PHASE_DAC_VALUE', + 'type': 'ViInt32' + }, + 1150096: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the name of the configuration list to make active. When you get or set an attribute and it is in the configuration list configuration, the attribute is set to or read from the active list step of the active configuration list.\n\n If the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute is set to "" (empty string), no list is active.\n\n **Default Value:** ""\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n \n **High-Level Functions**:\n\n - nirfsg_CreateConfigurationList\n ', + 'note': 'For the PXIe-5650/5651/5652 and PXIe-5673E, when this attribute is set to a valid list name, the NIRFSG_ATTR_FREQUENCY_SETTLING_UNITS attribute supports only NIRFSG_VAL_TIME_AFTER_IO as a valid value.' + }, + 'lv_property': 'Configuration List:Active List', + 'name': 'ACTIVE_CONFIGURATION_LIST', + 'type': 'ViString' + }, + 1150097: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the step in the configuration list for `RF list mode `_ that you want to make active for configuration or initiation.\n\n Activating a list makes all attributes in the list reflect the value of the attributes that correspond to the set specified by the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST and the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attributes.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n \n **High-Level Functions**:\n\n - nirfsg_CreateConfigurationListStep' + }, + 'lv_property': 'Configuration List:Active Step', + 'name': 'ACTIVE_CONFIGURATION_LIST_STEP', + 'type': 'ViInt64' + }, + 1150098: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the type of trigger to use as the Configuration List Step Trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DIGITAL_EDGE', + '1 (0x1)', + 'Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE attribute, and the active edge is always rising.' + ], + [ + 'NIRFSG_VAL_NONE', + '0 (0x0)', + 'Generation starts immediately, but the list does not advance.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ConfigListTrigType', + 'lv_property': 'Triggers:Configuration List Step:Edge', + 'name': 'CONFIGURATION_LIST_STEP_TRIGGER_TYPE', + 'type': 'ViInt32' + }, + 1150099: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the source terminal for the Configuration List Step Trigger. This attribute is valid only when the configuration list step type attribute is set to digital edge.\n\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n\n `Marker Events `_\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_MARKER0_EVENT_STR', + 'Marker0Event', + 'The trigger is received from the Marker Event 0.' + ], + [ + 'NIRFSG_VAL_MARKER1_EVENT_STR', + 'Marker1Event', + 'The trigger is received from the Marker Event 1.' + ], + [ + 'NIRFSG_VAL_MARKER2_EVENT_STR', + 'Marker2Event', + 'The trigger is received from the Marker Event 2.' + ], + [ + 'NIRFSG_VAL_MARKER3_EVENT_STR', + 'Marker3Event', + 'The trigger is received from the Marker Event 3.' + ], + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The trigger is received on PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The trigger is received on PFI 1.' + ], + [ + 'NIRFSG_VAL_PXI_STAR_STR', + 'PXI_Star', + 'The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG7_STR', + 'PXI_Trig7', + 'The trigger is received on PXI trigger line 7.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'PXIe_DStarB', + 'The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842.' + ], + [ + 'NIRFSG_VAL_TIMER_EVENT_STR', + 'TimerEvent', + 'The trigger is received from the Timer Event.' + ], + [ + 'NIRFSG_VAL_TRIG_IN_STR', + 'TrigIn', + 'The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ConfigListTrigDigEdgeSource', + 'lv_property': 'Triggers:Configuration List Step:Digital Edge:Source', + 'name': 'DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE', + 'type': 'ViString' + }, + 1150100: { + 'access': 'read-write', + 'attribute_class': 'AttributeViReal64TimeDeltaSeconds', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the time before the timer emits an event after the task is started and specifies the time interval between Timer events after the first event.\n\n **Units**: seconds (s)\n\n **Default Value:** 0\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Events `_\n ', + 'note': 'For the PXIe-5820/5840/5841/5842/5860, this attribute must be set for the timer to start. If you do not set this attribute, the timer is disabled.' + }, + 'lv_property': 'Events:Timer:Interval', + 'name': 'TIMER_EVENT_INTERVAL', + 'type': 'ViReal64', + 'type_in_documentation': 'hightime.timedelta, datetime.timedelta, or float in seconds' + }, + 1150102: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the configuration list runs only once or continuously.\n\n **Default Value:** NIRFSG_VAL_CONTINUOUS\n\n **Supported Devices:** PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_CONTINUOUS', + '0', + 'NI-RFSG runs the configuration list continuously.' + ], + [ + 'NIRFSG_VAL_SINGLE', + '1', + 'NI-RFSG runs the configuration list only once.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ConfigurationListRepeat', + 'lv_property': 'Configuration List:Configuration List Repeat', + 'name': 'CONFIGURATION_LIST_REPEAT', + 'type': 'ViInt32' + }, + 1150103: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the active edge for the Configuration List Step trigger. This attribute is valid only when the NIRFSG_ATTR_CONFIGURATION_LIST_STEP_TRIGGER_TYPE attribute is set to digital edge. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_RISING_EDGE', + 'Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level.' + ] + ], + 'table_header': [ + 'Name', + 'Description' + ] + }, + 'enum': 'ConfigListTrigDigEdgeEdge', + 'lv_property': 'Triggers:Configuration List Step:Digital Edge:Edge', + 'name': 'DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_EDGE', + 'type': 'ViInt32' + }, + 1150104: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the temperature, in degrees Celsius, to use for adjusting the device settings to correct for temperature changes. If you set this attribute, NI-RFSG uses the value you specify and therefore no longer uses the actual device temperature as the correction temperature. If you do not set this attribute, NI-RFSG checks the current device temperature in the Committed state and automatically sets the value of this attribute.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842/5860: This attribute is read only.\n\n **Units**: Degrees Celsius\n\n **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653, PXIe-5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'note': '- Resetting this attribute reverts back to the default unset behavior.\n\n - Use this attribute only when your application requires the same settings to be used every time, regardless of the temperature variation. In these cases, it is best to ensure that the temperature does not vary too much.' + }, + 'lv_property': 'RF:Advanced:Correction Temperature', + 'name': 'CORRECTION_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150105: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Configuration List Step trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n [RF List Mode](RFSG.chm/RF_List_Mode_Overview.html)\n\n [PFI Lines](RFSG.chm/integration_PFI_Lines.html)\n\n [PXI Trigger Lines](RFSG.chm/integration_PXI_Trigger.html)\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The signal is not exported.' + ], + [ + 'NIRFSG_VAL_PFI0_STR', + 'PFI0', + 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + ], + [ + 'NIRFSG_VAL_PFI1_STR', + 'PFI1', + 'The signal is exported to the PFI 1 connector.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'PXIe_DStarC', + 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842.' + ], + [ + 'NIRFSG_VAL_TRIG_OUT_STR', + 'TrigOut', + 'The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + ], + [ + 'NIRFSG_VAL_DIO0_STR', + 'DIO/PFI0', + 'The trigger is received on PFI0 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO1_STR', + 'DIO/PFI1', + 'The trigger is received on PFI1 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO2_STR', + 'DIO/PFI2', + 'The trigger is received on PFI2 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO3_STR', + 'DIO/PFI3', + 'The trigger is received on PFI3 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO4_STR', + 'DIO/PFI4', + 'The trigger is received on PFI4 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO5_STR', + 'DIO/PFI5', + 'The trigger is received on PFI5 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO6_STR', + 'DIO/PFI6', + 'The trigger is received on PFI6 from the front panel DIO terminal.' + ], + [ + 'NIRFSG_VAL_DIO7_STR', + 'DIO/PFI7', + 'The trigger is received on PFI7 from the front panel DIO terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ConfigListTrigExportOutputTerm', + 'lv_property': 'Triggers:Configuration List Step:Export Output Terminal', + 'name': 'EXPORTED_CONFIGURATION_LIST_STEP_TRIGGER_OUTPUT_TERMINAL', + 'type': 'ViString' + }, + 1150112: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the name of the fully qualified signal name as a string.\n\n **Default Values**:\n\n PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/StartedEvent, where *AWGName* is the name of your associated AWG module in MAX.\n\n PXIe-5830/5831/5832: /*BasebandModule*/ao/0/StartedEvent, where *BasebandModule* is the name of the baseband module of your device in MAX.\n\n PXIe-5820/5840/5841: /*ModuleName*/ao/0/StartedEvent, where *ModuleName* is the name of your device in MAX.\n\n PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/StartedEvent, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1).\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Events `_\n\n `Syntax for Terminal Names `_\n\n **High-Level Functions**:\n\n - nirfsg_GetTerminalName\n ' + }, + 'lv_property': 'Events:Started Event Terminal Name', + 'name': 'STARTED_EVENT_TERMINAL_NAME', + 'type': 'ViString' + }, + 1150113: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the name of the fully qualified signal name as a string.\n\n **Default Values**:\n\n PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/DoneEvent, where *AWGName* is the name of your associated AWG module in MAX.\n\n PXIe-5830/5831/5832: /*BasebandModule*/ao/0/DoneEvent, where *BasebandModule* is the name of the baseband module of your device in MAX.\n\n PXIe-5820/5840/5841: /*ModuleName*/ao/0/DoneEvent, where *ModuleName* is the name of your device in MAX.\n\n PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/DoneEvent, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1).\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Events `_\n\n `Syntax for Terminal Names `_\n \n **High-Level Functions**:\n\n - nirfsg_GetTerminalName' + }, + 'lv_property': 'Events:Done Event Terminal Name', + 'name': 'DONE_EVENT_TERMINAL_NAME', + 'type': 'ViString' + }, + 1150114: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the name of the fully qualified signal name as a string.\n\n **Default Values**:\n\n PXIe-5654/5654 with PXIe-5696: /*ModuleName*/StartTrigger, where *ModuleName* is the name of your device in MAX.\n\n PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/StartTrigger, where *ModuleName* is the name of your associated AWG module in MAX.\n\n PXIe-5830/5831/5832: /*BasebandModule*/ao/0/StartTrigger, where *BasebandModule* is the name of the baseband module of your device in MAX.\n\n PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/StartTrigger, where *ModuleName* is the name of your device in MAX.\n\n PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/StartTrigger, where *ModuleName* is the name of your device in MAX and *ChannelNumber* is the channel number (0 or 1).\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Syntax for Terminal Names `_\n\n **High-Level Functions**:\n\n - nirfsg_GetTerminalName\n ' + }, + 'lv_property': 'Triggers:Start:Terminal Name', + 'name': 'START_TRIGGER_TERMINAL_NAME', + 'type': 'ViString' + }, + 1150115: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the name of the fully qualified signal name as a string.\n\n **Default Values**:\n\n PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/Marker *X* Event, where *AWGName* is the name of your associated AWG module in MAX and *X* is Marker Event 0 through 3.\n\n PXIe-5830/5831/5832: /*BasebandModule*/ao/0/Marker *X* Event, where *BasebandModule* is the name of the baseband module of your device in MAX and *X* is Marker Event 0 through 3.\n\n PXIe-5820/5840/5841: /*ModuleName*/ao/0/Marker *X* Event, where *ModuleName* is the name of your device in MAX and *X* is Marker Event 0 through 3.\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Events `_\n\n `Syntax for Terminal Names `_\n \n **High-Level Functions**:\n\n - nirfsg_GetTerminalName' + }, + 'lv_property': 'Events:Marker:Terminal Name', + 'name': 'MARKER_EVENT_TERMINAL_NAME', + 'repeated_capability_type': 'markers', + 'supported_rep_caps': [ + 'markers' + ], + 'type': 'ViString' + }, + 1150116: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the name of the fully qualified signal name as a string.\n\n **Default Values**:\n\n PXI-5670/5671, PXIe-5672/5673/5673E: /*AWGName*/ScriptTrigger *X*, where *AWGName* is the name of your associated AWG module in MAX and *X* is Script Trigger 0 through 3.\n\n PXIe-5830/5831/5832: /*BasebandModule*/ao/0/ScriptTrigger *X*, where *BasebandModule* is the name of the baseband module of your device in MAX and *X* is Script Trigger 0 through 3.\n\n PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/ScriptTrigger *X*, where *ModuleName* is the name of your device in MAX and *X* is Script Trigger 0 through 3.\n\n PXIe-5860: /*ModuleName*/ao/*ChannelNumber*/ScriptTrigger *X*, where *ModuleName* is the name of your device in MAX, *ChannelNumber* is the channel number (0 or 1), and *X* is Script Trigger 0 through 3.\n\n **Supported Devices:** PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n\n `Syntax for Terminal Names `_\n\n **High-Level Functions**:\n\n - nirfsg_GetTerminalName\n ' + }, + 'lv_property': 'Triggers:Script:Terminal Name', + 'name': 'SCRIPT_TRIGGER_TERMINAL_NAME', + 'supported_rep_caps': [ + 'script_triggers' + ], + 'type': 'ViString' + }, + 1150117: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the fully-qualified signal name as a string.\n\n **Default Values**:\n\n PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX.\n\n PXIe-5673E: /*AWGName*/ConfigurationListStepTrigger, where *AWGName* is the name of your associated AWG module in MAX.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX.\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Triggers `_\n\n `Syntax for Terminal Names `_\n \n **High-Level Functions**:\n\n - nirfsg_GetTerminalName' + }, + 'lv_property': 'Triggers:Configuration List Step:Terminal Name', + 'name': 'CONFIGURATION_LIST_STEP_TRIGGER_TERMINAL_NAME', + 'type': 'ViString' + }, + 1150118: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Adjusts the dynamics of the current driving the YIG main coil.\n\n **Default Value:** NIRFSG_VAL_MANUAL\n\n **Supported Devices:** PXIe-5653\n \n **Defined Values**:\n ', + 'note': 'Setting this attribute to NIRFSG_VAL_FAST on the PXIe-5653 allows the frequency to settle significantly faster for some frequency transitions at the expense of increased phase noise.', + 'table_body': [ + [ + 'NIRFSG_VAL_SLOW', + 'Adjusts the YIG main coil for an underdamped response.' + ], + [ + 'NIRFSG_VAL_FAST', + 'Adjusts the YIG main coil for an overdamped response.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'YigMainCoilDrive', + 'lv_property': 'RF:Advanced:YIG Main Coil Drive', + 'name': 'YIG_MAIN_COIL_DRIVE', + 'type': 'ViInt32' + }, + 1150122: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the configuration list step that is currently programmed to the hardware. The list is zero-indexed. You can query this attribute only when a list is executed.\n\n PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E: This attribute can be read only when a configuration list is running.\n\n PXIe-5644/5645/5646: This attribute always returns 0 when the configuration list is not running.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842: If the configuration list is not running, this attribute returns the last step of a configuration list that is programmed to the hardware. If the device was last initiated without an active configuration list, this attribute returns 0.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n ' + }, + 'lv_property': 'Configuration List:Step In Progress', + 'name': 'CONFIGURATION_LIST_STEP_IN_PROGRESS', + 'type': 'ViInt64' + }, + 1150123: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the RF signal generator reads data from the peer-to-peer endpoint. This attribute is endpoint-based.\n\n **Default Value**: VI_FALSE\n\n **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Peer-to-peer data streaming is enabled.' + ], + [ + 'VI_FALSE', + 'Peer-to-peer data streaming is disabled.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Peer-to-Peer:Enabled', + 'name': 'P2P_ENABLED', + 'type': 'ViBoolean' + }, + 1150124: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the size, in samples, of the device endpoint. This attribute is endpoint-based.\n\n **Units**: samples (s)\n\n **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n ' + }, + 'lv_property': 'Peer-to-Peer:Endpoint Size', + 'name': 'P2P_ENDPOINT_SIZE', + 'type': 'ViInt64' + }, + 1150125: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the current space available in the endpoint. You can use this attribute when priming the endpoint with initial data using the nirfsg_WriteP2pEndpointI16 function to determine how many samples you can write. You also can use this attribute to characterize the performance and measure the latency of the peer-to-peer stream as data moves across the bus. This attribute is endpoint-based.\n\n **Units**: samples per channel\n\n **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n\n `Starting Peer-to-Peer Generation `_\n ' + }, + 'lv_property': 'Peer-to-Peer:Space Available In Endpoint', + 'name': 'P2P_SPACE_AVAILABLE_IN_ENDPOINT', + 'type': 'ViInt64' + }, + 1150126: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the largest number of samples per channel available in the endpoint since this attribute was last read. You can use this attribute to determine how much endpoint space to use as a buffer against bus traffic latencies by reading the attribute and keeping track of the largest value returned. This attribute is endpoint-based.\n\n If you want to minimize the latency for data to move through the endpoint and be generated by the RF signal generator, use the NIRFSG_ATTR_P2P_DATA_TRANSFER_PERMISSION_INITIAL_CREDITS attribute to grant fewer initial credits than the default of the entire endpoint size.\n\n **Units**: samples per channel\n\n **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n ' + }, + 'lv_property': 'Peer-to-Peer:Most Space Available in Endpoint', + 'name': 'P2P_MOST_SPACE_AVAILABLE_IN_ENDPOINT', + 'type': 'ViInt64' + }, + 1150127: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the number of peer-to-peer FIFO endpoints supported by the device.\n\n **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n ' + }, + 'lv_property': 'Peer-to-Peer:Endpoint Count', + 'name': 'P2P_ENDPOINT_COUNT', + 'type': 'ViInt32' + }, + 1150128: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the number of samples the endpoint must receive before the device starts generation. If no level is specified, NI-RFSG automatically sets this value to -1. This attribute applies only when the NIRFSG_ATTR_START_TRIGGER_TYPE attribute is set to NIRFSG_VAL_P2P_ENDPOINT_FULLNESS\n\n **Default Value:** -1, which allows NI-RFSG to select the appropriate fullness value.\n\n **Supported Devices:** PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Start Trigger `_\n ', + 'note': 'Due to an additional internal FIFO in the RF signal generator, the writer peer actually needs to write 2,304 bytes more than the quantity of data specified by this attribute to satisfy the trigger level.' + }, + 'lv_property': 'Triggers:Start:P2P Endpoint Fullness:Level', + 'name': 'P2P_ENDPOINT_FULLNESS_START_TRIGGER_LEVEL', + 'type': 'ViInt64' + }, + 1150129: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Configuration Settled event. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Triggers `_\n\n `Events `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The signal is not exported.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG0_STR', + 'PXI_Trig0', + 'The trigger is received on PXI trigger line 0.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG1_STR', + 'PXI_Trig1', + 'The trigger is received on PXI trigger line 1.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG2_STR', + 'PXI_Trig2', + 'The trigger is received on PXI trigger line 2.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG3_STR', + 'PXI_Trig3', + 'The trigger is received on PXI trigger line 3.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG4_STR', + 'PXI_Trig4', + 'The trigger is received on PXI trigger line 4.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG5_STR', + 'PXI_Trig5', + 'The trigger is received on PXI trigger line 5.' + ], + [ + 'NIRFSG_VAL_PXI_TRIG6_STR', + 'PXI_Trig6', + 'The trigger is received on PXI trigger line 6.' + ], + [ + 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'PXIe_DStarC', + 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842.' + ], + [ + 'NIRFSG_VAL_TRIG_OUT_STR', + 'TrigOut', + 'TRIG IN/OUT terminal.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ConfigurationSettledEventExportOutputTerm', + 'lv_property': 'Events:Configuration Settled Event Export Output Terminal', + 'name': 'EXPORTED_CONFIGURATION_SETTLED_EVENT_OUTPUT_TERMINAL', + 'type': 'ViString' + }, + 1150132: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the adjustment for the NIRFSG_ATTR_POWER_LEVEL attribute. This attribute is valid only when you set the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to NIRFSG_VAL_PEAK_POWER. The value of the NIRFSG_ATTR_PEAK_POWER_ADJUSTMENT attribute adds to the NIRFSG_ATTR_POWER_LEVEL attribute. The NIRFSG_ATTR_PEAK_POWER_ADJUSTMENT attribute typically specifies the peak-to-average power ratio (PAPR) of a waveform. If the PAPR is specified, the specified power level becomes the average power level of the waveform, even if the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute is set to NIRFSG_VAL_PEAK_POWER.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_—Refer to this topic for more information about using this attribute to associate a peak power adjustment with a waveform.\n ', + 'note': '- For the PXIe-5673/5673E only, use this attribute to associate a peak power adjustment with a waveform.\n\n - For the PXIe-5645, this attribute is ignored if you are using the I/Q ports.' + }, + 'lv_property': 'RF:Peak Power Adjustment (dB)', + 'name': 'PEAK_POWER_ADJUSTMENT', + 'type': 'ViReal64' + }, + 1150133: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Configures the loop bandwidth of the reference PLL.\n\n **Default Value:** NIRFSG_VAL_NARROW\n\n **Supported Devices:** PXIe-5653\n\n **Related Topics**\n\n `Phase-Locked Loop Bandwidth `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_NARROW', + 'Uses the narrowest loop bandwidth setting for the PLL.' + ], + [ + 'NIRFSG_VAL_MEDIUM', + 'Uses the medium loop bandwidth setting for the PLL.' + ], + [ + 'NIRFSG_VAL_WIDE', + 'Uses the widest loop bandwidth setting for the PLL.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'LoopBandwidth', + 'lv_property': 'RF:Advanced:Ref PLL Bandwidth', + 'name': 'REF_PLL_BANDWIDTH', + 'type': 'ViInt32' + }, + 1150134: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the interval at which the RF signal generator issues credits to allow the writer peer to transfer data over the bus into the configured endpoint. This attribute is coerced up by NI-RFSG to the nearest 128-byte boundary. This attribute is endpoint-based.\n\n **Units**: samples per channel\n\n **Supported Devices:** PXIe-5673E\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n\n `Configuring Flow Control `_\n ' + }, + 'lv_property': 'Peer-to-Peer:Data Transfer Permission Interval', + 'name': 'P2P_DATA_TRANSFER_PERMISSION_INTERVAL', + 'type': 'ViInt64' + }, + 1150135: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the initial amount of data that the writer peer can transfer over the bus into the configured endpoint when the peer-to-peer data stream is enabled. If this attribute is not set and the endpoint is empty, credits equal to the full endpoint size are issued to the writer peer. If data is written to the endpoint using the nirfsg_WriteP2pEndpointI16 function prior to enabling the stream, credits equal to the remaining space available in the endpoint are issued to the writer peer. This attribute is coerced up by NI-RFSG to 8-byte boundaries. This attribute is endpoint-based.\n\n **Units**: samples per channel\n\n **Default Value:** 1,024\n\n **Supported Devices:** PXIe-5673E\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n\n `Configuring Flow Control `_\n ' + }, + 'lv_property': 'Peer-to-Peer:Data Transfer Permission Initial Credits', + 'name': 'P2P_DATA_TRANSFER_PERMISSION_INITIAL_CREDITS', + 'type': 'ViInt64' + }, + 1150136: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Indicates, in degrees Celsius, the temperature of the device at the time of the last self calibration.\n\n **Supported Devices:** PXIe-5644/5645/5646\n ' + }, + 'lv_property': 'Self Calibration:Last Self Calibration Temperature', + 'name': 'SELF_CALIBRATION_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150137: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Configures the amplitude settling accuracy in decibels. NI-RFSG waits until the RF power settles within the specified accuracy level after calling the nirfsg_Initiate function or nirfsg_WaitUntilSettled function or prior to advancing to next step if using RF list mode.\n\n Any specified amplitude settling value that is above the acceptable minimum value is coerced down to the closest valid value.\n\n PXI/PXIe-5650/5651/5652: This attribute is for NI internal use only.\n\n **Units**: dB\n\n **Default Value:**\n\n PXIe-5654: 4\n\n PXIe-5654 with PXIe-5696 (ALC disabled): 4\n\n PXIe-5654 with PXIe-5696 (ALC enabled): 0.2\n\n PXIe-5820/5830/5831/5832/5840/5841/5842/5860: 0.5\n\n **Valid Values:**\n\n PXIe-5654: 1.5, 2, 4\n\n PXIe-5654 with PXIe-5696 (ALC disabled): 1.5, 2, 4\n\n PXIe-5654 with PXIe-5696 (ALC enabled): 0.2, 0.5\n\n PXIe-5820/5830/5831/5832/5840/5841/5842/5860: 0.01 to 1\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Amplitude Settling Times `_\n ' + }, + 'lv_property': 'RF:Amplitude Settling', + 'name': 'AMPLITUDE_SETTLING', + 'type': 'ViReal64' + }, + 1150140: { + 'access': 'read-write', + 'attribute_class': 'AttributeViReal64TimeDeltaSeconds', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Indicates the maximum amount of time allowed to complete a streaming write operation.\n\n **Default Value:** 10.0seconds\n\n **Supported Devices:** PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n\n `Streaming Waveform Data `_\n ' + }, + 'lv_property': 'Arb:Data Transfer:Streaming:Streaming Write Timeout', + 'name': 'STREAMING_WRITE_TIMEOUT', + 'type': 'ViReal64', + 'type_in_documentation': 'hightime.timedelta, datetime.timedelta, or float in seconds' + }, + 1150141: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Determines the inheritance behavior of the NIRFSG_ATTR_PEAK_POWER_ADJUSTMENT attribute when a script inherits values from specified waveforms.\n\n **Default Value:** NIRFSG_VAL_EXACT_MATCH\n\n **Supported Devices:** PXIe-5673/5673E\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_EXACT_MATCH', + 'Errors out if different values are detected in the script.' + ], + [ + 'NIRFSG_VAL_MINIMUM', + 'Uses the minimum value found in the script.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'PpaInheritance', + 'lv_property': 'RF:Peak Power Adjustment Inheritance', + 'name': 'PEAK_POWER_ADJUSTMENT_INHERITANCE', + 'type': 'ViInt32' + }, + 1150142: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the device is the master device when synchronizing the Script Trigger.\n\n The master device distributes the synchronized Script Trigger to all devices in the system through the Script Trigger distribution line.\n\n When synchronizing the Script trigger, one device must always be designated as the master. The master device actively drives the Script Trigger distribution line. For slave devices, set the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute to digital edge, and set the NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_SOURCE attribute to sync_script.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5644/5645/5646\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Synchronizing Sample Clock and Sampled Reference Clock Signals `_\n\n Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers.\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'The device is the master device for synchronizing the Script Trigger.' + ], + [ + 'VI_FALSE', + 'The device is not the master for synchronizing the Script Trigger.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Triggers:Sync Script Trigger Master', + 'name': 'SYNC_SCRIPT_TRIGGER_MASTER', + 'type': 'ViBoolean' + }, + 1150143: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies which external trigger line distributes the synchronized Script Trigger signal. When synchronizing the Script Trigger, configure all devices to use the same Script Trigger distribution line.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5644/5645/5646\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Synchronizing Sample Clock and Sampled Reference Clock Signals `_\n\n Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers.\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Triggers:Sync Script Trigger Dist Line', + 'name': 'SYNC_SCRIPT_TRIGGER_DIST_LINE', + 'type': 'ViString' + }, + 1150144: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the connector(s) to use to generate the signal. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n You must write complex I and Q data for all options. The Q data has no effect if you set this attribute to I Only and set the NIRFSG_ATTR_IQ_OUT_PORT_CARRIER_FREQUENCY attribute to 0. If you set the NIRFSG_ATTR_IQ_OUT_PORT_CARRIER_FREQUENCY attribute to a value other than 0, the onboard signal processing (OSP) frequency shifts I and Q as a complex value and outputs the real portion of the result on the I connector(s) of the device.\n\n If you set the NIRFSG_ATTR_OUTPUT_PORT attribute to NIRFSG_VAL_I_ONLY\\_ONLY or NIRFSG_VAL_IQ_OUT, the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute applies.\n\n **Default Value:**\n\n PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_RF_OUT\n\n PXIe-5820: NIRFSG_VAL_IQ_OUT\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_CAL_OUT', + '14002 (0x36b2)', + 'Enables the CAL OUT port.' + ], + [ + 'NIRFSG_VAL_I_ONLY', + '14003 (0x36b3)', + 'Enables the I connectors of the I/Q OUT port. This value is valid on only the PXIe-5645.' + ], + [ + 'NIRFSG_VAL_IQ_OUT', + '14001 (0x36b1)', + 'Enables the I/Q OUT port. This value is valid on only the PXIe-5645 and PXIe-5820.' + ], + [ + 'NIRFSG_VAL_RF_OUT', + '14000 (0x36b0)', + 'Enables the RF OUT port. This value is not valid for the PXIe-5820.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'OutputPort', + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:Output Port', + 'name': 'OUTPUT_PORT', + 'type': 'ViInt32' + }, + 1150145: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the frequency of the I/Q OUT port signal. The onboard signal processing (OSP) applies the specified frequency shift to the I/Q data before the data is sent to the digital-to-analog converter (DAC). To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Units:** hertz (Hz)\n\n **Valid Values:**\n\n PXIe-5645: -60MHz to 60MHz\n\n PXIe-5820: -500MHz to 500MHz\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', + 'note': '- For the PXIe-5820, NI recommends using the NIRFSG_ATTR_FREQUENCY attribute.\n\n - For the PXIe-5645, this attribute is ignored if you are using the RF ports.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Carrier Frequency', + 'name': 'IQ_OUT_PORT_CARRIER_FREQUENCY', + 'type': 'ViReal64' + }, + 1150146: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to use the I/Q OUT port for differential configuration or single-ended configuration. If you set this attribute to NIRFSG_VAL_SINGLE_ENDED, you must terminate the negative I and Q output connectors with a 50 Ohm termination.\n\n If you set this attribute to NIRFSG_VAL_SINGLE_ENDED, the positive I and Q connectors generate the resulting waveform. If you set this attribute to NIRFSG_VAL_DIFFERENTIAL, both the positive and negative I and Q connectors generate the resulting waveform.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViInt32 function to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string).\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_DIFFERENTIAL\n\n PXIe-5820: The only valid value for this attribute is NIRFSG_VAL_DIFFERENTIAL.\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n\n **Related Topics**\n\n `Differential and Single-Ended Operation (I/O Interface) `_\n \n **Defined Values**:\n ', + 'note': 'For the PXIe-5645, this attribute is ignored if you are using the RF ports.', + 'table_body': [ + [ + 'NIRFSG_VAL_DIFFERENTIAL', + '15000 (0x3a98)', + 'Sets the terminal configuration to differential.' + ], + [ + 'NIRFSG_VAL_SINGLE_ENDED', + '15001 (0x3a99)', + 'Sets the terminal configuration to single-ended.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'IQOutPortTermCfg', + 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Terminal Configuration', + 'name': 'IQ_OUT_PORT_TERMINAL_CONFIGURATION', + 'type': 'ViInt32' + }, + 1150147: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the amplitude of the generated signal in volts, peak-to-peak (V). For example, if you set this attribute to 1.0, the output signal ranges from -0.5 volts to 0.5 volts.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string).\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n Refer to the specifications document for your device for allowable output levels.\n\n **Units:** Volts, peak-to-peak (V\\ :sub:`pk-pk`\\ )\n\n **Valid Values:**\n\n PXIe-5645: 1V\\ :sub:`pk-pk`\\ maximum if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_DIFFERENTIAL, and 0.5V\\ :sub:`pk-pk`\\ \n\nmaximum if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_SINGLE_ENDED.\n\n PXIe-5820: 3.4V\\ :sub:`pk-pk`\\ maximum for signal bandwidth less than 160MHz, and 2V\\ :sub:`pk-pk`\\ \n\nmaximum for signal bandwidth greater than 160MHz.\n\n **Default Value:** 0.5volts\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', + 'note': '- For the PXIe-5645, this attribute is ignored if you are using the RF ports.\n\n - The valid values are only applicable when you set the NIRFSG_ATTR_IQ_OUT_PORT_LOAD_IMPEDANCE attribute to 50 Ω and when you set the NIRFSG_ATTR_IQ_OUT_PORT_OFFSET attribute to 0.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Level', + 'name': 'IQ_OUT_PORT_LEVEL', + 'type': 'ViReal64' + }, + 1150148: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the common-mode offset applied to the signals generated at each differential output terminal. This attribute applies only when you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_DIFFERENTIAL. Common-mode offset shifts both positive and negative terminals in the same direction.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string).\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Units:** Volts\n\n **Valid Values:**\n\n PXIe-5645: -0.8V to 0.8V if you set the NIRFSG_ATTR_IQ_OUT_PORT_LOAD_IMPEDANCE attribute to 50 Ω. The valid values are -1.2V to 1.2V if you set the NIRFSG_ATTR_IQ_OUT_PORT_LOAD_IMPEDANCE attribute to 100 Ω.\n\n PXIe-5820: -0.25V to 1.5V\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', + 'note': '- For the PXIe-5645, this attribute is ignored if you are using the RF ports.\n\n - The valid range is dependent on the load impedance.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Common Mode Offset', + 'name': 'IQ_OUT_PORT_COMMON_MODE_OFFSET', + 'type': 'ViReal64' + }, + 1150149: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the value, in volts, that the signal generator adds to the arbitrary waveform data. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string).\n\n PXIe-5645: The waveform may be scaled in DSP prior to adding offset and the device state may be changed in order to accommodate the requested offset.\n\n PXIe-5820: The waveform is not automatically scaled in DSP. To prevent DSP overflows, use the NIRFSG_ATTR_ARB_PRE_FILTER_GAIN attribute to scale the waveform to provide additional headroom for offsets.\n\n **Units:** Volts\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', + 'note': 'For the PXIe-5645, this attribute is ignored if you are using the RF ports.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Offset', + 'name': 'IQ_OUT_PORT_OFFSET', + 'type': 'ViReal64' + }, + 1150150: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to use the internal or external local oscillator (LO) source. If the NIRFSG_ATTR_LO_SOURCE attribute is set to "" (empty string), NI-RFSG uses the internal LO source. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n To use this attribute for the PXIe-5830/5831/5832, you must use the channelName parameter of the nirfsg_SetAttributeViString function to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string).\n\n **Default Value:** NIRFSG_VAL_LO_SOURCE_ONBOARD_STR\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `PXIe-5830 LO Sharing Using NI-RFSA and NI-RFSG `_\n\n `PXIe-5831/5832 LO Sharing Using NI-RFSA and NI-RFSG `_\n \n **Defined Values**:\n ', + 'note': 'For the PXIe-5841 with PXIe-5655, RF list mode is not supported when this attribute is set to NIRFSG_VAL_LO_SOURCE_SG_SA_SHARED_STR.', + 'table_body': [ + [ + 'NIRFSG_VAL_LO_SOURCE_AUTOMATIC_SG_SA_SHARED_STR', + 'Automatic_SG_SA_Shared', + 'NI-RFSG internally makes the configuration to share the LO between NI-RFSA and NI-RFSG. This value is valid only on the PXIe-5820/5830/5831/5832/5840/5841/5842.' + ], + [ + 'NIRFSG_VAL_LO_SOURCE_LO_IN_STR', + 'LO_In', + 'Uses an external LO as the LO source. Connect a signal to the LO IN connector on the device and use the NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY attribute to specify the LO frequency.' + ], + [ + 'NIRFSG_VAL_LO_SOURCE_ONBOARD_STR', + 'Onboard', + 'Uses an internal LO as the LO source. If you specify an internal LO source, the LO is generated inside the device itself.' + ], + [ + 'NIRFSG_VAL_LO_SOURCE_SG_SA_SHARED_STR', + 'SG_SA_Shared', + 'Uses the same internal LO during NI-RFSA and NI-RFSG sessions. NI-RFSG selects an internal synthesizer and the synthesizer signal is switched to both the RF In and RF Out mixers. This value is valid only on the PXIe-5830/5831/5832/5841 with PXIe-5655/5842.' + ], + [ + 'NIRFSG_VAL_LO_SOURCE_SECONDARY_STR', + 'Secondary', + 'Uses the PXIe-5831/5840 internal LO as the LO source. This value is valid only on the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'LoSource', + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:LO Source', + 'name': 'LO_SOURCE', + 'type': 'ViString' + }, + 1150151: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the step size for tuning the local oscillator (LO) phase-locked loop (PLL).\n\n When the NIRFSG_ATTR_LO_PLL_FRACTIONAL_MODE_ENABLED attribute is enabled, the specified step size affects the fractional spur performance of the device. When the NIRFSG_ATTR_LO_PLL_FRACTIONAL_MODE_ENABLED attribute is disabled, the specified step size affects the phase noise performance of the device.\n\n The valid values for this attribute depend on the NIRFSG_ATTR_LO_PLL_FRACTIONAL_MODE_ENABLED attribute.\n\n **PXIe-5644/5645/5646**—If you disable the NIRFSG_ATTR_LO_PLL_FRACTIONAL_MODE_ENABLED attribute, the specified value is coerced to the nearest valid value.\n\n **PXIe-5840/5841**—If you disable the NIRFSG_ATTR_LO_PLL_FRACTIONAL_MODE_ENABLED attribute, the specified value is coerced to the nearest valid value that is less than or equal to the desired step size.\n\n **Units:** hertz (Hz)\n\n **Default Values:**\n\n PXIe-5644/5645/5646: 200kHz\n\n PXIe-5830: 2MHz\n\n PXIe-5831/5832 (RF port): 8MHz\n\n PXIe-5831/5832 (IF port): 2MHz, 4MHz\n\n PXIe-5840/5841:\n\n - Fractional mode: 500 kHz\n - Integer mode: 10 MHz for frequencies less than or equal to 4 GHz. 20 MHz for frequencies greater than 4 GHz.\n\n PXIe-5841 with PXIe-5655: 500kHz\n\n PXIe-5842: 1Hz\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842\n\n ', + 'note': 'Values up to 100 MHz are coerced to 50 MHz.', + 'table_body': [ + [ + 'NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE Attribute Valid Values on PXIe-5644/5645', + '50 kHz to 24 MHz', + '4 MHz, 5 MHz, 6 MHz, 12 MHz, or 24 MHz' + ], + [ + 'NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE Attribute Valid Values on PXIe-5646', + '50 kHz to 25 MHz', + '2 MHz, 5 MHz, 10 MHz, or 25 MHz' + ], + [ + 'NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE Attribute Valid Values on PXIe-5840/5841', + '50 kHz to 100 MHz', + '1 MHz, 5 MHz, 10 MHz, 25 MHz, 50 MHz, or 100 MHz' + ], + [ + 'NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE Attribute Valid Values on PXIe-5830/5831/ 5832 LO1', + '8 Hz to 400 MHz', + '—' + ], + [ + 'NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE Attribute Valid Values on PXIe-5830/5831/ 5832 LO2', + '4 Hz to 400 MHz', + '—' + ], + [ + 'NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE Attribute Valid Values on PXIe-5841 with PXIe-5655/NI PXIe-5842 (See note)', + '1 nHz to 100 MHz', + '1 nHz to 50 MHz' + ] + ], + 'table_header': [ + 'NIRFSG_ATTR_LO_PLL_FRACTIONAL_MODE_ENABLED Attribute Setting', + 'NIRFSG_VAL_ENABLE', + 'NIRFSG_VAL_DISABLE' + ] + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:LO Frequency Step Size (Hz)', + 'name': 'LO_FREQUENCY_STEP_SIZE', + 'type': 'ViReal64' + }, + 1150152: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to use fractional mode for the local oscillator (LO) phase-locked loop (PLL). This attribute enables or disables fractional frequency tuning in the LO. Fractional mode provides a finer frequency step resolution and allows smaller values for the NIRFSG_ATTR_LO_FREQUENCY_STEP_SIZE attribute. However, fractional mode may introduce non-harmonic spurs.\n\n This attribute applies only if you set the NIRFSG_ATTR_LO_SOURCE attribute to NIRFSG_VAL_LO_SOURCE_ONBOARD_STR.\n\n To use this attribute for the PXIe-5830/5831/5832, you must use the channelName parameter of the nirfsg_SetAttributeViInt32 function to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string).\n\n **Default Value:** NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n Refer to the local oscillators topic appropriate to your device for more information about using fractional mode.\n \n **Defined Values**:\n ', + 'note': 'For the PXIe-5841 with PXIe-5655, this attribute is ignored if the PXIe-5655 is used as the LO source.', + 'table_body': [ + [ + 'NIRFSG_VAL_ENABLE', + '0 (0x0)', + 'Disables fractional mode for the LO PLL.' + ], + [ + 'NIRFSG_VAL_DISABLE', + '1 (0x1)', + 'Enables fractional mode for the LO PLL.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'LoPlLfractionalModeEnabled', + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:LO PLL Fractional Mode Enabled', + 'name': 'LO_PLL_FRACTIONAL_MODE_ENABLED', + 'type': 'ViInt32' + }, + 1150153: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the delay, in seconds, to apply to the I/Q waveform. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Units:** Seconds\n\n **Valid Values:** Plus or minus half of one I/Q sample period\n\n **Supported Devices:** PXIe-5644/5645/5646\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:Interpolation Delay', + 'name': 'INTERPOLATION_DELAY', + 'type': 'ViReal64' + }, + 1150154: { + 'access': 'read-write', + 'attribute_class': 'AttributeViReal64TimeDeltaSeconds', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the delay, in seconds, applied to the Started Event, Done Event, and all Marker Events with respect to the analog output of the RF signal generator. To set this attribute, the NI-RFSG device must be in the Configuration or Generation state.\n\n By default, markers and events are delayed to align with the waveform data generated from the device. This attribute adds an additional delay to markers and events. Use this attribute to adjust the time delay between events and the corresponding data.\n\n **Units:** Seconds\n\n **Valid Values:**\n\n PXIe-5644/5645: -1.217 μs to 67.050 μs\n\n PXIe-5646: -0.896 μs to 64.640 μs\n\n PXIe-5820/5830/5831/5832/5840/5841/5842: 0 μs to 3.276 μs\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Events `_\n ', + 'note': 'If you decrease the event delay during generation, some markers may be dropped.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Events:Events Delay', + 'name': 'EVENTS_DELAY', + 'type': 'ViReal64', + 'type_in_documentation': 'hightime.timedelta, datetime.timedelta, or float in seconds' + }, + 1150155: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the device is the master device when synchronizing the Start Trigger. The master device distributes the synchronized Start Trigger to all devices in the system through the Start Trigger distribution line.\n\n When synchronizing the Start Trigger, one device must always be designated as the master. The master device actively drives the Start Trigger distribution line. For slave devices, set the NIRFSG_ATTR_START_TRIGGER_TYPE attribute to digital edge, and set the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute to sync_script.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5644/5645/5646\n\n **Related Topics**\n\n `Start Trigger `_\n\n Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers.\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'The device is the master device for synchronizing the Start Trigger.' + ], + [ + 'VI_FALSE', + 'The device is not the master for synchronizing the Start Trigger.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Triggers:Sync Start Trigger Master', + 'name': 'SYNC_START_TRIGGER_MASTER', + 'type': 'ViBoolean' + }, + 1150156: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies which external trigger line distributes the synchronized Start Trigger signal. When synchronizing the Start Trigger, configure all devices to use the same Start Trigger distribution line.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5644/5645/5646\n\n **Related Topics**\n\n `Start Trigger `_\n\n Refer to the Synchronization Using NI-RFSA and NI-RFSG topic appropriate to your device for more information about device synchronization for vector signal transceivers.\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Triggers:Sync Start Trigger Dist Line', + 'name': 'SYNC_START_TRIGGER_DIST_LINE', + 'type': 'ViString' + }, + 1150157: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the repetition mode of a waveform when you set the NIRFSG_ATTR_GENERATION_MODE attribute to NIRFSG_VAL_ARB_WAVEFORM. If you set this attribute to VI_TRUE, the number of repetitions is determined by the NIRFSG_ATTR_ARB_WAVEFORM_REPEAT_COUNT attribute. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Repeats the waveform a finite number of times.' + ], + [ + 'VI_FALSE', + 'Repeats the waveform continuously until you abort the generation.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Arb:Waveform Repeat Count Is Finite', + 'name': 'ARB_WAVEFORM_REPEAT_COUNT_IS_FINITE', + 'type': 'ViBoolean' + }, + 1150158: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the repeat count of a waveform when you set the NIRFSG_ATTR_ARB_WAVEFORM_REPEAT_COUNT_IS_FINITE attribute to VI_TRUE. This attribute is valid only when you set the NIRFSG_ATTR_GENERATION_MODE attribute to NIRFSG_VAL_ARB_WAVEFORM. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** 1\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Arb:Waveform Repeat Count', + 'name': 'ARB_WAVEFORM_REPEAT_COUNT', + 'type': 'ViInt32' + }, + 1150160: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' This attribute offsets the NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY from the RF frequency. Use this attribute to keep the local oscillator (LO) leakage at a determined offset from the RF signal.\n\n **Valid Values:**\n\n PXIe-5644/5645: -42MHz to +42MHz\n\n PXIe-5646: -100MHz to +100MHz\n\n PXIe-5830/5831/5832/5840/5841: -500MHz to +500MHz\n\n PXI-5842 (500 MHz bandwidth option): -250MHz to +250MHz\n\n PXI-5842 (1 GHz bandwidth option): -500MHz to +500MHz\n\n PXI-5842 (2 GHz bandwidth option): -1GHz to +1GHz\n\n PXIe-5842 (4 GHz bandwidth option) using the Standard personality: -1GHz to +1GHz\n\n PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality: -2GHz to +2GHz\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `PXIe-5830 Frequency and Bandwidth Selection `_\n\n `PXIe-5831/5832 Frequency and Bandwidth Selection `_\n\n `PXIe-5841 Frequency and Bandwidth Selection `_\n ', + 'note': '- You cannot set the NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY attribute or the NIRFSG_ATTR_ARB_CARRIER_FREQUENCY attribute at the same time as the NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET attribute.\n\n - Resetting this attribute disables the upconverter frequency offset.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Upconverter:Frequency Offset (Hz)', + 'name': 'UPCONVERTER_FREQUENCY_OFFSET', + 'type': 'ViReal64' + }, + 1150161: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the temperature, in degrees Celsius, of the I/Q Out circuitry on the device.\n\n **Units:** Degrees Celsius\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', + 'note': 'If you query this attribute during RF list mode, list steps may take longer to complete during list execution.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Temperature (Degrees C)', + 'name': 'IQ_OUT_PORT_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150162: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Marker Event at which RF blanking occurs. RF blanking quickly attenuates the RF OUT signal. Use Marker Events to toggle the state of RF blanking. The RF Output always starts in the unblanked state.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n You can specify Marker Events by using scripts to trigger blanking at a certain point in a waveform. For example, if you set this attribute to marker0 str}, and marker0 occurs on samples 1,000 and 2,000 of a script, then the RF Output will be blanked (attenuated) between samples 1,000 and 2,000.\n\n PXIe-5645: This attribute is ignored if you are using the I/Q ports.\n\n PXIe-5840/5841: RF blanking does not occur for frequencies below 120MHz.\n\n For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any nirfsg_Reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking attributes. Alternatively, you can call nirfsg_ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit**parameter.\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n \n **Valid Values**:\n ', + 'note': 'The shortest supported blanking interval is eight microseconds.', + 'table_body': [ + [ + '"" (empty string)', + 'RF blanking is disabled.' + ], + [ + 'Marker0', + 'RF blanking is tied to marker0.' + ], + [ + 'Marker1', + 'RF blanking is tied to marker1.' + ], + [ + 'Marker2', + 'RF blanking is tied to marker2.' + ], + [ + 'Marker3', + 'RF blanking is tied to marker3.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:RF Blanking Source', + 'name': 'RF_BLANKING_SOURCE', + 'type': 'ViString' + }, + 1150163: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the load impedance connected to the I/Q OUT port. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string).\n\n **Units:** Ohms\n\n **Valid Values:** Any value greater than 0. Values greater than or equal to 1 megaohms (MΩ) are interpreted as high impedance.\n\n **Default Value:** 50 Ω if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_SINGLE_ENDED, and 100 Ω if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_DIFFERENTIAL.\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', + 'note': 'For the PXIe-5645, this attribute is ignored if you are using the RF ports.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Load Impedance', + 'name': 'IQ_OUT_PORT_LOAD_IMPEDANCE', + 'type': 'ViReal64' + }, + 1150165: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the narrowband frequency modulation (FM) range to apply by sending the signal through an integrator.\n\n This attribute is valid only when you set the NIRFSG_ATTR_ANALOG_MODULATION_TYPE attribute to NIRFSG_VAL_FM and the NIRFSG_ATTR_ANALOG_MODULATION_FM_BAND attribute to NIRFSG_VAL_NARROWBAND.\n \n **Default Value:** NIRFSG_VAL_100HZ_TO_1KHZ\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Frequency Modulation `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_100HZ_TO_1KHZ', + '18000 (0x4650)', + 'Specifies a range from 100Â Hz to 1Â kHz.' + ], + [ + 'NIRFSG_VAL_10KHZ_TO_100KHZ', + '18002 (0x4652)', + 'Specifies a range from 10Â kHz to 100Â kHz.' + ], + [ + 'NIRFSG_VAL_1KHZ_TO_10KHZ', + '18001 (0x4651)', + 'Specifies a range from 1Â kHz to 10Â kHz.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AnlgModFmNarrowbandIntegrator', + 'lv_property': 'Modulation:Analog:FM Narrowband Integrator', + 'name': 'ANALOG_MODULATION_FM_NARROWBAND_INTEGRATOR', + 'type': 'ViInt32' + }, + 1150166: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator.\n\n **Default Value:** 100\n\n **Valid Values:** 0 to 100\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Frequency Modulation `_\n ' + }, + 'lv_property': 'Modulation:Analog:FM Sensitivity', + 'name': 'ANALOG_MODULATION_FM_SENSITIVITY', + 'type': 'ViReal64' + }, + 1150167: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator.\n\n When using the PXIe-5654 with PXIe-5696, NI-RFSG may coerce AM sensitivity. Coercing the AM sensitivity prevents overpower conditions at the PXIe-5696 input. Read this attribute to determine the coerced value.\n\n **Default Value:** 100\n\n **Valid Values:** 0 to 100\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Amplitude Modulation `_\n ' + }, + 'lv_property': 'Modulation:Analog:AM Sensitivity', + 'name': 'ANALOG_MODULATION_AM_SENSITIVITY', + 'type': 'ViReal64' + }, + 1150168: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies an uncalibrated digital-to-analog converter (DAC) value that scales the input signal before the signal modulates the carrier. A value of 0 completely attenuates the signal, and a value of 100 passes the full-scale signal to the modulator.\n\n **Default Value:** 100\n\n **Valid Values:** 0 to 100\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Phase Modulation `_\n ' + }, + 'lv_property': 'Modulation:Analog:PM Sensitivity', + 'name': 'ANALOG_MODULATION_PM_SENSITIVITY', + 'type': 'ViReal64' + }, + 1150173: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the level of attenuation in the attenuator path. Setting this attribute overrides the value chosen by NI-RFSG. Not all power levels are achievable if you set this attribute.\n\n **Units**: dB\n\n **Valid Values**: 0dB to 110dB in steps of 10\n\n **Supported Devices:** PXIe-5654 with PXIe-5696\n ', + 'note': 'Resetting this attribute reverts back to the default unset behavior.' + }, + 'lv_property': 'RF:Attenuator Setting (dB)', + 'name': 'ATTENUATOR_SETTING', + 'type': 'ViReal64' + }, + 1150175: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns whether the configuration list is still running or done. To read this attribute, the device must be in the Generation state.\n\n **Supported Devices:** PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'The configuration list is done.' + ], + [ + 'VI_FALSE', + 'The configuration list is still running.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Configuration List:Configuration List Is Done', + 'name': 'CONFIGURATION_LIST_IS_DONE', + 'type': 'ViBoolean' + }, + 1150180: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether the device is the master device when synchronizing the Sample Clock between multiple devices. The master device distributes the Sample Clock sync signal to all devices in the system through the Sample Clock sync distribution line.\n\n When synchronizing the Sample Clock, one device must always be designated as the master. The master device actively drives the Sample Clock sync distribution line.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5646\n\n **Related Topics**\n\n `Synchronization Using NI-RFSA and NI-RFSG `_—Refer to this topic for more information about PXIe-5646 device synchronization.\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'The device is the master device for synchronizing the Sample Clock.' + ], + [ + 'VI_FALSE', + 'The device is not the master for synchronizing the Sample Clock.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Triggers:Sync Sample Clock Master', + 'name': 'SYNC_SAMPLE_CLOCK_MASTER', + 'type': 'ViBoolean' + }, + 1150181: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies which external trigger line distributes the Sample Clock sync signal. When synchronizing the Sample Clock between multiple devices, configure all devices to use the same Sample Clock sync distribution line.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Valid Values:** PXI_Trig0, PXI_Trig1, PXI_Trig2, PXI_Trig3, PXI_Trig4, PXI_Trig5, PXI_Trig6, PXI_Trig7, PFI0\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5646\n\n **Related Topics**\n\n `Synchronization Using NI-RFSA and NI-RFSG `_—Refer to this topic for more information about PXIe-5646 device synchronization.\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Triggers:Sync Sample Clock Dist Line', + 'name': 'SYNC_SAMPLE_CLOCK_DIST_LINE', + 'type': 'ViString' + }, + 1150182: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the amplitude extender module temperature in degrees Celsius.\n\n **Units**: degrees Celsius (°C)\n\n **Supported Devices:** PXIe-5654 with PXIe-5696\n ' + }, + 'lv_property': 'Device Characteristics:AE Temperature (Degrees C)', + 'name': 'AE_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150185: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the amplification path to use. The low harmonic path provides greater second and third harmonic spurious response, and the high power path provides higher output power.\n\n NI-RFSG automatically sets the value of this attribute based on power and frequency settings. Setting this attribute overrides the value chosen by NI-RFSG.\n\n **Default Value:** NIRFSG_VAL_LOW_HARMONIC\n\n **Supported Devices:** PXIe-5654 with PXIe-5696\n\n **Related Topics**\n\n `Low Harmonic Path Versus High Power Path `_\n \n **Defined Values**:\n ', + 'note': 'Resetting this attribute reverts back to the default unset behavior.', + 'table_body': [ + [ + 'NIRFSG_VAL_HIGH_POWER', + '16000 (0x3e80)', + 'Sets the amplification path to use the high power path.' + ], + [ + 'NIRFSG_VAL_LOW_HARMONIC', + '16001 (0x3e81)', + 'Sets the amplification path to use the low harmonic path.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AmpPath', + 'lv_property': 'RF:Advanced:Amp Path', + 'name': 'AMP_PATH', + 'type': 'ViInt32' + }, + 1150186: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string containing the path to the location of the current NI-RFSG instrument driver FPGA extensions bitfile, a .lvbitx file, that is programmed on the device. You can specify the bitfile location using the Driver Setup string in the **optionString** parameter of the nirfsg_InitWithOptions function.\n\n NI-RFSG instrument driver FPGA extensions enable you to use pre-compiled FPGA bitfiles to customize the behavior of the vector signal transceiver FPGA while maintaining the functionality of the NI-RFSG instrument driver.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver FPGA Extensions `_\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Device Characteristics:FPGA Bitfile Path', + 'name': 'FPGA_BITFILE_PATH', + 'type': 'ViString' + }, + 1150188: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns whether the NI RF signal generator has the fast tuning option available.\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Frequency Tuning Times `_\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'The RF signal generator has the fast 100 µs tuning option.' + ], + [ + 'VI_FALSE', + 'The RF signal generator has the 1 ms tuning option.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Device Characteristics:Options:Fast Tuning Option', + 'name': 'FAST_TUNING_OPTION', + 'type': 'ViBoolean' + }, + 1150190: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' PXIe-5654/5654 with PXIe-5696: Specifies the pulse modulation mode to use.\n\n PXIe-5842: This property allows you to choose a tradeoff between switching speed and On/Off Ratio when using pulse modulation. Refer to the product specifications document for the switching characteristics of each mode. This property is settable while the device is generating, but some output pulses may be dropped.\n\n **Default Value:** NIRFSG_VAL_ANALOG\n\n **Supported Devices:** PXIe-5842/5654/5654 with PXIe-5696\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_OPTIMAL_MATCH', + 'Provides for a more optimal power output match for the device during the off cycle of the pulse mode operation. Not supported on PXIe-5842.' + ], + [ + 'NIRFSG_VAL_PULSE_MODULATION_ANALOG_HIGH_ISOLATION', + 'Allows for the best on/off power ratio of the pulsed signal.' + ], + [ + 'NIRFSG_VAL_PULSE_MODULATION_ANALOG', + 'Analog switch blanking. Balance between switching speed and on/off power ratio of the pulsed signal.' + ], + [ + 'NIRFSG_VAL_PULSE_MODULATION_DIGITAL', + 'Digital only modulation. Provides the best on/off switching speed of the pulsed signal at the cost of signal isolation.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'PulseModulationMode', + 'lv_property': 'RF:Advanced:Pulse Modulation Mode', + 'name': 'PULSE_MODULATION_MODE', + 'type': 'ViInt32' + }, + 1150191: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the analog modulation frequency modulation (FM) band to use. Wideband FM allows for modulating signals higher than 100kHz. Narrowband FM allows for modulating lower frequency signals.\n\n **Default Value:** NIRFSG_VAL_WIDEBAND\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Frequency Modulation `_\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_NARROWBAND', + '17000 (0x4268)', + 'Specifies narrowband frequency modulation.' + ], + [ + 'NIRFSG_VAL_WIDEBAND', + '17001 (0x4269)', + 'Specifies wideband frequency modulation.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AnlgModFmBand', + 'lv_property': 'Modulation:Analog:FM Band', + 'name': 'ANALOG_MODULATION_FM_BAND', + 'type': 'ViInt32' + }, + 1150192: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the phase modulation (PM) mode to use.\n\n **Default Value:** NIRFSG_VAL_LOW_PHASE_NOISE\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Phase Modulation `_\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_HIGH_DEVIATION', + '19000 (0x4a38)', + 'Specifies high deviation. High deviation comes at the expense of a higher phase noise.' + ], + [ + 'NIRFSG_VAL_LOW_PHASE_NOISE', + '19001 (0x4a39)', + 'Specifies low phase noise. Low phase noise comes at the expense of a lower maximum deviation.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AnlgModPmMode', + 'lv_property': 'Modulation:Analog:PM Mode', + 'name': 'ANALOG_MODULATION_PM_MODE', + 'type': 'ViInt32' + }, + 1150194: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the name of the fully qualified signal name as a string.\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Default Values**:\n\n PXIe-5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationSettledEvent, where *ModuleName* is the name of your device in MAX.\n\n PXIe-5830/5831/5832: /*BasebandModule*/ao/0/ConfigurationSettledEvent, where *BasebandModule* is the name of the baseband module of your device in MAX.\n\n PXIe-5820/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationSettledEvent, where *ModuleName* is the name of your device in MAX.\n\n **Related Topics**\n\n `Events `_\n\n `Syntax for Terminal Names `_\n ' + }, + 'lv_property': 'Events:Configuration Settled Event Terminal Name', + 'name': 'CONFIGURATION_SETTLED_EVENT_TERMINAL_NAME', + 'type': 'ViString' + }, + 1150195: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables the automatic leveling control (ALC).\n\n PXIe-5654 with PXIe-5696: If this attribute is enabled, the ALC is closed (closed-loop mode) and allows for better amplitude accuracy and wider amplitude dynamic range. If this attribute is disabled, the ALC is open (open-loop mode), which is ideal when using modulation. Disabling the NIRFSG_ATTR_ALC_CONTROL attribute also allows for NI-RFSG to perform an automatic power search.\n\n PXIe-5654: NIRFSG_VAL_DISABLE is the only supported value for this device. The PXIe-5654 does not support the ALC when used as a stand-alone device.\n\n **Default Value:**\n\n PXIe-5654: NIRFSG_VAL_DISABLE\n\n PXIe-5654 with PXIe-5696: NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Power Level Adjustment `_\n\n `ALC Closed Loop Versus Open Loop `_\n\n `Power Search `_\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DISABLE', + '0 (0x0)', + 'Disables ALC.' + ], + [ + 'NIRFSG_VAL_ENABLE', + '1 (0x1)', + 'Enables the ALC.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AutomaticLevelControl', + 'lv_property': 'RF:ALC Control', + 'name': 'ALC_CONTROL', + 'type': 'ViInt32' + }, + 1150196: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables automatic power search. When this attribute is enabled, a power search performs after the device is initiated, after output power is enabled, or when the frequency or power level changes while the device is generating. When this attribute is disabled, NI-RFSG does not perform a power search unless you call the nirfsg_PerformPowerSearch function.\n\n This attribute is ignored when the NIRFSG_ATTR_ALC_CONTROL attribute is enabled.\n\n PXIe-5654: NIRFSG_VAL_DISABLE is the only supported value for this device.\n\n **Default Value:**\n\n PXIe-5654: NIRFSG_VAL_DISABLE\n\n PXIe-5654 with PXIe-5696: NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Power Search `_\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DISABLE', + '0 (0x0)', + 'Disables automatic power search.' + ], + [ + 'NIRFSG_VAL_ENABLE', + '1 (0x1)', + 'Enables automatic power search.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'AutomaticPowerSearch', + 'lv_property': 'RF:Automatic Power Search', + 'name': 'AUTO_POWER_SEARCH', + 'type': 'ViInt32' + }, + 1150199: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the frequency of the LO source.\n\n To use this attribute for the PXIe-5830/5831/5832, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. You can configure the LO1 and LO2 channels by using lo1 or lo2 as the channel string, or set the channel string to lo1,lo2 to configure both channels. For all other devices, the the only valid value for the channel string is "" (empty string).\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `PXIe-5830 Frequency and Bandwidth Configuration `_\n\n `PXIe-5831/5832 Frequency and Bandwidth Configuration `_\n ', + 'note': 'This attribute is read/write if you are using an external LO. Otherwise, this attribute is read-only.' + }, + 'lv_property': 'RF:LO Frequency (Hz)', + 'name': 'LO_FREQUENCY', + 'type': 'ViReal64' + }, + 1150204: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the digital gain, in decibels. The digital gain is applied to the waveform data after filtering. Use this attribute to adjust the output power of the device while keeping the analog path fixed. This may cause clipping, overflows, or quantization noise if used improperly.\n\n To set this attribute, the NI-RFSG device must be in the Configuration or Generation state.\n\n **Default Value:** 0 dB\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'name': 'ARB_DIGITAL_GAIN', + 'type': 'ViReal64' + }, + 1150206: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the output behavior for the Marker Event. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_PULSE\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_PULSE', + '23000 (0x59d8)', + 'Specifies the Marker Event output behavior as pulse.' + ], + [ + 'NIRFSG_VAL_TOGGLE', + '23001 (0x59d9)', + 'Specifies the Marker Event output behavior as toggle.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'MarkerEventOutputBehavior', + 'lv_property': 'Events:Marker:Output Behavior', + 'name': 'MARKER_EVENT_OUTPUT_BEHAVIOR', + 'repeated_capability_type': 'markers', + 'supported_rep_caps': [ + 'markers' + ], + 'type': 'ViInt32' + }, + 1150207: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the pulse width value for the Marker Event. Use the NIRFSG_ATTR_MARKER_EVENT_PULSE_WIDTH_UNITS attribute to set the units for the pulse width value. This attribute is valid only when the NIRFSG_ATTR_MARKER_EVENT_OUTPUT_BEHAVIOR attribute is set to NIRFSG_VAL_PULSE.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** 200 ns\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n ' + }, + 'lv_property': 'Events:Marker:Pulse:Width Value', + 'name': 'MARKER_EVENT_PULSE_WIDTH', + 'repeated_capability_type': 'markers', + 'supported_rep_caps': [ + 'markers' + ], + 'type': 'ViReal64' + }, + 1150208: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the pulse width units for the Marker Event. This attribute is valid only when the NIRFSG_ATTR_MARKER_EVENT_OUTPUT_BEHAVIOR attribute is set to NIRFSG_VAL_PULSE.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_SECONDS\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_PULSE', + '23000 (0x59d8)', + 'Specifies the Marker Event output behavior as pulse.' + ], + [ + 'NIRFSG_VAL_TOGGLE', + '23001 (0x59d9)', + 'Specifies the Marker Event output behavior as toggle.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'MarkerEventPulseWidthUnits', + 'lv_property': 'Events:Marker:Pulse:Width Units', + 'name': 'MARKER_EVENT_PULSE_WIDTH_UNITS', + 'repeated_capability_type': 'markers', + 'supported_rep_caps': [ + 'markers' + ], + 'type': 'ViInt32' + }, + 1150209: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the initial state for the Marker Event when the NIRFSG_ATTR_MARKER_EVENT_OUTPUT_BEHAVIOR attribute is set to NIRFSG_VAL_TOGGLE.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_DIGITAL_LOW\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DIGITAL_HIGH', + '21001 (0x5209)', + 'Specifies the initial state of the Marker Event toggle behavior as digital high.' + ], + [ + 'NIRFSG_VAL_DIGITAL_LOW', + '21000 (0x5208)', + 'Specifies the initial state of the Marker Event toggle behavior as digital low.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'MarkerEventToggleInitialState', + 'lv_property': 'Events:Marker:Toggle:Initial State', + 'name': 'MARKER_EVENT_TOGGLE_INITIAL_STATE', + 'repeated_capability_type': 'markers', + 'supported_rep_caps': [ + 'markers' + ], + 'type': 'ViInt32' + }, + 1150210: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the total power consumption of the device.\n\n **Units:** watts\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'note': 'If you query this attribute during RF list mode, list steps may take longer to complete during list execution.' + }, + 'lv_property': 'Device Characteristics:Module Power Consumption (W)', + 'name': 'MODULE_POWER_CONSUMPTION', + 'type': 'ViReal64' + }, + 1150211: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the FPGA temperature in degrees Celsius.\n\n Serial signals between the sensor and the system control unit can potentially modulate the signal being generated, thus causing phase spurs. After the device thoroughly warms up, its temperature varies only slightly (less than 1 degree Celsius) and slowly, and it is not necessary to constantly poll this temperature sensor.\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'note': 'If you query this attribute during RF list mode, list steps may take longer to complete during list execution.' + }, + 'lv_property': 'Device Characteristics:FPGA Temperature (Degrees C)', + 'name': 'FPGA_TEMPERATURE', + 'type': 'ViReal64' + }, + 1150212: { + 'access': 'read-write', + 'attribute_class': 'AttributeViReal64TimeDeltaSeconds', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the minimum time between temperature sensor readings.\n\n **Units:** Seconds\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Device Characteristics:Temperature Read Interval', + 'name': 'TEMPERATURE_READ_INTERVAL', + 'type': 'ViReal64', + 'type_in_documentation': 'hightime.timedelta, datetime.timedelta, or float in seconds' + }, + 1150217: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether peer-to-peer should continuously generate data from the peer-to-peer stream or from only a finite number of samples, according to the NIRFSG_ATTR_P2P_NUMBER_OF_SAMPLES_TO_GENERATE attribute. To use this attribute, peer-to-peer must be enabled. This attribute is endpoint-based.\n\n **Default Value**: VI_FALSE\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Data is generated from only a finite number of samples.' + ], + [ + 'VI_FALSE', + 'Data is continuously generated from the peer-to-peer stream.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Peer-to-Peer:Is Finite Generation', + 'name': 'P2P_IS_FINITE_GENERATION', + 'type': 'ViBoolean' + }, + 1150218: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies how many samples are generated from the peer-to-peer subsystem when it is enabled. To use this attribute, peer-to-peer must be enabled and set to finite generation. This attribute is endpoint-based.\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Endpoint `_\n ' + }, + 'lv_property': 'Peer-to-Peer:Number Of Samples To Generate', + 'name': 'P2P_NUMBER_OF_SAMPLES_TO_GENERATE', + 'type': 'ViInt64' + }, + 1150219: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns how many samples NI-RFSG pulls from the peer-to-peer FIFO per read. You can use this attribute to determine how many samples to send across the peer-to-peer bus to ensure that no samples are ignored. If you send a number of samples that is not a multiple of this value, the remaining samples are not read from the FIFO during generation. This attribute is endpoint-based.\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + }, + 'lv_property': 'Peer-to-Peer:Generation FIFO Sample Quantum', + 'name': 'P2P_GENERATION_FIFO_SAMPLE_QUANTUM', + 'type': 'ViInt64' + }, + 1150220: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the delay, in seconds, to apply to the I/Q waveform.\n\n Relative delay allows for delaying the generated signal from one device relative to the generated signal of another device after those devices have been synchronized. You can achieve a negative relative delay by delaying both synchronized devices by the same value (1 μs) before generation begins and then changing the relative delay to a smaller amount than the initial value on only one of the devices.\n\nTo set this attribute, the NI-RFSG device must be in the Configuration or Generation state.\n\n **Units:** Seconds\n\n **Valid Values:**\n\n PXIe-PXIe-5820/5830/5831/5832/5840/5841: 0 μs to 3.2 μs\n\n PXIe-5842: 0 μs to 6.5 μs\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `NI-TClk Overview `_\n ', + 'note': '- To obtain a negative relative delay when synchronizing the PXIe-5840/5841 with a module that does not support this attribute, use the NITCLK_ATTR_SAMPLE_CLOCK_DELAY attribute.\n\n - The resolution of this attribute is a function of the I/Q sample period at 15E(-6) of the sample period but not worse than one Sample Clock period.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:Relative Delay', + 'name': 'RELATIVE_DELAY', + 'type': 'ViReal64' + }, + 1150225: { + 'access': 'read-write', + 'attribute_class': 'AttributeViReal64TimeDeltaSeconds', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the sub-Sample Clock delay, in seconds, to apply to the I/Q waveform. Use this attribute to reduce the trigger jitter when synchronizing multiple devices with NI-TClk. This attribute can also help maintain synchronization repeatability by writing the absolute delay value of a previous measurement to the current session.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Units:** Seconds\n\n **Valid Values:** Plus or minus half of one Sample Clock period\n\n **Supported Devices:** PXIe-5820/5840/5841/5842\n ', + 'note': '- The resolution of this attribute is a function of the I/Q sample period at 15E(-6) times that sample period.\n\n - If this attribute is set, NI-TClk cannot perform any sub-Sample Clock adjustment.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:Absolute Delay', + 'name': 'ABSOLUTE_DELAY', + 'type': 'ViReal64', + 'type_in_documentation': 'hightime.timedelta, datetime.timedelta, or float in seconds' + }, + 1150226: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the bandwidth of the device. The instantaneous bandwidth is the effective real-time bandwidth of the signal path for your configuration.\n\n The NIRFSG_ATTR_SIGNAL_BANDWIDTH centered at the NIRFSG_ATTR_FREQUENCY must fit within the device instantaneous bandwidth, which is centered at the NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY.\n\n **Units**: Hz\n\n **Default Value**: N/A\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `PXIe-5830 Frequency and Bandwidth Selection `_\n\n `PXIe-5831/5832 Frequency and Bandwidth Selection `_\n\n `PXIe-5841 Frequency and Bandwidth Selection `_\n ' + }, + 'lv_property': 'Arb:Device Instantaneous Bandwidth (Hz)', + 'name': 'DEVICE_INSTANTANEOUS_BANDWIDTH', + 'type': 'ViReal64' + }, + 1150228: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Configures error reporting for onboard signal processing (OSP) overflows. Overflows lead to clipping of the waveform.\n\n **Default Value:** NIRFSG_VAL_ERROR_REPORTING_WARNING\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_ERROR_REPORTING_DISABLED', + '1302 (0x516)', + 'NI-RFSG does not return an error or a warning when an OSP overflow occurs.' + ], + [ + 'NIRFSG_VAL_ERROR_REPORTING_WARNING', + '1301 (0x515)', + 'NI-RFSG returns a warning when an OSP overflow occurs.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'OverflowErrorReporting', + 'lv_property': 'Arb:Advanced:Overflow Error Reporting', + 'name': 'OVERFLOW_ERROR_REPORTING', + 'type': 'ViInt32' + }, + 1150239: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the size of the DMA buffer in computer memory, in bytes. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n A sufficiently large host DMA buffer improves performance by allowing large writes to be transferred more efficiently.\n\n **Units:** bytes\n\n **Default Value:** 8MB\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Arb:Data Transfer:Advanced:Host DMA Buffer Size', + 'name': 'HOST_DMA_BUFFER_SIZE', + 'type': 'ViInt64' + }, + 1150241: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the port to configure.\n\n **Valid Values**:\n\n PXIe-5644/5645/5646, PXIe-5820/5840/5841: "" (empty string)\n\n PXIe-5830: if0, if1\n\n PXIe-5831/5832: if0, if1, rf*0-1*/port*x*, where *0-1* indicates one (*0*) or two (*1*) mmRH-5582 connections and *x* is the port number on the mmRH-5582 front panel.\n\n **Default Value:**\n\n PXIe-5644/5645/5646, PXIe-5820/5840/5841/5842/5860: "" (empty string)\n\n PXIe-5830/5831/5832: if0\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n NIRFSG_ATTR_AVAILABLE_PORTS\n ', + 'note': 'When using RF list mode, ports cannot be shared with NI-RFSA.' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:Selected Ports', + 'name': 'SELECTED_PORTS', + 'type': 'ViString' + }, + 1150242: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to allow NI-RFSA to control the NI-RFSG LO out export.\n\n Set this attribute to NIRFSG_VAL_ENABLE to allow NI-RFSA to control the LO out export. Use the RF OUT LO EXPORT ENABLED attribute to control the LO out export from NI-RFSA.\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices**: PXIe-5840/5841/5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_ENABLE', + '0 (0x0)', + 'Do not allow NI-RFSA to control the NI-RFSG local oscillator export.' + ], + [ + 'NIRFSG_VAL_DISABLE', + '1 (0x1)', + 'Allow NI-RFSA to control the NI-RFSG local oscillator export.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'LoOutExportConfigureFromRFSaEnable', + 'lv_property': 'RF:LO Out Export Configure From RFSA', + 'name': 'LO_OUT_EXPORT_CONFIGURE_FROM_RFSA', + 'type': 'ViInt32' + }, + 1150243: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to enable the RF IN LO OUT terminal on the PXIe-5840/5841.\n\n Set this attribute to NIRFSG_VAL_ENABLE to export the LO signal from the RF IN LO OUT terminal.\n\n When this attribute is enabled, if the NIRFSG_ATTR_LO_SOURCE attribute is set to NIRFSG_VAL_LO_SOURCE_LO_IN_STR and you do not set the NIRFSG_ATTR_LO_FREQUENCY or NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY attributes, NI-RFSG rounds the LO frequency to approximately an LO step size as if the source was NIRFSG_VAL_ONBOARD_CLOCK_STR. This ensures that when you configure NI-RFSA and NI-RFSG with compatible settings that result in the same LO frequency, the rounding also is compatible.\n\n **Default Value:** NIRFSG_VAL_UNSPECIFIED\n\n **Supported Devices**: PXIe-5840/5841/5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DISABLE', + 'The RF In local oscillator signal is not present at the front panel LO OUT connector.' + ], + [ + 'NIRFSG_VAL_ENABLE', + 'The RF In local oscillator signal is present at the front panel LO OUT connector.' + ], + [ + 'NIRFSG_VAL_UNSPECIFIED', + 'The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'RFInLoExportEnabled', + 'lv_property': 'RF:RF In LO Export Enabled', + 'name': 'RF_IN_LO_EXPORT_ENABLED', + 'type': 'ViInt32' + }, + 1150244: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the temperature change, in degrees Celsius, that is required before NI-RFSG recalculates the thermal correction settings when entering the Generation state.\n\n **Units:** degrees Celsius (°C)\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Default Values:**\n\n PXIe-5830/5831/5832/5842/5860: 0.2\n\n PXIe-5840/5841: 1.0\n ' + }, + 'lv_property': 'RF:Advanced:Thermal Correction Temperature Resolution (Degrees C)', + 'name': 'THERMAL_CORRECTION_TEMPERATURE_RESOLUTION', + 'type': 'ViReal64' + }, + 1150248: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to allow NI-RFSG to select the upconverter frequency offset. You can either set an offset yourself or let NI-RFSG select one for you.\n\n Placing the upconverter center frequency outside the bandwidth of your waveform can help avoid issues such as LO leakage.\n\n To set an offset yourself, set this attribute to NIRFSG_VAL_AUTO or NIRFSG_VAL_USER_DEFINED, and set either the NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY or the NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET attribute.\n\n To allow NI-RFSG to automatically select the upconverter frequency offset, set this attribute to NIRFSG_VAL_AUTO or NIRFSG_VAL_ENABLE and set the NIRFSG_ATTR_SIGNAL_BANDWIDTH to describe the bandwidth of your waveform. The signal bandwidth must be no greater than half the value of the NIRFSG_ATTR_DEVICE_INSTANTANEOUS_BANDWIDTH attribute, minus a device-specific guard band. Do not set the NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY or NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET attributes. If all conditions are met, NI-RFSG places the upconverter center frequency outside the signal bandwidth. Set this attribute to NIRFSG_VAL_ENABLE if you want to receive an error any time NI-RFSG is unable to apply automatic offset.\n\n When you set an offset yourself or do not use an offset, the reference frequency for gain is near the upconverter center frequency, and NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET_MODE returns NIRFSG_VAL_USER_DEFINED. When NI-RFSG automatically sets an offset, the reference frequency for gain is near the NIRFSG_ATTR_FREQUENCY and NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET_MODE returns NIRFSG_VAL_ENABLE.\n\n **Default Value:** NIRFSG_VAL_AUTO\n\n **Supported Devices**: PXIe-5830/5831/5832/5841/5842\n\n **Related Topics**\n\n `PXIe-5830 Automatic Frequency Offset `_\n\n `PXIe-5831/5832 Automatic Frequency Offset `_\n\n `PXIe-5841 Automatic Frequency Offset `_\n \n **Defined Values**:\n ', + 'note': 'Below 120 MHz, the PXIe-5841 does not use an LO and NIRFSG_VAL_ENABLE is unavailable. Refer to the *PXIe-5841 Automatic Frequency Offset* topic for more information about using an automatic offset with an external LO.', + 'table_body': [ + [ + 'NIRFSG_VAL_ENABLE', + 'NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the NIRFSG_ATTR_SIGNAL_BANDWIDTH attribute has been set and can be avoided. NI-RFSG returns an error if the NIRFSG_ATTR_SIGNAL_BANDWIDTH attribute has not been set, or if the signal bandwidth is too large.' + ], + [ + 'NIRFSG_VAL_AUTO', + 'NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the NIRFSG_ATTR_SIGNAL_BANDWIDTH attribute has been set and can be avoided.' + ], + [ + 'NIRFSG_VAL_USER_DEFINED', + 'NI-RFSG uses the offset that you specified with the NIRFSG_ATTR_UPCONVERTER_FREQUENCY_OFFSET or NIRFSG_ATTR_UPCONVERTER_CENTER_FREQUENCY attributes.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'UpconverterFrequencyOffsetMode', + 'lv_property': 'RF:Upconverter:Frequency Offset Mode', + 'name': 'UPCONVERTER_FREQUENCY_OFFSET_MODE', + 'type': 'ViInt32' + }, + 1150249: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a comma-separated list of the ports available for use based on your instrument configuration.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:Available Ports', + 'name': 'AVAILABLE_PORTS', + 'type': 'ViString' + }, + 1150251: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a string that contains the name of the FPGA target being used. This name can be used with the RIO open session to open a reference to the FPGA.\n\n This attribute is channel dependent if multiple FPGA targets are supported.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Device Characteristics:FPGA Target Name', + 'name': 'FPGA_TARGET_NAME', + 'type': 'ViString' + }, + 1150252: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the type of de-embedding to apply to measurements on the specified port.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViInt32 function to specify the name of the port to configure for de-embedding.\n\n If you set this attribute to NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR or NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR, NI-RFSG adjusts the instrument settings and the returned data to remove the effects of the external network between the instrument and the DUT.\n\n **Default Value**: NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR\n\n **Valid Values for PXIe-5830/5832/5840/5841/5842/5860** : NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR or NIRFSG_VAL_DEEMBEDDING_TYPE_NONE\n\n **Valid Values for PXIe-5831** NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR, NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR, or NIRFSG_VAL_DEEMBEDDING_TYPE_NONE. NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR is only supported for TRX Ports in a Semiconductor Test System (STS).\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DEEMBEDDING_TYPE_NONE', + '25000 (0x61a8)', + 'De-embedding is not applied to the measurement.' + ], + [ + 'NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR', + '25001 (0x61a9)', + 'De-embeds the measurement using only the gain term.' + ], + [ + 'NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR', + '25002 (0x61aa)', + 'De-embeds the measurement using the gain term and the reflection term.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'DeembeddingTypeAttrVals', + 'lv_property': 'De-embedding:Type', + 'name': 'DEEMBEDDING_TYPE', + 'supported_rep_caps': [ + 'deembedding_port' + ], + 'type': 'ViInt32' + }, + 1150253: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Selects the de-embedding table to apply to the measurements on the specified port.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViString function to specify the name of the port to configure for de-embedding.\n\n If de-embedding is enabled, NI-RFSG uses the specified table to remove the effects of the external network between the instrument and the DUT.\n\n Use the create deembedding sparameter table array function to create tables.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'De-embedding:Selected Table', + 'name': 'DEEMBEDDING_SELECTED_TABLE', + 'supported_rep_caps': [ + 'deembedding_port' + ], + 'type': 'ViString' + }, + 1150257: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the step size for tuning the internal voltage-controlled oscillator (VCO) used to generate the LO signal.\n\n **Valid Values**:\n\n LO1: 1 Hz to 50 MHz\n\n LO2: 1 Hz to 100 MHz\n\n **Default Value**: 1 MHz\n\n **Supported Devices**: PXIe-5830/5831/5832\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:LO VCO Frequency Step Size (Hz)', + 'name': 'LO_VCO_FREQUENCY_STEP_SIZE', + 'type': 'ViReal64' + }, + 1150258: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the expected thermal operating range of the instrument from the self-calibration temperature, in degrees Celsius, returned from the NIRFSG_ATTR_DEVICE_TEMPERATURE attribute.\n\n For example, if this property is set to 5.0, and the device is self-calibrated at 35°C, then you can expect to run the device from 30°C to 40°C with corrected accuracy and no overflows. Setting this property with a smaller value can result in improved dynamic range, but you must ensure thermal stability while the instrument is running. Operating the instrument outside of the specified range may cause degraded performance or DSP overflows.\n\n **Units:** degrees Celsius (°C)\n\n **Default Value**:\n\n **PXIe-5830/5831/5832/5842/5860**: 5\n\n **PXIe-5840/5841**: 10\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'RF:Advanced:Thermal Correction Headroom Range (Degrees C)', + 'name': 'THERMAL_CORRECTION_HEADROOM_RANGE', + 'type': 'ViReal64' + }, + 1150263: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the I/Q rate of the waveform. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n\n `Assigning Properties or Attributes to a Waveform `_—Refer to this topic for more information about using this attribute to associate an I/Q rate with a waveform.\n\n `Digital Upconverter `_\n ' + }, + 'lv_property': 'Arb:Waveform Attributes:Waveform IQ Rate (S/s)', + 'name': 'WAVEFORM_IQ_RATE', + 'supported_rep_caps': [ + 'waveform' + ], + 'type': 'ViReal64' + }, + 1150264: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× NIRFSG_ATTR_IQ_RATE).\n\n **Units**: hertz (Hz)\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Arb:Waveform Attributes:Waveform Signal Bandwidth (Hz)', + 'name': 'WAVEFORM_SIGNAL_BANDWIDTH', + 'supported_rep_caps': [ + 'waveform' + ], + 'type': 'ViReal64' + }, + 1150265: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the waveform runtime scaling. The waveform runtime scaling is applied to the waveform data before any other signal processing.\n\n **Units**: dB\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860, PXIe-5841 with PXIe-5655\n ' + }, + 'lv_property': 'Arb:Waveform Attributes:Waveform Runtime Scaling', + 'name': 'WAVEFORM_RUNTIME_SCALING', + 'supported_rep_caps': [ + 'waveform' + ], + 'type': 'ViReal64' + }, + 1150266: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the peak-to-average power ratio (PAPR).\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Arb:Waveform Attributes:Waveform PAPR (dB)', + 'name': 'WAVEFORM_PAPR', + 'supported_rep_caps': [ + 'waveform' + ], + 'type': 'ViReal64' + }, + 1150271: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies a comma-separated list of ports for which to fix the group delay.\n \n\n **Supported Devices:** PXIe-5831/5832\n ' + }, + 'lv_property': 'Device Specific:Vector Signal Transceiver:Signal Path:Fixed Group Delay Across Ports', + 'name': 'FIXED_GROUP_DELAY_ACROSS_PORTS', + 'type': 'ViString' + }, + 1150273: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables the detection of burst start and burst stop locations in the waveform. You can read the detected burst start and burst stop locations using nirfsg_GetWaveformBurstStartLocations and nirfsg_GetWaveformBurstStopLocations functions respectively.\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices:**PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'note': '- When you download a waveform using nirfsg_ReadAndDownloadWaveformFromFileTdms function and if NIRFSG_ATTR_WAVEFORM_RF_BLANKING attribute is enabled, you must set the NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION attribute to NIRFSG_VAL_DISABLE.\n\n - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any nirfsg_Reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking attributes. Alternatively, you can call nirfsg_ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter.', + 'table_body': [ + [ + 'NIRFSG_VAL_ENABLE', + 'Burst detection is enabled.' + ], + [ + 'NIRFSG_VAL_DISABLE', + 'Burst detection is disabled.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'WriteWaveformBurstDetection', + 'lv_property': 'Arb:Write Waveform Burst Detection:Enabled', + 'name': 'WRITE_WAVEFORM_BURST_DETECTION', + 'type': 'ViInt32' + }, + 1150274: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the algorithm that NI-RFSG uses to detect the burst start and burst stop locations in the waveform when burst detection is enabled using the NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION attribute. When you set NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION_MODE to NIRFSG_VAL_AUTO, NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform. To fine-tune the burst detection process parameters yourself, you can set this attribute to NIRFSG_VAL_MANUAL and specify the burst detection parameters using the write waveform burst detection minimum quiet time, NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION_POWER_THRESHOLD, write waveform burst detection minimum burst time attributes.\n\n **Default Value:** NIRFSG_VAL_AUTO\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_AUTO', + 'NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform.' + ], + [ + 'NIRFSG_VAL_MANUAL', + 'User sets the burst detection parameters.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'WriteWaveformBurstDetectionMode', + 'lv_property': 'Arb:Write Waveform Burst Detection:Mode', + 'name': 'WRITE_WAVEFORM_BURST_DETECTION_MODE', + 'type': 'ViInt32' + }, + 1150276: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the relative power level at which burst start or stop locations are detected. The threshold is relative to the peak power in the waveform. NI-RFSG detects burst start (or burst stop) locations when the signal exceeds (or falls below) the level specified by this attribute. This attribute is ignored when you disable the NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION attribute or when you set the NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION_MODE attribute to NIRFSG_VAL_AUTO.\n\n **Units:** dB\n\n **Default Value:** 0\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'Arb:Write Waveform Burst Detection:Power Threshold', + 'name': 'WRITE_WAVEFORM_BURST_DETECTION_POWER_THRESHOLD', + 'type': 'ViReal64' + }, + 1150278: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': '\n **Defined Values**:\n\nName (Value): Description\n\nNIRFSG_VAL_DISABLE (0):\tRF blanking is disabled.\n\nNIRFSG_VAL_ENABLE (1):\tRF blanking is enabled.\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n \n Enables or disables RF blanking.\n ', + 'note': 'For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any nirfsg_Reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking attributes. Alternatively, you can call nirfsg_ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter.', + 'table_body': [ + [ + '"" (empty string)', + 'NIRFSG_VAL_DISABLE', + 'No blanking performed.' + ], + [ + '"" (empty string)', + 'NIRFSG_VAL_ENABLE', + 'Blanking performed based on burst start and stop values and blanking source set to private marker.' + ], + [ + 'NIRFSG_VAL_MARKER0, NIRFSG_VAL_MARKER1, NIRFSG_VAL_MARKER2, or NIRFSG_VAL_MARKER3', + 'NIRFSG_VAL_DISABLE', + 'Blanking performed based on the marker locations for the marker that the user set in the blanking source.' + ], + [ + 'NIRFSG_VAL_MARKER0, NIRFSG_VAL_MARKER1, NIRFSG_VAL_MARKER2, or NIRFSG_VAL_MARKER3', + 'NIRFSG_VAL_ENABLE', + 'Error is shown.' + ] + ], + 'table_header': [ + 'NIRFSG_ATTR_RF_BLANKING_SOURCE', + 'NIRFSG_ATTR_WAVEFORM_RF_BLANKING', + 'Behaviour' + ] + }, + 'enum': 'RFBlanking', + 'lv_property': 'Arb:Waveform Attributes:Waveform RF Blanking', + 'name': 'WAVEFORM_RF_BLANKING', + 'supported_rep_caps': [ + 'waveform' + ], + 'type': 'ViInt32' + }, + 1150289: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the de-embedding gain applied to compensate for the mismatch on the specified port. If de-embedding is enabled, NI-RFSG uses the returned compensation gain to remove the effects of the external network between the instrument and the DUT.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + }, + 'lv_property': 'De-embedding:Compensation Gain', + 'name': 'DEEMBEDDING_COMPENSATION_GAIN', + 'supported_rep_caps': [ + 'deembedding_port' + ], + 'type': 'ViReal64' + }, + 1150290: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the configurations to skip while loading from a file.\n\n **Default Value:** NIRFSG_VAL_SKIP_NONE\n \n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_SKIP_NONE', + 'NI-RFSG loads all the configurations to the session.' + ], + [ + 'NIRFSG_VAL_SKIP_WAVEFORM', + 'NI-RFSG skips loading the waveform configurations to the session.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'LoadOptions', + 'lv_property': 'Load Configurations:Load Options', + 'name': 'LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS', + 'type': 'ViInt32' + }, + 1150291: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the configurations to skip to reset while loading configurations from a file.\n\n **Default Value:** NIRFSG_VAL_SKIP_NONE\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_SKIP_NONE', + 'NI-RFSG resets all configurations.' + ], + [ + 'NIRFSG_VAL_SKIP_WAVEFORMS', + 'NI-RFSG skips resetting the waveform configurations.' + ], + [ + 'NIRFSG_VAL_SKIP_SCRIPTS', + 'NI-RFSG skips resetting the scripts.' + ], + [ + 'NIRFSG_VAL_SKIP_DEEMBEDDING_TABLES', + 'NI-RFSG skips resetting the de-embedding tables.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'ResetOptions', + 'lv_property': 'Load Configurations:Reset Options', + 'name': 'LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS', + 'type': 'ViInt32' + }, + 1150292: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Reference Clock Rate, in Hz, of the signal sent to the Reference Clock Export Output Terminal. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_10MHZ\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_10MHZ', + '10000000 (0x989680)', + 'Uses a 10MHz Reference Clock rate.' + ], + [ + 'NIRFSG_VAL_100MHZ', + '', + 'Uses a 100MHz Reference Clock rate.' + ], + [ + 'NIRFSG_VAL_1GHZ', + '', + 'Uses a 1GHz Reference Clock rate.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ReferenceClockExportedRate', + 'lv_property': 'Clock:Reference Clock Exported Rate (Hz)', + 'name': 'EXPORTED_REF_CLOCK_RATE', + 'type': 'ViReal64' + }, + 1150293: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether to perform the normalization on a waveform.\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'note': 'You can not set NIRFSG_ATTR_WRITE_WAVEFORM_NORMALIZATION and NIRFSG_ATTR_POWER_LEVEL_TYPE attributes at the same time.', + 'table_body': [ + [ + 'NIRFSG_VAL_ENABLE', + 'Enables normalization on a waveform to transform the waveform data so that its maximum is 1.00 and its minimum is -1.00' + ], + [ + 'NIRFSG_VAL_DISABLE', + 'Disables normalization on the waveform.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'WriteWaveformNormalization', + 'lv_property': 'Arb:Write Waveform Normalization', + 'name': 'WRITE_WAVEFORM_NORMALIZATION', + 'type': 'ViInt32' + }, + 1150297: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the size of the waveform specified by an active channel.\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5841 with PXIe-5655/5842/5860\n ' + }, + 'lv_property': 'Arb:Waveform Attributes:Waveform Size', + 'name': 'WAVEFORM_WAVEFORM_SIZE', + 'supported_rep_caps': [ + 'waveform' + ], + 'type': 'ViInt32' + }, + 1150307: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the active level of the pulse modulation signal when pulse modulation is enabled. To set this property, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_ACTIVE_HIGH\n\n **Supported Devices:** PXIe-5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_ACTIVE_HIGH', + '9000 (0x2328)', + 'Trigger when the digital trigger signal is high.' + ], + [ + 'NIRFSG_VAL_ACTIVE_LOW', + '9001 (0x2329)', + 'Trigger when the digital trigger signal is low.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigDigLevelActiveLevel', + 'lv_property': 'RF:Advanced:Pulse Modulation Active Level', + 'name': 'PULSE_MODULATION_ACTIVE_LEVEL', + 'type': 'ViInt32' + }, + 1150308: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the source of the pulse modulation signal. When Pulse In in used, the pulse modulation is applied with the lowest latency and jitter, but is not aligned to any particular waveform sample. When a marker is used, the RF pulse is aligned to a specific sample in the arbitrary waveform. To set this property, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_PULSE_IN_STR\n\n **Supported Devices:** PXIe-5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_PULSE_IN_STR', + 'PulseIn', + 'The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842.' + ], + [ + 'NIRFSG_VAL_MARKER0_STR', + '', + 'The trigger is received from the Marker 0.' + ], + [ + 'NIRFSG_VAL_MARKER1_STR', + '', + 'The trigger is received from the Marker 1.' + ], + [ + 'NIRFSG_VAL_MARKER2_STR', + '', + 'The trigger is received from the Marker 2.' + ], + [ + 'NIRFSG_VAL_MARKER3_STR', + '', + 'The trigger is received from the Marker 3.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'PulseModulationSource', + 'lv_property': 'Modulation:Pulse:Pulse Modulation Source', + 'name': 'PULSE_MODULATION_SOURCE', + 'type': 'ViString' + }, + 1150309: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the destination terminal for exporting the Pulse Modulation Event. The Pulse Modulation Event tracks the RF Envelope when Pulse Modulation is Enabled. If this property is set to a value other than `do not export str`, calling NI-RFSG Commit will cause the output terminal to be pulled to the logic level that is the inverse of `exported pulse modulation event active level`. You can tri-state this terminal by setting this property to `do not export str` or by calling `niRFSG Reset`. To set this property, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_PULSE_OUT_STR\n\n **Supported Devices:** PXIe-5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'yet to be defined' + ], + [ + 'NIRFSG_VAL_PULSE_OUT_STR', + 'PulseOut', + 'yet to be defined' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'PulseModulationOutputTerm', + 'lv_property': 'Events:Pulse Modulation:Exported Pulse Modulation Event Output Terminal', + 'name': 'EXPORTED_PULSE_MODULATION_EVENT_OUTPUT_TERMINAL', + 'type': 'ViString' + }, + 1150310: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the active level of the exported Pulse Modulation Event. When `attribute pulse modulation enabled` is Enabled, `pulse modulation active level` is `active high`, `exported pulse modulation event output terminal` is `PulseOut`, and this property is `active high`, then the Pulse Modulation Event will transition from Low to High after the the Pulse In signal is set to logic high, and the RF Output has settled. To set this property, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_ACTIVE_HIGH\n\n **Supported Devices:** PXIe-5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_ACTIVE_HIGH', + '9000 (0x2328)', + 'Trigger when the digital trigger signal is high.' + ], + [ + 'NIRFSG_VAL_ACTIVE_LOW', + '9001 (0x2329)', + 'Trigger when the digital trigger signal is low.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ScriptTrigDigLevelActiveLevel', + 'lv_property': 'Events:Pulse Modulation:Exported Pulse Modulation Event Active Level', + 'name': 'EXPORTED_PULSE_MODULATION_EVENT_ACTIVE_LEVEL', + 'type': 'ViInt32' + }, + 1150311: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies which path to configure to generate a signal.\n \n ' + }, + 'lv_property': 'Signal Path:Advanced:Selected Path', + 'name': 'SELECTED_PATH', + 'type': 'ViString' + }, + 1150312: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns a comma separated list of the configurable paths available for use based on your instrument configuration.\n \n ' + }, + 'lv_property': 'Signal Path:Advanced:Available Paths', + 'name': 'AVAILABLE_PATHS', + 'type': 'ViString' + }, + 1152832: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables compensation for filter group delay on the AWG module. This attribute also accounts for the upconverter group delay and aligns the RF output with the Started Event, Done Event, and Marker Events.\n\n At a low I/Q rate, the group delay can become so large that some devices may not be able to align the events with the RF output, in which case you must increase the I/Q rate or disable this attribute.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5672\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Enables compensation for filter group delay.' + ], + [ + 'VI_FALSE', + 'Disables compensation for filter group delay.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Arb:Advanced:Compensate for Filter Group Delay', + 'name': 'COMPENSATE_FOR_FILTER_GROUP_DELAY', + 'type': 'ViBoolean' + }, + 1154097: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the gain the upconverter applies to the signal.\n\n **Units**: dB\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'note': 'This attribute is read/write on the PXI-5610 and PXIe-5611 and is read-only on the PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + }, + 'lv_property': 'RF:Upconverter:Gain (dB)', + 'name': 'UPCONVERTER_GAIN', + 'type': 'ViReal64' + }, + 1154098: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Indicates the center frequency of the passband containing the upconverted RF signal. Writing a value to this attribute while using the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, or PXIe-5820/5840/5841 device enables in-band retuning. In-band retuning increases the speed of frequency sweeps by reducing the amount of upconverter retunes.\n\n **Units**: hertz (Hz)\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n ', + 'note': '- This attribute is read/write on the PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842, and is read-only on the PXI-5670/5671.\n\n - Resetting this attribute disables in-band retuning, however, for the PXIe-5820, in-band retuning is always enabled.\n\n - For the PXIe-5820, the only valid value for this attribute is 0.\n\n - Setting this attribute while the PXIe-5644/5645/5646, PXIe-5673/5673E, or PXIe-5820/5830/5831/5832/5840/5841/5842 device is generating has no effect until a dynamic attribute is set.' + }, + 'lv_property': 'RF:Upconverter:Center Frequency (Hz)', + 'name': 'UPCONVERTER_CENTER_FREQUENCY', + 'type': 'ViReal64' + }, + 1250001: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the frequency of the generated RF signal. For arbitrary waveform generation, this attribute specifies the center frequency of the signal.\n\n The PXI-5670/5671, PXIe-5672, PXIe-5820, and PXIe-5860 must be in the Configuration state to use this attribute. However, the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 can be in the Configuration or the Generation state to use this attribute.\n\n **Units**: hertz (Hz)\n\n **Defined Values**:\n Refer to the specifications document for your device allowable frequency settings.\n\n **Default Value:**\n\n PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E: 100MHz\n\n PXIe-5653: 4GHz\n\n PXIe-5820: 0Hz\n\n PXIe-5830/5831/5832: 6.5 GHz\n\n PXIe-5840/5841/5860, PXI-5842 (500 MHz, 1 GHz, and 2 GHz bandwidth options): 1GHz\n\n PXIe-5842 (4 GHz bandwidth option) using the Standard personality: 1GHz\n\n PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality: 6.5GHz\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureRf\n ', + 'note': 'For the PXIe-5645, this attribute is ignored if you are using the I/Q ports.' + }, + 'lv_property': 'RF:Frequency (Hz)', + 'name': 'FREQUENCY', + 'type': 'ViReal64' + }, + 1250002: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies either the average power level or peak power level of the generated RF signal, depending on the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute setting.\n\n The PXI-5670/5671, PXIe-5672, and PXIe-5860 must be in the Configuration state to use this attribute. However, the PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E and PXIe-5830/5831/5832/5840/5841/5842 can be in the Configuration or the Generation state to use this attribute.\n\n Refer to the specifications document for your device for allowable power level settings.\n\n **Units**: dBm\n\n **Default Values:**\n\n PXIe-5644/5645/5646, PXIe-5673/5673E: -100\n\n PXI/PXIe-5650/5651/5652: -90\n\n PXIe-5654: -7\n\n PXIe-5654 with PXIe-5696: -110\n\n PXI-5670/5671, PXIe-5672: -145\n\n PXIe-5830/5831/5832/5840/5841/5842/5860: -174\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n **High-Level Functions**:\n\n - nirfsg_ConfigureRf\n ', + 'note': '- For the PXIe-5653, this attribute is read-only.\n\n - For the PXIe-5645, this attribute is ignored if you are using the I/Q ports.' + }, + 'lv_property': 'RF:Power Level (dBm)', + 'name': 'POWER_LEVEL', + 'type': 'ViReal64' + }, + 1250004: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies whether signal output is enabled. Setting the NIRFSG_ATTR_OUTPUT_ENABLED attribute to VI_FALSE while in the Generation state stops signal output, although generation continues internally. For the PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653, PXI-5670/5671, and PXIe-5672/5673/5673E, setting the NIRFSG_ATTR_OUTPUT_ENABLED attribute while in the Committed state does not transition the device to the Configuration state, but output changes immediately.\n\n **Default Value:** VI_TRUE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Output Enabled `_\n\n `NI-RFSG Instrument Driver Programming Flow `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureOutputEnabled\n \n **Defined Values**:\n ', + 'note': '- For the PXIe-5653, this attribute controls only the LO1 terminal.\n\n - For the PXIe-5645, this attribute is ignored if you are using the I/Q ports.\n\n - When the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute is set to a valid list name, setting the NIRFSG_ATTR_OUTPUT_ENABLED attribute transitions the device to the Configuration state.', + 'table_body': [ + [ + 'VI_TRUE', + 'Enables signal output.' + ], + [ + 'VI_FALSE', + 'Disables signal output.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'RF:Output Enabled', + 'name': 'OUTPUT_ENABLED', + 'type': 'ViBoolean' + }, + 1250051: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables pulse modulation.\n\n PXIe-5654/5654 with PXIe-5696: If this attribute is enabled and the signal at the PULSEIN front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled.\n\n PXIe-5673/5673E: If this attribute is enabled and the signal at the PLSMOD front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled.\n\n PXIe-5842: If this attribute is enabled and the signal at the PULSE IN front panel connector is high, the device generates a signal. If the signal is low, output generation is disabled. This behavior can be modified by setting pulse modulation active level.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E\n\n **Related Topics**\n\n `Pulse Modulation `_\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Enables pulse modulation.' + ], + [ + 'VI_FALSE', + 'Disables pulse modulation.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'lv_property': 'Modulation:Pulse:Pulse Modulation Enabled', + 'name': 'PULSE_MODULATION_ENABLED', + 'type': 'ViBoolean' + }, + 1250322: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Reference Clock rate, in Hz, of the signal present at the REF IN or CLK IN connector. This property is only valid when the NIRFSG_ATTR_REF_CLOCK_SOURCE attribute is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR, or NIRFSG_VAL_REF_IN_2_STR\n\n To set this attribute, the NI-RFSG device must be in the Configuration state. If you are using the PXIe-5654/5654 with PXIe-5696, the NI-RFSG device must be in the Committed state to read this attribute. When you read this attribute, it returns the frequency the device is locked to during the Committed state.\n\n If you set this attribute to NIRFSG_VAL_AUTO, NI-RFSG uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if automatic detection is supported by the device.\n\n **Valid Values:**\n\n PXIe-5654/5654 with PXIe-5696: Values between 1MHz to 20MHz in 1MHz steps are supported in addition to the NIRFSG_VAL_AUTO and NIRFSG_VAL_10MHZ values.\n\n PXIe-5841 with PXIe-5655, PXIe-5842: 10 MHz, 100 MHz, 270 MHz, and 3.84 MHz \n\n y, where\n\n y is 4, 8, 16, 24, 25, or 32.\n\n PXIe-5860: 10 MHz, 100 MHz\n\n **Units**: hertz (Hz)\n\n **Default Value:** NIRFSG_VAL_AUTO\n\n **Supported Devices:** PXI-5610, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Timing Configurations `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureRefClock\n \n **Defined Values**:\n ', + 'note': 'Automatic detection of the Reference Clock rate is supported on only the PXIe-5654/5654 with PXIe-5696. For all other supported devices, NI-RFSG uses the default Reference Clock rate of 10MHz.', + 'table_body': [ + [ + 'NIRFSG_VAL_AUTO', + 'Uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if the device supports it.' + ], + [ + 'NIRFSG_VAL_10MHZ', + 'Uses a 10 MHz Reference Clock rate.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'ReferenceClockRate', + 'lv_property': 'Clock:Reference Clock Rate (Hz)', + 'name': 'REF_CLOCK_RATE', + 'type': 'ViReal64' + }, + 1250404: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables the inverse phase rotation of the I/Q signal by swapping the I and Q inputs.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'NI-RFSG device applies noninverse phase rotation of the I/Q signal.' + ], + [ + 'VI_FALSE', + 'NI-RFSG device applies inverse phase rotation of the I/Q signal.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'name': 'IQ_SWAP_ENABLED', + 'type': 'ViBoolean' + }, + 1250451: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the waveform in onboard memory to generate upon calling the nirfsg_Init function when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM. The NIRFSG_ATTR_ARB_SELECTED_WAVEFORM attribute is ignored when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_SCRIPT or NIRFSG_VAL_CW. To set the NIRFSG_ATTR_ARB_SELECTED_WAVEFORM attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n \n **High-Level Functions**:\n\n - nirfsg_SelectArbWaveform' + }, + 'lv_property': 'Arb:Waveform Capabilities:Selected Waveform', + 'name': 'ARB_SELECTED_WAVEFORM', + 'type': 'ViString' + }, + 1250452: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' This attribute specifies the I/Q rate of the arbitrary waveform. The I/Q rate is coerced to a value the hardware can achieve. Read this value back after setting it to see the actual I/Q rate. NI-RFSG internally uses an FIR filter with flat response up to (0.4 × IQ rate). Given a desired signal with the maximum frequency content *f*, sample the signal at an I/Q rate greater than or equal to ( *f*/0.4).\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n \n Setting this attribute to 50 MS/s on the PXI-5670/5671 and PXIe-5672 has the following implications:\n - NI-RFSG is forced to place the carrier frequency at 18 MHz ± 1 MHz to avoid aliasing. This means that NI-RFSG cannot select a carrier frequency that could optimize waveform size if phase continuity is enabled. \n - Output signal bandwidth must be <5 MHz to avoid aliasing. \n - Close-in phase noise is higher.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n\n `Assigning Properties or Attributes to a Waveform `_—Refer to this topic for more information about using this attribute to associate an I/Q rate with a waveform.\n\n `Digital Upconverter `_\n **Valid Values**:\n ', + 'note': 'Use this attribute to associate an I/Q rate with a waveform.', + 'table_body': [ + [ + 'PXIe-5644/5645', + 'Up to 120 MS/s.' + ], + [ + 'PXIe-5646', + 'Up to 250 MS/s.' + ], + [ + 'PXI-5670', + '50 MS/s*' + ], + [ + '', + '100 MS/s*' + ], + [ + 'PXI-5671', + '50 MS/s*' + ], + [ + '', + '100 MS/s' + ], + [ + '', + '*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.' + ], + [ + 'PXIe-5672 ', + 'Up to 100 MS/s.' + ], + [ + 'PXIe-5673/5673E', + 'Up to 200 MS/s. Note that - If an PXIe-5450 with module revisions A or B is used as part of your PXIe-5673/5673E, the NI-FGEN NIFGEN_ATTR_COMPENSATE_FOR_FILTER_GROUP_DELAY attribute is disabled if the requested I/Q rate is less than 1.5 MS/s.' + ], + [ + 'PXIe-5820/5830/5831/5832/5840/5841/5860', + 'Up to 1.25 GS/s.' + ], + [ + 'PXI-5842 (500 MHz, 1 GHz, and 2 GHz bandwidth options)', + 'Up to 2.5 GS/s' + ], + [ + ' PXIe-5842 (4 GHz bandwidth option) using the Standard personality', + 'Up to 2.5 GS/s' + ], + [ + 'PXIe-5842 (4 GHz bandwidth option) using the 4 GHz Bandwidth personality', + '5 GS/s only.' + ] + ], + 'table_header': [ + 'Device', + 'I/Q Rates' + ] + }, + 'lv_property': 'Acquisition:IQ', + 'name': 'IQ_RATE', + 'type': 'ViReal64' + }, + 1250454: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the maximum number of waveforms the device can hold in memory.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **High-Level Functions**:\n\n - nirfsg_QueryArbWaveformCapabilities' + }, + 'lv_property': 'Arb:Waveform Capabilities:Max Number Waveforms', + 'name': 'ARB_MAX_NUMBER_WAVEFORMS', + 'type': 'ViInt32' + }, + 1250455: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the waveform quantum for the device. The number of samples in a waveform must be an integer multiple of the waveform quantum. The other restrictions on the length of the waveform are the NIRFSG_ATTR_ARB_WAVEFORM_SIZE_MIN and NIRFSG_ATTR_ARB_WAVEFORM_SIZE_MAX arbitrary waveform sizes.\n\n PXI-5671, PXIe-5672: The value of this attribute depends on the I/Q rate. Set the NIRFSG_ATTR_IQ_RATE attribute before reading this attribute.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **High-Level Functions**:\n\n - nirfsg_QueryArbWaveformCapabilities' + }, + 'lv_property': 'Arb:Waveform Capabilities:Waveform Quantum', + 'name': 'ARB_WAVEFORM_QUANTUM', + 'type': 'ViInt32' + }, + 1250456: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the smallest allowable waveform size. For the PXI-5671 and PXIe-5672, the value of this attribute depends on the I/Q rate. Set the NIRFSG_ATTR_IQ_RATE attribute before reading this attribute.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **High-Level Functions**:\n\n - nirfsg_QueryArbWaveformCapabilities' + }, + 'lv_property': 'Arb:Waveform Capabilities:Min Waveform Size', + 'name': 'ARB_WAVEFORM_SIZE_MIN', + 'type': 'ViInt32' + }, + 1250457: { + 'access': 'read only', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Returns the size of the largest waveform that is allowed.\n\n To read this attribute, the NI-RFSG device must be in the Configuration state.\n\n For the PXI-5671 and PXIe-5672, the value of this attribute depends on the I/Q rate. Set the NIRFSG_ATTR_IQ_RATE before reading this attribute. For the PXIe-5673/5673E, the maximum waveform size is reduced to account for the amount of device memory currently used.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **High-Level Functions**:\n\n - nirfsg_QueryArbWaveformCapabilities\n ', + 'note': 'Not all onboard memory is available for waveform storage. A portion of onboard memory stores scripts that specify how the waveforms are generated. These scripts typically require less than 1KB of onboard memory.' + }, + 'lv_property': 'Arb:Waveform Capabilities:Max Waveform Size', + 'name': 'ARB_WAVEFORM_SIZE_MAX', + 'type': 'ViInt32' + }, + 1250458: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the Start Trigger type. Depending upon the value of this attribute, more attributes may be needed to fully configure the trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Trigger Types `_\n\n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeStartTrigger\n - nirfsg_ConfigureSoftwareStartTrigger\n - nirfsg_DisableStartTrigger\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_NONE', + 'No trigger is configured.' + ], + [ + 'NIRFSG_VAL_DIGITAL_EDGE', + 'The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute, and the active edge is specified in the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_EDGE attribute.' + ], + [ + 'NIRFSG_VAL_SOFTWARE', + 'The data operation does not start until a software event occurs. You may create a software trigger by calling the niRFSG_SendSoftwareEdgeTrigger function.' + ], + [ + 'NIRFSG_VAL_P2P_ENDPOINT_FULLNESS', + 'The data operation does not start until the endpoint reaches the threshold specified in the NIRFSG_ATTR_P2P_ENDPOINT_FULLNESS_START_TRIGGER_LEVEL attribute.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] + }, + 'enum': 'StartTrigType', + 'lv_property': 'Triggers:Start:Type', + 'name': 'START_TRIGGER_TYPE', + 'type': 'ViInt32' + }, + 1250459: { + 'access': 'read-write', + 'codegen_method': 'public', + 'documentation': { + 'description': ' Specifies the active edge for the Start Trigger. This attribute is used when the NIRFSG_ATTR_START_TRIGGER_TYPE attribute is set to digital edge. To set the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_EDGE attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled.\n\n **Default Value:** NIRFSG_VAL_RISING_EDGE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Digital Edge Trigger `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeStartTrigger\n \n **Defined Values**:\n ', + 'table_body': [ + [ + 'NIRFSG_VAL_FALLING_EDGE', + '1 (0x1)', + 'Occurs when the signal transitions from high level to low level.' + ], + [ + 'NIRFSG_VAL_RISING_EDGE', + '0 (0x0)', + 'Occurs when the signal transitions from low level to high level.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'StartTrigDigEdgeEdge', + 'lv_property': 'Triggers:Start:Digital Edge', + 'name': 'DIGITAL_EDGE_START_TRIGGER_EDGE', + 'type': 'ViInt32' + } +} diff --git a/src/nirfsg/metadata/attributes_addon.py b/src/nirfsg/metadata/attributes_addon.py new file mode 100644 index 0000000000..65af90534c --- /dev/null +++ b/src/nirfsg/metadata/attributes_addon.py @@ -0,0 +1,6 @@ +# These dictionaries are applied to the generated attributes dictionary at build time +# Any changes to the API should be made here. attributes.py is code generated + +attributes_override_metadata = { +} + diff --git a/src/nirfsg/metadata/config.py b/src/nirfsg/metadata/config.py new file mode 100644 index 0000000000..196138f253 --- /dev/null +++ b/src/nirfsg/metadata/config.py @@ -0,0 +1,64 @@ +# -*- coding: utf-8 -*- +# This file is generated from NI-RFSG API metadata version 25.5.0d9999 +config = { + 'api_version': '25.5.0d9999', + 'c_function_prefix': 'niRFSG_', + 'close_function': 'close', + 'context_manager_name': { + 'abort_function': 'Abort', + 'initiate_function': 'Initiate', + 'task': 'generation' + }, + 'custom_types': [ + ], + 'driver_name': 'NI-RFSG', + 'enum_whitelist_suffix': [ + '_POINT_FIVE' + ], + 'extra_errors_used': [ + 'InvalidRepeatedCapabilityError', + 'SelfTestError' + ], + 'grpc_service_class_prefix': 'NiRFSG', + 'init_function': 'InitWithOptions', + 'library_info': { + 'Linux': { + '64bit': { + 'name': 'nirfsg', + 'type': 'cdll' + } + }, + 'Windows': { + '32bit': { + 'name': 'niRFSG.dll', + 'type': 'windll' + }, + '64bit': { + 'name': 'niRFSG_64.dll', + 'type': 'cdll' + } + } + }, + 'module_name': 'nirfsg', + 'repeated_capabilities': [ + { + 'prefix': 'marker', + 'python_name': 'markers' + }, + { + 'prefix': 'scripttrigger', + 'python_name': 'script_triggers' + }, + { + 'prefix': 'waveform::', + 'python_name': 'waveform' + }, + { + 'prefix': '', + 'python_name': 'deembedding_port' + } + ], + 'session_class_description': 'An NI-RFSG session to the RFSG driver', + 'session_handle_parameter_name': 'vi', + 'uses_nitclk': True +} diff --git a/src/nirfsg/metadata/config_addon.py b/src/nirfsg/metadata/config_addon.py new file mode 100644 index 0000000000..221d4616b1 --- /dev/null +++ b/src/nirfsg/metadata/config_addon.py @@ -0,0 +1,8 @@ +# We need to maintain the version here since it needs to be updated by the build process on GitHub +config_additional_config = { + 'module_version': '1.4.8.dev0', + 'latest_runtime_version_tested_against': '2023 Q1.1', + 'initial_release_year': '2017', + 'custom_types': [ + ] +} diff --git a/src/nirfsg/metadata/enums.py b/src/nirfsg/metadata/enums.py new file mode 100644 index 0000000000..55444d7e92 --- /dev/null +++ b/src/nirfsg/metadata/enums.py @@ -0,0 +1,3913 @@ +# -*- coding: utf-8 -*- +# This file is generated from NI-RFSG API metadata version 25.5.0d9999 +enums = { + '5696AmpBand': { + 'values': [ + { + 'name': 'NIRFSG_VAL_250_KHZ_-_250_MHZ', + 'value': 96000 + }, + { + 'name': 'NIRFSG_VAL_250_MHZ_-_1_GHZ', + 'value': 96001 + }, + { + 'name': 'NIRFSG_VAL_1_GHZ_-_2.4_GHZ', + 'value': 96002 + }, + { + 'name': 'NIRFSG_VAL_2.4_GHZ_-_3.86_GHZ', + 'value': 96003 + }, + { + 'name': 'NIRFSG_VAL_3.86_GHZ_-_5.37_GHZ', + 'value': 96004 + }, + { + 'name': 'NIRFSG_VAL_5.37_GHZ_-_7.45_GHZ', + 'value': 96005 + }, + { + 'name': 'NIRFSG_VAL_7.45_GHZ_-_10.4_GHZ', + 'value': 96006 + }, + { + 'name': 'NIRFSG_VAL_10.4_GHZ_-_14.4_GHZ', + 'value': 96007 + }, + { + 'name': 'NIRFSG_VAL_14.4GHZ_-_20_GHZ', + 'value': 96008 + }, + { + 'name': 'NIRFSG_VAL_LOW_GROUP_DELAY_14.4_GHZ_-_17_GHZ', + 'value': 96009 + }, + { + 'name': 'NIRFSG_VAL_LOW_GROUP_DELAY_17_GHZ_-_20_GHZ', + 'value': 96010 + } + ] + }, + '5840Modulator': { + 'values': [ + { + 'name': 'NIRFSG_VAL_BYPASS', + 'value': 95000 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 95001 + } + ] + }, + 'AllowOutOfSpecificationUserSettings': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Disables out-of-specification user settings.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Enables out-of-specification user settings.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'AmpPath': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Sets the amplification path to use the high power path.' + }, + 'name': 'NIRFSG_VAL_HIGH_POWER', + 'value': 16000 + }, + { + 'documentation': { + 'description': 'Sets the amplification path to use the low harmonic path.' + }, + 'name': 'NIRFSG_VAL_LOW_HARMONIC', + 'value': 16001 + } + ] + }, + 'AnlgModFmBand': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies narrowband frequency modulation.' + }, + 'name': 'NIRFSG_VAL_NARROWBAND', + 'value': 17000 + }, + { + 'documentation': { + 'description': 'Specifies wideband frequency modulation.' + }, + 'name': 'NIRFSG_VAL_WIDEBAND', + 'value': 17001 + } + ] + }, + 'AnlgModFmNarrowbandIntegrator': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies a range from 100Hz to 1kHz.' + }, + 'name': 'NIRFSG_VAL_100HZ_TO_1KHZ', + 'python_name': '_100hzto1khz', + 'value': 18000 + }, + { + 'documentation': { + 'description': 'Specifies a range from 1kHz to 10kHz.' + }, + 'name': 'NIRFSG_VAL_1KHZ_TO_10KHZ', + 'python_name': '_1khzto10khz', + 'value': 18001 + }, + { + 'documentation': { + 'description': 'Specifies a range from 10kHz to 100kHz.' + }, + 'name': 'NIRFSG_VAL_10KHZ_TO_100KHZ', + 'python_name': '_10khzto100khz', + 'value': 18002 + } + ] + }, + 'AnlgModPmMode': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies high deviation. High deviation comes at the expense of a higher phase noise.' + }, + 'name': 'NIRFSG_VAL_HIGH_DEVIATION', + 'value': 19000 + }, + { + 'documentation': { + 'description': 'Specifies low phase noise. Low phase noise comes at the expense of a lower maximum deviation.' + }, + 'name': 'NIRFSG_VAL_LOW_PHASE_NOISE', + 'value': 19001 + } + ] + }, + 'AnlgModType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Disables analog modulation.' + }, + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Specifies that the analog modulation type is FM.' + }, + 'name': 'NIRFSG_VAL_FM', + 'value': 2000 + }, + { + 'documentation': { + 'description': 'Specifies that the analog modulation type is PM.' + }, + 'name': 'NIRFSG_VAL_PM', + 'value': 2001 + }, + { + 'documentation': { + 'description': 'Specifies that the analog modulation type is AM.' + }, + 'name': 'NIRFSG_VAL_AM', + 'value': 2002 + } + ] + }, + 'AnlgModWfmType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies that the analog modulation waveform type is sine.' + }, + 'name': 'NIRFSG_VAL_SINE', + 'value': 3000 + }, + { + 'documentation': { + 'description': 'Specifies that the analog modulation waveform type is square.' + }, + 'name': 'NIRFSG_VAL_SQUARE', + 'value': 3001 + }, + { + 'documentation': { + 'description': 'Specifies that the analog modulation waveform type is triangle.' + }, + 'name': 'NIRFSG_VAL_TRIANGLE', + 'value': 3002 + } + ] + }, + 'ArbAmplitudeCorrectionMethod': { + 'values': [ + { + 'name': 'NIRFSG_VAL_ANALOG', + 'value': 98000 + }, + { + 'name': 'NIRFSG_VAL_DIGITAL', + 'value': 98001 + } + ] + }, + 'ArbOnboardSampleClockMode': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Sample rates are generated by a high-resolution clock.' + }, + 'name': 'NIRFSG_VAL_HIGH_RESOLUTION', + 'value': 6000 + }, + { + 'documentation': { + 'description': 'Sample rates are generated by dividing the source frequency.' + }, + 'name': 'NIRFSG_VAL_DIVIDE_DOWN', + 'value': 6001 + } + ] + }, + 'ArbSampleClockSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Uses the AWG module onboard clock as the Sample Clock source.' + }, + 'name': 'NIRFSG_VAL_ONBOARD_CLOCK_STR', + 'value': 'OnboardClock' + }, + { + 'documentation': { + 'description': 'Uses the external clock as the Sample Clock source.' + }, + 'name': 'NIRFSG_VAL_CLK_IN_STR', + 'value': 'ClkIn' + } + ] + }, + 'AutomaticLevelControl': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Disables ALC.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Enables the ALC.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'AutomaticPowerSearch': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Disables automatic power search.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Enables automatic power search.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'AutomaticThermalCorrection': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Automatic thermal correction is disabled.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Automatic thermal correction is enabled.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'CoercePowerLevelToMaxPower': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'ConfigListTrigDigEdgeEdge': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level.' + }, + 'name': 'NIRFSG_VAL_RISING_EDGE', + 'value': 0 + } + ] + }, + 'ConfigListTrigDigEdgeSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The trigger is received on PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 1.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 7.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG7_STR', + 'value': 'PXI_Trig7' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646.' + }, + 'name': 'NIRFSG_VAL_PXI_STAR_STR', + 'value': 'PXI_Star' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'value': 'PXIe_DStarB' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker Event 0.' + }, + 'name': 'NIRFSG_VAL_MARKER0_EVENT_STR', + 'value': 'Marker0Event' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker Event 1.' + }, + 'name': 'NIRFSG_VAL_MARKER1_EVENT_STR', + 'value': 'Marker1Event' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker Event 2.' + }, + 'name': 'NIRFSG_VAL_MARKER2_EVENT_STR', + 'value': 'Marker2Event' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker Event 3.' + }, + 'name': 'NIRFSG_VAL_MARKER3_EVENT_STR', + 'value': 'Marker3Event' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Timer Event.' + }, + 'name': 'NIRFSG_VAL_TIMER_EVENT_STR', + 'value': 'TimerEvent' + }, + { + 'documentation': { + 'description': 'The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + }, + 'name': 'NIRFSG_VAL_TRIG_IN_STR', + 'value': 'TrigIn' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'ConfigListTrigExportOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. ' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The signal is exported on PFI 1 connector.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 0. .' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 0. ' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'value': 'PXIe_DStarC' + }, + { + 'documentation': { + 'description': 'The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + }, + 'name': 'NIRFSG_VAL_TRIG_OUT_STR', + 'value': 'TrigOut' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'ConfigListTrigType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Generation starts immediately, but the list does not advance.' + }, + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the %attribute{digital edge configuration list step trigger source} attribute, and the active edge is always rising.' + }, + 'name': 'NIRFSG_VAL_DIGITAL_EDGE', + 'value': 1 + } + ] + }, + 'ConfigurationListRepeat': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'NI-RFSG runs the configuration list continuously.' + }, + 'name': 'NIRFSG_VAL_CONTINUOUS', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'NI-RFSG runs the configuration list only once.' + }, + 'name': 'NIRFSG_VAL_SINGLE', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + } + ] + }, + 'ConfigurationSettledEventExportOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'value': 'PXIe_DStarC' + }, + { + 'documentation': { + 'description': 'TRIG IN/OUT terminal.' + }, + 'name': 'NIRFSG_VAL_TRIG_OUT_STR', + 'value': 'TrigOut' + } + ] + }, + 'DacDecoderMode': { + 'values': [ + { + 'name': 'NIRFSG_VAL_MAX_SNR', + 'value': 28001 + }, + { + 'name': 'NIRFSG_VAL_MAX_LINEARITY', + 'value': 28002 + } + ] + }, + 'DebuggingOptions': { + 'values': [ + { + 'name': 'NIRFSG_VAL_PLL_LOCK_COUNT', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_MEASURE_IO_TIME', + 'value': 2 + } + ] + }, + 'DeembeddingTypeAttrVals': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'De-embedding is not applied to the measurement.' + }, + 'name': 'NIRFSG_VAL_DEEMBEDDING_TYPE_NONE', + 'value': 25000 + }, + { + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'De-embeds the measurement using only the gain term.' + }, + 'name': 'NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR', + 'value': 25001 + }, + { + 'documentation': { + 'description': 'De-embeds the measurement using the gain term and the reflection term.' + }, + 'name': 'NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR', + 'value': 25002 + } + ] + }, + 'DigModType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Disables digital modulation.' + }, + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Specifies that the digital modulation type is frequency-shift keying (FSK).' + }, + 'name': 'NIRFSG_VAL_FSK', + 'value': 4000 + }, + { + 'documentation': { + 'description': 'Specifies that the digital modulation type is on-off keying (OOK).' + }, + 'name': 'NIRFSG_VAL_OOK', + 'value': 4001 + }, + { + 'documentation': { + 'description': 'Specifies that the digital modulation type is phase-shift keying (PSK).' + }, + 'name': 'NIRFSG_VAL_PSK', + 'value': 4002 + } + ] + }, + 'DigModWfmType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies that the digital modulation waveform type is pseudorandom bit sequence (PRBS).' + }, + 'name': 'NIRFSG_VAL_PRBS', + 'value': 5000 + }, + { + 'documentation': { + 'description': 'Specifies that the digital modulation waveform type is user defined. To specify the user-defined waveform, call the %function{configure digital modulation user defined waveform} function.' + }, + 'name': 'NIRFSG_VAL_USER_DEFINED', + 'value': 5001 + } + ] + }, + 'DigitalEqualizationEnabled': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Filter is not applied' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Filter is applied.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'DirectDownload': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The RF In local oscillator signal is not present at the front panel LO OUT connector.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'The RF In local oscillator signal is present at the front panel LO OUT connector.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + }, + { + 'documentation': { + 'description': 'The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may be controlling it.' + }, + 'name': 'NIRFSG_VAL_UNSPECIFIED', + 'value': -2 + } + ] + }, + 'DoneEventExportOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 1 connector.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 4 connector.' + }, + 'name': 'NIRFSG_VAL_PFI4_STR', + 'value': 'PFI4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 5 connector.' + }, + 'name': 'NIRFSG_VAL_PFI5_STR', + 'value': 'PFI5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'value': 'PXIe_DStarC' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'FilterType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'No filter type is applied.' + }, + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Applies a root-raised cosine filter to the data with the alpha value specified with the %attribute{arb filter root raised cosine alpha} attribute.' + }, + 'name': 'NIRFSG_VAL_ARB_FILTER_TYPE_ROOT_RAISED_COSINE', + 'value': 10001 + }, + { + 'documentation': { + 'description': 'Applies a raised cosine filter to the data with the alpha value specified with the %attribute{arb filter raised cosine alpha} attribute.' + }, + 'name': 'NIRFSG_VAL_ARB_FILTER_TYPE_RAISED_COSINE', + 'value': 10002 + } + ] + }, + 'Format': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Results in a linear interpolation of the magnitude and a separate linear interpolation of the phase.' + }, + 'name': 'NIRFSG_VAL_LINEAR_INTERPOLATION_FORMAT_MAGNITUDE_AND_PHASE', + 'value': 26001 + }, + { + 'documentation': { + 'description': 'Results in a linear interpolation of the magnitude, in decibels, and a separate linear interpolation of the phase.' + }, + 'name': 'NIRFSG_VAL_LINEAR_INTERPOLATION_FORMAT_MAGNITUDE_DB_AND_PHASE', + 'value': 26002 + }, + { + 'documentation': { + 'description': 'Results in a linear interpolation of the real portion of the complex number and a separate linear interpolation of the complex portion.' + }, + 'name': 'NIRFSG_VAL_LINEAR_INTERPOLATION_FORMAT_REAL_AND_IMAGINARY', + 'value': 26000 + } + ] + }, + 'FrequencyResponseFilterEnabled': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'FrequencySettlingUnits': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the time to wait after the frequency PLL locks.' + }, + 'name': 'NIRFSG_VAL_TIME_AFTER_LOCK', + 'value': 12000 + }, + { + 'documentation': { + 'description': 'Specifies the time to wait after all writes occur to change the frequency' + }, + 'name': 'NIRFSG_VAL_TIME_AFTER_IO', + 'value': 12001 + }, + { + 'documentation': { + 'description': 'Specifies the minimum frequency accuracy when settling completes. Units are in parts per million (PPM or 1E-6).' + }, + 'name': 'NIRFSG_VAL_PPM', + 'value': 12002 + } + ] + }, + 'GainStateFromSelfCal': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'GenerationMode': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Configures the RF signal generator to generate a CW signal.' + }, + 'name': 'NIRFSG_VAL_CW', + 'value': 1000 + }, + { + 'documentation': { + 'description': 'Configures the RF signal generator to generate the arbitrary waveform specified by the %attribute{arb selected waveform} attribute.' + }, + 'name': 'NIRFSG_VAL_ARB_WAVEFORM', + 'value': 1001 + }, + { + 'documentation': { + 'description': 'Configures the RF signal generator to generate arbitrary waveforms as directed by the %attribute{selected script} attribute.' + }, + 'name': 'NIRFSG_VAL_SCRIPT', + 'value': 1002 + } + ] + }, + 'IQOutPortTermCfg': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Sets the terminal configuration to differential.' + }, + 'name': 'NIRFSG_VAL_DIFFERENTIAL', + 'value': 15000 + }, + { + 'documentation': { + 'description': 'Sets the terminal configuration to single-ended.' + }, + 'name': 'NIRFSG_VAL_SINGLE_ENDED', + 'value': 15001 + } + ] + }, + 'ImpairmentsFilterEnabled': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'Lo1OutputFilter': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + } + ] + }, + 'LoFilter': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Exports a Configuration Settled Event.' + }, + 'name': 'NIRFSG_VAL_CONFIGURATION_SETTLED_EVENT', + 'value': 7 + }, + { + 'documentation': { + 'description': 'Exports a Configuration List Step Trigger.' + }, + 'name': 'NIRFSG_VAL_CONFIGURATION_LIST_STEP_TRIGGER', + 'value': 6 + }, + { + 'documentation': { + 'description': 'Exports a Done Event.' + }, + 'name': 'NIRFSG_VAL_DONE_EVENT', + 'value': 5 + }, + { + 'documentation': { + 'description': 'Exports a Marker Event.' + }, + 'name': 'NIRFSG_VAL_MARKER_EVENT', + 'value': 2 + }, + { + 'documentation': { + 'description': 'Exports the Reference Clock.' + }, + 'name': 'NIRFSG_VAL_REF_CLOCK', + 'value': 3 + }, + { + 'documentation': { + 'description': 'Exports a Script Trigger.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + }, + { + 'documentation': { + 'description': 'Exports a Start Trigger.' + }, + 'name': 'NIRFSG_VAL_START_TRIGGER', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Exports a Started Event.' + }, + 'name': 'NIRFSG_VAL_STARTED_EVENT', + 'value': 4 + } + ] + }, + 'LoOutEnabled': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The local oscillator signal is present at the LO OUT front panel connector.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'The local oscillator signal is not present at the LO OUT front panel connector..' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + } + ] + }, + 'LoOutExportConfigureFromRFSaEnable': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Do not allow NI-RFSA to control the NI-RFSG local oscillator export.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Allow NI-RFSA to control the NI-RFSG local oscillator export.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + } + ] + }, + 'LoOutSource': { + 'values': [ + { + 'name': 'NIRFSG_VAL_INTERNAL_LO', + 'value': 'Internal_LO' + }, + { + 'name': 'NIRFSG_VAL_ONBOARD', + 'value': 'Onboard' + } + ] + }, + 'LoPlLfractionalModeEnabled': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Disables fractional mode for the LO PLL.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Enables fractional mode for the LO PLL.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + } + ] + }, + 'LoSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Uses an internal LO as the LO source. If you specify an internal LO source, the LO is generated inside the device itself.' + }, + 'name': 'NIRFSG_VAL_LO_SOURCE_ONBOARD_STR', + 'value': 'Onboard' + }, + { + 'documentation': { + 'description': 'Uses an external LO as the LO source. Connect a signal to the LO IN connector on the device and use the %attribute{upconverter center frequency} attribute to specify the LO frequency.' + }, + 'name': 'NIRFSG_VAL_LO_SOURCE_LO_IN_STR', + 'value': 'LO_In' + }, + { + 'documentation': { + 'description': 'Uses the PXIe-5831/5840 internal LO as the LO source. This value is valid only on the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.' + }, + 'name': 'NIRFSG_VAL_LO_SOURCE_SECONDARY_STR', + 'value': 'Secondary' + }, + { + 'documentation': { + 'description': 'Uses the same internal LO during NI-RFSA and NI-RFSG sessions. NI-RFSG selects an internal synthesizer and the synthesizer signal is switched to both the RF In and RF Out mixers. This value is valid only on the PXIe-5830/5831/5832/5841 with PXIe-5655/5842.' + }, + 'name': 'NIRFSG_VAL_LO_SOURCE_SG_SA_SHARED_STR', + 'value': 'SG_SA_Shared' + }, + { + 'documentation': { + 'description': 'NI-RFSG internally makes the configuration to share the LO between NI-RFSA and NI-RFSG. This value is valid only on the PXIe-5820/5830/5831/5832/5840/5841/5842.' + }, + 'name': 'NIRFSG_VAL_LO_SOURCE_AUTOMATIC_SG_SA_SHARED_STR', + 'value': 'Automatic_SG_SA_Shared' + } + ] + }, + 'LoadOptions': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'NI-RFSG loads all the configurations to the session.' + }, + 'name': 'NIRFSG_VAL_SKIP_NONE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'NI-RFSG skips loading the waveform configurations to the session.' + }, + 'name': 'NIRFSG_VAL_SKIP_WAVEFORM', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + } + ] + }, + 'LoopBandwidth': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Uses the narrowest loop bandwidth setting for the PLL.' + }, + 'name': 'NIRFSG_VAL_NARROW', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Uses the medium loop bandwidth setting for the PLL.' + }, + 'name': 'NIRFSG_VAL_MEDIUM', + 'value': 1 + }, + { + 'documentation': { + 'description': 'Uses the widest loop bandwidth setting for the PLL.' + }, + 'name': 'NIRFSG_VAL_WIDE', + 'value': 2 + } + ] + }, + 'MarkerEventExportOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 1 connector.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 4 connector.' + }, + 'name': 'NIRFSG_VAL_PFI4_STR', + 'value': 'PFI4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 5 connector.' + }, + 'name': 'NIRFSG_VAL_PFI5_STR', + 'value': 'PFI5' + }, + { + 'documentation': { + 'description': 'The signal is exported to PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The signal is exported to PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The signal is exported to PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The signal is exported to PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The signal is exported to PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The signal is exported to PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The signal is exported to PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'value': 'PXIe_DStarC' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'MarkerEventOutputBehavior': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the Marker Event output behavior as pulse.' + }, + 'name': 'NIRFSG_VAL_PULSE', + 'value': 23000 + }, + { + 'documentation': { + 'description': 'Specifies the Marker Event output behavior as toggle.' + }, + 'name': 'NIRFSG_VAL_TOGGLE', + 'value': 23001 + } + ] + }, + 'MarkerEventPulseWidthUnits': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the Marker Event pulse width units as seconds.' + }, + 'name': 'NIRFSG_VAL_SECONDS', + 'value': 22000 + }, + { + 'documentation': { + 'description': 'Specifies the Marker Event pulse width units as Sample Clock periods.' + }, + 'name': 'NIRFSG_VAL_SAMPLE_CLOCK_PERIODS', + 'value': 22001 + } + ] + }, + 'MarkerEventToggleInitialState': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the initial state of the Marker Event toggle behavior as digital low.' + }, + 'name': 'NIRFSG_VAL_DIGITAL_LOW', + 'value': 21000 + }, + { + 'documentation': { + 'description': 'Specifies the initial state of the Marker Event toggle behavior as digital high.' + }, + 'name': 'NIRFSG_VAL_DIGITAL_HIGH', + 'value': 21001 + } + ] + }, + 'MismatchCorrectionEnabled': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'Module': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The AWG associated with the primary module.' + }, + 'name': 'NIRFSG_VAL_AWG', + 'value': 13001 + }, + { + 'documentation': { + 'description': 'The LO associated with the primary module.' + }, + 'name': 'NIRFSG_VAL_LO', + 'value': 13002 + }, + { + 'documentation': { + 'description': 'The stand-alone device or the main module in a multi-module device.' + }, + 'name': 'NIRFSG_VAL_PRIMARY_MODULE', + 'value': 13000 + } + ] + }, + 'OffsetUnits': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the unit in percentage.' + }, + 'name': 'NIRFSG_VAL_PERCENT', + 'value': 11000 + }, + { + 'documentation': { + 'description': 'Specifies the unit in volts.' + }, + 'name': 'NIRFSG_VAL_VOLTS', + 'value': 11001 + } + ] + }, + 'OptimizePathForSignalBandwidth': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'OutputPort': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Enables the RF OUT port. This value is not valid for the PXIe-5820.' + }, + 'name': 'NIRFSG_VAL_RF_OUT', + 'value': 14000 + }, + { + 'documentation': { + 'description': 'Enables the I/Q OUT port. This value is valid on only the PXIe-5645 and PXIe-5820.' + }, + 'name': 'NIRFSG_VAL_IQ_OUT', + 'value': 14001 + }, + { + 'documentation': { + 'description': 'Enables the CAL OUT port.' + }, + 'name': 'NIRFSG_VAL_CAL_OUT', + 'value': 14002 + }, + { + 'documentation': { + 'description': 'Enables the I connectors of the I/Q OUT port. This value is valid on only the PXIe-5645.' + }, + 'name': 'NIRFSG_VAL_I_ONLY', + 'value': 14003 + } + ] + }, + 'OverflowErrorReporting': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'NI-RFSG returns a warning when an OSP overflow occurs.' + }, + 'name': 'NIRFSG_VAL_ERROR_REPORTING_WARNING', + 'value': 1301 + }, + { + 'documentation': { + 'description': 'NI-RFSG does not return an error or a warning when an OSP overflow occurs.' + }, + 'name': 'NIRFSG_VAL_ERROR_REPORTING_DISABLED', + 'value': 1302 + } + ] + }, + 'PhaseContinuityEnabled': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The arbitrary waveform may be repeated to ensure phase continuity after upconversion. This setting could cause waveform size to increase.' + }, + 'name': 'NIRFSG_VAL_AUTO', + 'value': -1 + }, + { + 'documentation': { + 'description': 'The arbitrary waveform plays back without regard to any possible phase discontinuities introduced by upconversion. The time duration of the original waveform is maintained.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'The arbitrary waveform may be repeated to ensure phase continuity after upconversion. Enabling this attribute could cause waveform size to increase.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'PortTypes': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the PXIe-5840 RF OUT port.' + }, + 'name': 'NIRFSG_VAL_PORT_RF_OUT', + 'value': 14501 + }, + { + 'documentation': { + 'description': 'Specifies the PXIe-5840 RF IN port. This value is not supported as the first element of an array.' + }, + 'name': 'NIRFSG_VAL_PORT_RF_IN', + 'value': 14500 + } + ] + }, + 'PowerLevelType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If your write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820.' + }, + 'name': 'NIRFSG_VAL_AVERAGE_POWER', + 'value': 7000 + }, + { + 'documentation': { + 'description': 'Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires that the magnitude of the I/Q waveform must always be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the %attribute{arb waveform software scaling factor} attribute. You can use the %attribute{peak power adjustment} attribute in conjunction with the %attribute{power level} attribute when the %attribute{power level type} attribute is set to %enum_value{power level type.peak power}.' + }, + 'name': 'NIRFSG_VAL_PEAK_POWER', + 'value': 7001 + } + ] + }, + 'PpaInheritance': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Errors out if different values are detected in the script.' + }, + 'name': 'NIRFSG_VAL_EXACT_MATCH', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Uses the minimum value found in the script.' + }, + 'name': 'NIRFSG_VAL_MINIMUM', + 'value': 1 + }, + { + 'documentation': { + 'description': 'Uses the maximum value found in the script.' + }, + 'name': 'NIRFSG_VAL_MAXIMUM', + 'value': 2 + } + ] + }, + 'PulseModulationMode': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Provides for a more optimal power output match for the device during the off cycle of the pulse mode operation. Not supported on PXIe-5842' + }, + 'name': 'NIRFSG_VAL_OPTIMAL_MATCH', + 'value': 20000 + }, + { + 'documentation': { + 'description': 'Allows for the best on/off power ratio of the pulsed signal.' + }, + 'name': 'NIRFSG_VAL_HIGH_ISOLATION', + 'value': 20001 + }, + { + 'documentation': { + 'description': 'Analog switch blanking. Balance between switching speed and on/off power ratio of the pulsed signal.' + }, + 'name': 'NIRFSG_VAL_ANALOG', + 'value': 20002 + }, + { + 'documentation': { + 'description': 'Digital only modulation. Provides the best on/off switching speed of the pulsed signal at the cost of signal isolation.' + }, + 'name': 'NIRFSG_VAL_DIGITAL', + 'value': 20003 + } + ] + }, + 'PulseModulationOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'NIRFSG_VAL_PULSE_OUT_STR', + 'value': 'PulseOut' + } + ] + }, + 'PulseModulationSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842.' + }, + 'name': 'NIRFSG_VAL_PULSE_IN_STR', + 'value': 'PulseIn' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker 0.' + }, + 'name': 'NIRFSG_VAL_MARKER0_STR', + 'value': 'Marker0' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker 1.' + }, + 'name': 'NIRFSG_VAL_MARKER1_STR', + 'value': 'Marker1' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker 2.' + }, + 'name': 'NIRFSG_VAL_MARKER2_STR', + 'value': 'Marker2' + }, + { + 'documentation': { + 'description': 'The trigger is received from the Marker 3.' + }, + 'name': 'NIRFSG_VAL_MARKER3_STR', + 'value': 'Marker3' + } + ] + }, + 'PxiChassisClk10Source': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Do not drive the PXI_CLK10 signal.' + }, + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'Uses the highly stable oven-controlled onboard Reference Clock to drive the PXI_CLK signal.' + }, + 'name': 'NIRFSG_VAL_ONBOARD_CLOCK_STR', + 'value': 'OnboardClock' + }, + { + 'documentation': { + 'description': 'Uses the clock present at the front panel REF IN connector to drive the PXI_CLK signal.' + }, + 'name': 'NIRFSG_VAL_REF_IN_STR', + 'value': 'RefIn' + } + ] + }, + 'RFBlanking': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'RF blanking is disabled.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'RF blanking is enabled.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'RFFilter': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'NIRFSG_VAL_HI_FREQ_MOD', + 'value': '0' + }, + { + 'name': 'NIRFSG_VAL_CONFIGURATION_SETTLED_EVENT', + 'value': 7 + }, + { + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'NIRFSG_VAL_LO_FREQ_MOD_4000', + 'value': '1' + }, + { + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'NIRFSG_VAL_LO_FREQ_MOD_2500', + 'value': '2' + } + ] + }, + 'RFInLoExportEnabled': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The RF IN local oscillator signal may or may not be present at the front panel LO OUT connector, because NI-RFSA may' + }, + 'name': 'NIRFSG_VAL_UNSPECIFIED', + 'value': -2 + }, + { + 'documentation': { + 'description': 'The RF In local oscillator signal is not present at the front panel LO OUT connector.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'The RF In local oscillator signal is present at the front panel LO OUT connector.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + } + ] + }, + 'RFPowerMeterEnabled': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'RFPowerProtectionEnabled': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'ReferenceClockExportOutputTerminal': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The Reference Clock signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'Exports the Reference Clock signal to the REF OUT connector of the device.' + }, + 'name': 'NIRFSG_VAL_REF_OUT_STR', + 'value': 'RefOut' + }, + { + 'documentation': { + 'description': 'Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable.' + }, + 'name': 'NIRFSG_VAL_REF_OUT2_STR', + 'value': 'RefOut2' + }, + { + 'documentation': { + 'description': 'Exports the Reference Clock signal to the CLK OUT connector of the device.' + }, + 'name': 'NIRFSG_VAL_CLK_OUT_STR', + 'value': 'ClkOut' + } + ] + }, + 'ReferenceClockExportedRate': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Uses a 10MHz Reference Clock rate.' + }, + 'name': 'NIRFSG_VAL_10MHZ', + 'python_name': '_10mhz', + 'value': 10000000 + }, + { + 'documentation': { + 'description': 'Uses a 100MHz Reference Clock rate.' + }, + 'name': 'NIRFSG_VAL_100MHZ', + 'python_name': '_100mhz', + 'value': 100000000.0 + }, + { + 'documentation': { + 'description': 'Uses a 1GHz Reference Clock rate.' + }, + 'name': 'NIRFSG_VAL_1GHZ', + 'python_name': '_1ghz', + 'value': 1000000000.0 + } + ] + }, + 'ReferenceClockRate': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Uses the default Reference Clock rate for the device or automatically detects the Reference Clock rate if the device supports it.' + }, + 'name': 'NIRFSG_VAL_AUTO', + 'value': -1 + }, + { + 'documentation': { + 'description': 'Uses a 10MHz Reference Clock rate.' + }, + 'name': 'NIRFSG_VAL_10MHZ', + 'python_name': '_10mhz', + 'value': 10000000 + } + ] + }, + 'ReferenceClockSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Uses the onboard Reference Clock as the clock source.' + }, + 'name': 'NIRFSG_VAL_ONBOARD_CLOCK_STR', + 'value': 'OnboardClock' + }, + { + 'documentation': { + 'description': 'Uses the clock signal present at the front panel REF IN connector as the Reference Clock source.' + }, + 'name': 'NIRFSG_VAL_REF_IN_STR', + 'value': 'RefIn' + }, + { + 'documentation': { + 'description': 'Uses the PXI_CLK signal, which is present on the PXI backplane, as the Reference Clock source.' + }, + 'name': 'NIRFSG_VAL_PXI_CLK_STR', + 'value': 'PXI_CLK' + }, + { + 'documentation': { + 'description': 'Uses the clock signal present at the front panel CLK IN connector as the Reference Clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655.' + }, + 'name': 'NIRFSG_VAL_CLK_IN_STR', + 'value': 'ClkIn' + }, + { + 'documentation': { + 'description': 'This value is not valid on any supported devices.' + }, + 'name': 'NIRFSG_VAL_REF_IN_2_STR', + 'value': 'RefIn2' + }, + { + 'documentation': { + 'description': 'This value is valid on only the PXIe-5831/5832 with PXIe-5653.**PXIe-5831/5832 with PXIe-5653—**NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use %enum_value{reference clock source.pxi clk str} as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' + }, + 'name': 'NIRFSG_VAL_PXI_CLK_MASTER_STR', + 'value': 'PXI_ClkMaster' + } + ] + }, + 'RelativeTo': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The reference position is relative to the current position.' + }, + 'name': 'NIRFSG_VAL_CURRENT_POSITION', + 'value': 8001 + }, + { + 'documentation': { + 'description': 'The reference position is relative to the start of the waveform.' + }, + 'name': 'NIRFSG_VAL_START_OF_WAVEFORM', + 'value': 8000 + } + ] + }, + 'ResetOptions': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'NI-RFSG skips resetting the waveform configurations.' + }, + 'name': 'NIRFSG_VAL_SKIP_WAVEFORMS', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'NI-RFSG skips resetting the de-embedding tables.' + }, + 'name': 'NIRFSG_VAL_SKIP_DEEMBEDDING_TABLES', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + }, + { + 'documentation': { + 'description': 'NI-RFSG skips resetting the scripts.' + }, + 'name': 'NIRFSG_VAL_SKIP_SCRIPTS', + 'value': 2 + }, + { + 'name': 'NIRFSG_VAL_MARKER_EVENT', + 'value': 2 + }, + { + 'documentation': { + 'description': 'NI-RFSG resets all configurations.' + }, + 'name': 'NIRFSG_VAL_SKIP_NONE', + 'value': 3 + }, + { + 'name': 'NIRFSG_VAL_SELF_CAL_IMAGE_SUPPRESSION', + 'value': 8 + } + ] + }, + 'ScriptTrigDigEdgeEdge': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Asserts the trigger when the signal transitions from low level to high level.' + }, + 'name': 'NIRFSG_VAL_RISING_EDGE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Asserts the trigger when the signal transitions from high level to low level.' + }, + 'name': 'NIRFSG_VAL_FALLING_EDGE', + 'value': 1 + } + ] + }, + 'ScriptTrigDigEdgeSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The trigger is received on PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 1.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 2.' + }, + 'name': 'NIRFSG_VAL_PFI2_STR', + 'value': 'PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 3.' + }, + 'name': 'NIRFSG_VAL_PFI3_STR', + 'value': 'PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 7.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG7_STR', + 'value': 'PXI_Trig7' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646.' + }, + 'name': 'NIRFSG_VAL_PXI_STAR_STR', + 'value': 'PXI_Star' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'value': 'PXIe_DStarB' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842.' + }, + 'name': 'NIRFSG_VAL_PULSE_IN_STR', + 'value': 'PulseIn' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + }, + { + 'documentation': { + 'description': 'The trigger is received on the Sync Script trigger line. This value is valid on only the PXIe-5644/5645/5646.' + }, + 'name': 'NIRFSG_VAL_SYNC_SCRIPT_TRIGGER_STR', + 'value': 'Sync_Script' + } + ] + }, + 'ScriptTrigDigLevelActiveLevel': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Trigger when the digital trigger signal is high.' + }, + 'name': 'NIRFSG_VAL_ACTIVE_HIGH', + 'value': 9000 + }, + { + 'documentation': { + 'description': 'Trigger when the digital trigger signal is low.' + }, + 'name': 'NIRFSG_VAL_ACTIVE_LOW', + 'value': 9001 + } + ] + }, + 'ScriptTrigDigLevelSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The trigger is received on PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 1.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 2.' + }, + 'name': 'NIRFSG_VAL_PFI2_STR', + 'value': 'PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 3.' + }, + 'name': 'NIRFSG_VAL_PFI3_STR', + 'value': 'PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 7.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG7_STR', + 'value': 'PXI_Trig7' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646.' + }, + 'name': 'NIRFSG_VAL_PXI_STAR_STR', + 'value': 'PXI_Star' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'value': 'PXIe_DStarB' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PULSE IN terminal. This value is valid on only the PXIe-5842.' + }, + 'name': 'NIRFSG_VAL_PULSE_IN_STR', + 'value': 'PulseIn' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'ScriptTrigExportOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 1 connector.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 4 connector.' + }, + 'name': 'NIRFSG_VAL_PFI4_STR', + 'value': 'PFI4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 5 connector.' + }, + 'name': 'NIRFSG_VAL_PFI5_STR', + 'value': 'PFI5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'value': 'PXIe_DStarC' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'ScriptTrigType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'No trigger is configured. Signal generation starts immediately.' + }, + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the %attribute{digital edge start trigger source} attribute, and the active edge is specified with the %attribute{digital edge start trigger edge} attribute.' + }, + 'name': 'NIRFSG_VAL_DIGITAL_EDGE', + 'value': 1 + }, + { + 'documentation': { + 'description': 'The data operation does not start until the digital level is detected. The source of the digital level is specified in the %attribute{digital level script trigger source} attribute, and the active level is specified in the %attribute{digital level script trigger active level} attribute.' + }, + 'name': 'NIRFSG_VAL_DIGITAL_LEVEL', + 'value': 8000 + }, + { + 'documentation': { + 'description': 'The data operation does not start until a software trigger occurs. You can create a software event by calling the %function{send software edge trigger} function.' + }, + 'name': 'NIRFSG_VAL_SOFTWARE', + 'value': 2 + } + ] + }, + 'SelfCalibrateRange': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted.' + }, + 'name': 'NIRFSG_VAL_SELF_CAL_IMAGE_SUPPRESSION', + 'value': 8 + }, + { + 'documentation': { + 'description': 'Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted.' + }, + 'name': 'NIRFSG_VAL_SELF_CAL_LO_SELF_CAL', + 'value': 1 + }, + { + 'documentation': { + 'description': 'No calibration steps are omitted.' + }, + 'name': 'NIRFSG_VAL_SELF_CAL_OMIT_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted.' + }, + 'name': 'NIRFSG_VAL_SELF_CAL_POWER_LEVEL_ACCURACY', + 'value': 2 + }, + { + 'documentation': { + 'description': 'Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted.' + }, + 'name': 'NIRFSG_VAL_SELF_CAL_RESIDUAL_LO_POWER', + 'value': 4 + }, + { + 'documentation': { + 'description': 'Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted.' + }, + 'name': 'NIRFSG_VAL_SELF_CAL_SYNTHESIZER_ALIGNMENT', + 'value': 16 + } + ] + }, + 'SignalIdentifier': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies Marker 0.' + }, + 'name': 'NIRFSG_VAL_MARKER_EVENT0', + 'value': 'marker0' + }, + { + 'documentation': { + 'description': 'Specifies Marker 1.' + }, + 'name': 'NIRFSG_VAL_MARKER_EVENT1', + 'value': 'marker1' + }, + { + 'documentation': { + 'description': 'Specifies Marker 2.' + }, + 'name': 'NIRFSG_VAL_MARKER_EVENT2', + 'value': 'marker2' + }, + { + 'documentation': { + 'description': 'Specifies Marker 3.' + }, + 'name': 'NIRFSG_VAL_MARKER_EVENT3', + 'value': 'marker3' + }, + { + 'documentation': { + 'description': 'Specifies Script Trigger 0.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER0', + 'value': 'scriptTrigger0' + }, + { + 'documentation': { + 'description': 'Specifies Script Trigger 1.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER1', + 'value': 'scriptTrigger1' + }, + { + 'documentation': { + 'description': 'Specifies Script Trigger 2.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER2', + 'value': 'scriptTrigger2' + }, + { + 'documentation': { + 'description': 'Specifies Script Trigger 3.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER3', + 'value': 'scriptTrigger3' + } + ] + }, + 'SparameterOrientation': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Port 1 of the S2P is oriented towards the DUT port.' + }, + 'name': 'NIRFSG_VAL_PORT1_TOWARDS_DUT', + 'value': 24000 + }, + { + 'documentation': { + 'description': 'Port 2 of the S2P is oriented towards the DUT port.' + }, + 'name': 'NIRFSG_VAL_PORT2_TOWARDS_DUT', + 'value': 24001 + } + ] + }, + 'StartTrigDigEdgeEdge': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Occurs when the signal transitions from low level to high level.' + }, + 'name': 'NIRFSG_VAL_RISING_EDGE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Occurs when the signal transitions from high level to low level.' + }, + 'name': 'NIRFSG_VAL_FALLING_EDGE', + 'value': 1 + } + ] + }, + 'StartTrigDigEdgeSource': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The trigger is received on PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 1.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 2.' + }, + 'name': 'NIRFSG_VAL_PFI2_STR', + 'value': 'PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI 3.' + }, + 'name': 'NIRFSG_VAL_PFI3_STR', + 'value': 'PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PXI trigger line 7.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG7_STR', + 'value': 'PXI_Trig7' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXI star trigger line. This value is not valid on the PXIe-5644/5645/5646.' + }, + 'name': 'NIRFSG_VAL_PXI_STAR_STR', + 'value': 'PXI_Star' + }, + { + 'documentation': { + 'description': 'The trigger is received on the PXI DStar B trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARB_STR', + 'value': 'PXIe_DStarB' + }, + { + 'documentation': { + 'description': 'The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + }, + 'name': 'NIRFSG_VAL_TRIG_IN_STR', + 'value': 'TrigIn' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + }, + { + 'documentation': { + 'description': 'The trigger is received on the Sync Start trigger line. This value is valid on only the PXIe-5644/5645/5646.' + }, + 'name': 'NIRFSG_VAL_SYNC_START_TRIGGER_STR', + 'value': 'Sync_Start' + } + ] + }, + 'StartTrigExportOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 1 connector.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 4 connector.' + }, + 'name': 'NIRFSG_VAL_PFI4_STR', + 'value': 'PFI4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 5 connector.' + }, + 'name': 'NIRFSG_VAL_PFI5_STR', + 'value': 'PFI5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'value': 'PXIe_DStarC' + }, + { + 'documentation': { + 'description': 'The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' + }, + 'name': 'NIRFSG_VAL_TRIG_OUT_STR', + 'value': 'TrigOut' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'StartTrigType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'No trigger is configured.' + }, + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'The data operation does not start until a digital edge is detected. The source of the digital edge is specified with the %attribute{digital edge start trigger source} attribute, and the active edge is specified in the %attribute{digital edge start trigger edge} attribute.' + }, + 'name': 'NIRFSG_VAL_DIGITAL_EDGE', + 'value': 1 + }, + { + 'documentation': { + 'description': 'The data operation does not start until a software event occurs. You may create a software trigger by calling the %function{send software edge trigger} function.' + }, + 'name': 'NIRFSG_VAL_SOFTWARE', + 'value': 2 + }, + { + 'documentation': { + 'description': 'The data operation does not start until the endpoint reaches the threshold specified in the %attribute{p2p endpoint fullness start trigger level} attribute.' + }, + 'name': 'NIRFSG_VAL_P2P_ENDPOINT_FULLNESS', + 'value': 3 + } + ] + }, + 'StartedEventExportOutputTerm': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'The signal is not exported.' + }, + 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + 'value': '' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' + }, + 'name': 'NIRFSG_VAL_PFI0_STR', + 'value': 'PFI0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 1 connector.' + }, + 'name': 'NIRFSG_VAL_PFI1_STR', + 'value': 'PFI1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 4 connector.' + }, + 'name': 'NIRFSG_VAL_PFI4_STR', + 'value': 'PFI4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PFI 5 connector.' + }, + 'name': 'NIRFSG_VAL_PFI5_STR', + 'value': 'PFI5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 0.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG0_STR', + 'value': 'PXI_Trig0' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 1.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG1_STR', + 'value': 'PXI_Trig1' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 2.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG2_STR', + 'value': 'PXI_Trig2' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 3.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG3_STR', + 'value': 'PXI_Trig3' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 4.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG4_STR', + 'value': 'PXI_Trig4' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 5.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG5_STR', + 'value': 'PXI_Trig5' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXI trigger line 6.' + }, + 'name': 'NIRFSG_VAL_PXI_TRIG6_STR', + 'value': 'PXI_Trig6' + }, + { + 'documentation': { + 'description': 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5830/5831/5832/5840/5841/5842/5860.' + }, + 'name': 'NIRFSG_VAL_PXIE_DSTARC_STR', + 'value': 'PXIe_DStarC' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI0 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO0_STR', + 'value': 'DIO/PFI0' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI1 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO1_STR', + 'value': 'DIO/PFI1' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI2 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO2_STR', + 'value': 'DIO/PFI2' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI3 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO3_STR', + 'value': 'DIO/PFI3' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI4 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO4_STR', + 'value': 'DIO/PFI4' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI5 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO5_STR', + 'value': 'DIO/PFI5' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI6 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO6_STR', + 'value': 'DIO/PFI6' + }, + { + 'documentation': { + 'description': 'The trigger is received on PFI7 from the front panel DIO terminal.' + }, + 'name': 'NIRFSG_VAL_DIO7_STR', + 'value': 'DIO/PFI7' + } + ] + }, + 'StatusChecksDisabled': { + 'values': [ + { + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_POWER_PROTECTION', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_DSP', + 'value': 2 + }, + { + 'name': 'NIRFSG_VAL_LO_PLL', + 'value': 4 + }, + { + 'name': 'NIRFSG_VAL_ALL', + 'value': -1 + } + ] + }, + 'StepsToOmit': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_DEEMBEDDING_TABLES', + 'value': 8 + }, + { + 'documentation': { + 'description': 'No step is omitted during reset.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_ROUTES', + 'value': 4 + }, + { + 'documentation': { + 'description': 'Omits clearing scripts.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_SCRIPTS', + 'value': 2 + }, + { + 'documentation': { + 'description': 'Omits clearing waveforms.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_WAVEFORMS', + 'value': 1 + } + ] + }, + 'Sts5532SignalPath': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DIRECT', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_GAIN', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_LOOP', + 'value': 2 + }, + { + 'name': 'NIRFSG_VAL_AUTO', + 'value': -1 + } + ] + }, + 'TimerStartSource': { + 'values': [ + { + 'name': 'NIRFSG_VAL_STARTTRIGGER', + 'value': 'StartTrigger' + }, + { + 'name': 'NIRFSG_VAL_SCRIPTTRIGGER0', + 'value': 'ScriptTrigger0' + } + ] + }, + 'Trigger': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the Script Trigger.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + }, + { + 'documentation': { + 'description': 'Specifies the Start Trigger.' + }, + 'name': 'NIRFSG_VAL_START_TRIGGER', + 'value': 0 + } + ] + }, + 'TriggerIdentifier': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies Script Trigger 0.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER0', + 'value': 'scriptTrigger0' + }, + { + 'documentation': { + 'description': 'Specifies Script Trigger 1.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER1', + 'value': 'scriptTrigger1' + }, + { + 'documentation': { + 'description': 'Specifies Script Trigger 2.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER2', + 'value': 'scriptTrigger2' + }, + { + 'documentation': { + 'description': 'Specifies Script Trigger 3.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER3', + 'value': 'scriptTrigger3' + } + ] + }, + 'UpconverterFrequencyOffsetMode': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the %attribute{signal bandwidth} attribute has been set and can be avoided.' + }, + 'name': 'NIRFSG_VAL_AUTO', + 'value': -1 + }, + { + 'name': 'NIRFSG_VAL_AUTOMATIC', + 'value': -1 + }, + { + 'documentation': { + 'description': 'NI-RFSG places the upconverter center frequency outside of the signal bandwidth if the %attribute{signal bandwidth} attribute has been set and can be avoided. NI-RFSG returns an error if the %attribute{signal bandwidth} attribute has not been set, or if the signal bandwidth is too large.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + }, + { + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + }, + { + 'documentation': { + 'description': 'NI-RFSG uses the offset that you specified with the %attribute{upconverter frequency offset} or %attribute{upconverter center frequency} attributes.' + }, + 'name': 'NIRFSG_VAL_USER_DEFINED', + 'value': 5001 + } + ] + }, + 'UseCalibration': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'VcoSelfCalEnabled': { + 'values': [ + { + 'name': 'NIRFSG_VAL_DISABLED', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_ENABLED', + 'value': 1 + } + ] + }, + 'WaveformSource': { + 'values': [ + { + 'name': 'NIRFSG_VAL_NONE', + 'value': 0 + }, + { + 'name': 'NIRFSG_VAL_WGEN', + 'value': 27000 + }, + { + 'name': 'NIRFSG_VAL_P2P', + 'value': 27001 + }, + { + 'name': 'NIRFSG_VAL_USER', + 'value': 27002 + } + ] + }, + 'WriteWaveformBurstDetection': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Burst detection is disabled.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Burst detection is enabled.' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'WriteWaveformBurstDetectionMode': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'NI-RFSG automatically detects the burst start and burst stop locations by analyzing the waveform.' + }, + 'name': 'NIRFSG_VAL_AUTO', + 'value': -1 + }, + { + 'documentation': { + 'description': 'User sets the burst detection parameters.' + }, + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + } + ] + }, + 'WriteWaveformNormalization': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Disables normalization on the waveform.' + }, + 'name': 'NIRFSG_VAL_DISABLE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Enables normalization on a waveform to transform the waveform data so that its maximum is 1.00 and its minimum is -1.00' + }, + 'name': 'NIRFSG_VAL_ENABLE', + 'value': 1 + } + ] + }, + 'YigMainCoilDrive': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Adjusts the YIG main coil for an underdamped response.' + }, + 'name': 'NIRFSG_VAL_MANUAL', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Adjusts the YIG main coil for an overdamped response.' + }, + 'name': 'NIRFSG_VAL_FAST', + 'value': 1 + } + ] + } +} diff --git a/src/nirfsg/metadata/enums_addon.py b/src/nirfsg/metadata/enums_addon.py new file mode 100644 index 0000000000..2ecd181b7a --- /dev/null +++ b/src/nirfsg/metadata/enums_addon.py @@ -0,0 +1,6 @@ +# These dictionaries are applied to the generated enums dictionary at build time +# Any changes to the API should be made here. enums.py is code generated + +enums_override_metadata = { +} + diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py new file mode 100644 index 0000000000..0febbd926d --- /dev/null +++ b/src/nirfsg/metadata/functions.py @@ -0,0 +1,5547 @@ +# -*- coding: utf-8 -*- +# This file is generated from NI-RFSG API metadata version 25.5.0d9999 +functions = { + 'Abort': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Stops signal generation.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'AllocateArbWaveform': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Allocates onboard memory space for the arbitrary waveform. Use this function to specify the total size of a waveform before writing the data. Use this function only if you are calling the niRFSG_WriteArbWaveform function multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words.' + }, + 'name': 'waveformName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the number of samples to reserve in the onboard memory for the specified waveform. Each I/Q pair is considered one sample.' + }, + 'name': 'sizeInSamples', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ChangeExternalCalibrationPassword': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Changes the external calibration password of the device.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the old (current) external calibration password. This password is case sensitive.' + }, + 'name': 'oldPassword', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the new (desired) external calibration password.' + }, + 'name': 'newPassword', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckAttributeViBoolean': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Checks the validity of a value you specify for a ViBoolean attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + }, + 'name': 'value', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckAttributeViInt32': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Checks the validity of a value you specify for a ViInt32 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + }, + 'grpc_enum': 'NiRFSGInt32AttributeValues', + 'name': 'value', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckAttributeViInt64': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Checks the validity of a value you specify for a ViInt64 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + }, + 'grpc_enum': 'NiRFSGInt64AttributeValues', + 'name': 'value', + 'type': 'ViInt64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckAttributeViReal64': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Checks the validity of a value you specify for a ViReal64 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + }, + 'grpc_enum': 'NiRFSGReal64AttributeValues', + 'name': 'value', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckAttributeViSession': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Checks the validity of a value you specify for a ViSession attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + }, + 'name': 'value', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckAttributeViString': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Checks the validity of a value you specify for a ViString attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value that you want to verify as a valid value for the attribute. The value must be a NULL-terminated string.' + }, + 'grpc_mapped_enum': 'NiRFSGStringAttributeValuesMapped', + 'name': 'value', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckGenerationStatus': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Checks the status of the generation. Call this function to check for any errors that might occur during the signal generation or to check whether the device has finished generating.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns information about the completion of signal generation.' + }, + 'name': 'isDone', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckIfConfigurationListExists': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Returns whether the configuration list that you specify as NIRFSG_ATTR_LIST_NAME exists.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the configuration list. This string is case-insensitive.' + }, + 'name': 'listName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns VI_TRUE if the configuration list exists.' + }, + 'name': 'listExists', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckIfScriptExists': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Returns whether the script that you specify as NIRFSG_ATTR_SCRIPT_NAME exists.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the script. This string is case-insensitive.' + }, + 'name': 'scriptName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns VI_TRUE if the script exists.' + }, + 'name': 'scriptExists', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CheckIfWaveformExists': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Returns whether the waveform that you specify as NIRFSG_ATTR_WAVEFORM_NAME exists.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name used to store the waveform. This string is case-insensitive.' + }, + 'name': 'waveformName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns VI_TRUE if the waveform exists.' + }, + 'name': 'waveformExists', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ClearAllArbWaveforms': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Deletes all currently defined waveforms and scripts. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ClearArbWaveform': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_name_for_documentation': 'delete_waveform', + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Name of the stored waveform to delete.' + }, + 'name': 'name', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ClearError': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Clears the error information associated with the session. If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function clears the error information for the current execution thread.', + 'note': 'The niRFSG_GetError function clears the error information after it is retrieved. A call to the niRFSG_ClearError function is necessary only when you do not use a call to the niRFSG_GetError function to retrieve error information.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ClearSelfCalibrateRange': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Clears the data obtained from the niRFSG_SelfCalibrateRange function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'Commit': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Programs the device with the correct settings. Calling this function moves the NI-RFSG device from the Configuration state to the Committed state. After this function executes, a change to any attribute reverts the NI-RFSG device to the Configuration state.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDeembeddingTableInterpolationLinear': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Selects the linear interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + }, + 'name': 'port', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the table.' + }, + 'name': 'tableName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the format of parameters to interpolate.' + }, + 'enum': 'Format', + 'name': 'format', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDeembeddingTableInterpolationNearest': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Selects the nearest interpolation method. NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + }, + 'name': 'port', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the table.' + }, + 'name': 'tableName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDeembeddingTableInterpolationSpline': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Selects the spline interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + }, + 'name': 'port', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the table.' + }, + 'name': 'tableName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDigitalEdgeConfigurationListStepTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the Configuration List Step trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the trigger source terminal for the digital edge Configuration List Step trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE attribute to this value. Refer to this attribute for possible values.' + }, + 'name': 'source', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the active edge for the digital edge Configuration List Step trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_EDGE attribute to this value.' + }, + 'name': 'edge', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDigitalEdgeScriptTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the specified Script Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the Script Trigger to configure.' + }, + 'name': 'triggerId', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the source terminal for the digital edge Script Trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_SOURCE attribute to this value.' + }, + 'name': 'source', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the active edge for the digital edge Script Trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_EDGE attribute to this value.' + }, + 'name': 'edge', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDigitalEdgeStartTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the Start Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this function.', + 'note': 'For the PXIe-5654/5654 with PXIe-5696, the Start Trigger is valid only with a timer-based list when RF list mode is enabled.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the source terminal for the digital edge trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute to this value.' + }, + 'name': 'source', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the active edge for the Start Trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_EDGE attribute to this value.' + }, + 'name': 'edge', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDigitalLevelScriptTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures a specified Script Trigger for digital level triggering. The NI-RFSG device must be in the Configuration state before calling this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the Script Trigger to configure.' + }, + 'name': 'triggerId', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the trigger source terminal for the digital level Script Trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_SOURCE attribute to this value.' + }, + 'name': 'source', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the active level for the digital level Script Trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_LEVEL_SCRIPT_TRIGGER_ACTIVE_LEVEL attribute to this value.' + }, + 'name': 'level', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureDigitalModulationUserDefinedWaveform': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Specifies the message signal used for digital modulation when the NIRFSG_ATTR_DIGITAL_MODULATION_WAVEFORM_TYPE attribute is set to NIRFSG_VAL_USER_DEFINED.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the number of samples in the message signal.' + }, + 'name': 'numberOfSamples', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the user-defined message signal used for digital modulation.' + }, + 'name': 'userDefinedWaveform', + 'size': { + 'mechanism': 'passed-in', + 'value': 'numberOfSamples' + }, + 'type': 'ViInt8[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureGenerationMode': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the mode used by NI-RFSG for generating an RF output signal.' + }, + 'name': 'generationMode', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureOutputEnabled': { + 'codegen_method': 'public', + 'documentation': { + 'description': ' Enables or disables signal output. Setting NIRFSG_ATTR_OUTPUT_ENABLED to VI_FALSE while in the Generation state attenuates the generated signal so that no signal is output.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies whether you want to enable or disable the output.' + }, + 'name': 'outputEnabled', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureP2PEndpointFullnessStartTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the Start Trigger to detect peer-to-peer endpoint fullness. Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the NIRFSG_ATTR_P2P_ENDPOINT_FULLNESS_LEVEL parameter. The NI-RFSG device must be in the Configuration state before calling this function.', + 'note': 'Due to an additional internal FIFO in the RF signal generator, the writer peer actually writes 2,304 bytes more than the quantity of data specified by this function to satisfy the trigger level.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the quantity of data in the FIFO endpoint that asserts the trigger. Units are samples per channel. The default value is -1, which allows NI-RFSG to select the appropriate fullness value.' + }, + 'name': 'p2pEndpointFullnessLevel', + 'type': 'ViInt64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigurePowerLevelType': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Specifies the way the driver interprets the NIRFSG_ATTR_POWER_LEVEL attribute. In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the way the driver interprets the value of the NIRFSG_ATTR_POWER_LEVEL attribute. NI-RFSG sets the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to this value.' + }, + 'name': 'powerLevelType', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigurePxiChassisClk10': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the source of the Reference Clock signal.' + }, + 'name': 'pxiClk10Source', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureRF': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the frequency and power level of the RF output signal. The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this function. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal.' + }, + 'name': 'frequency', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies either the average power level or peak power level of the generated RF signal, depending on the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute.' + }, + 'name': 'powerLevel', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureRefClock': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the NI-RFSG device Reference Clock. The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the source of Reference Clock signal.' + }, + 'name': 'refClockSource', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is NIRFSG_VAL_AUTO, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the NIRFSG_ATTR_REF_CLOCK_SOURCE parameter is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR or NIRFSG_VAL_REF_IN_2_STR. Refer to the NIRFSG_ATTR_REF_CLOCK_RATE attribute for possible values.' + }, + 'name': 'refClockRate', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureSignalBandwidth': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the signal bandwidth of the arbitrary waveform. The NI-RFSG device must be in the Configuration state before you call this function. Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the signal bandwidth used by NI-RFSG to generate an RF output signal. NI-RFSG sets the NIRFSG_ATTR_SIGNAL_BANDWIDTH attribute to this value.' + }, + 'name': 'signalBandwidth', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureSoftwareScriptTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the Script Trigger for software triggering. Refer to the niRFSG_SendSoftwareEdgeTrigger function for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the Script Trigger to configure.' + }, + 'name': 'triggerId', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ConfigureSoftwareStartTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the Start Trigger for software triggering. Refer to the niRFSG_SendSoftwareEdgeTrigger function for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CreateConfigurationList': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Creates an empty configuration list. Use the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute to enable a configuration list created by this function. Call the niRFSG_CreateConfigurationListStep function to add steps to the configuration list.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words.' + }, + 'name': 'listName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies size of the NIRFSG_ATTR_CONFIGURATION_LIST_ATTRIBUTES parameter.' + }, + 'name': 'numberOfAttributes', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the attributes that you intend to change between configuration list steps. Calling the niRFSG_CreateConfigurationList function allocates space for each of the configuration list attributes. When you use an NI-RFSG Set attribute function to set one of the attributes in the configuration list, that attribute is set for one of the configuration list steps. Use the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attribute to specify which configuration list step to configure.' + }, + 'name': 'configurationListAttributes', + 'size': { + 'mechanism': 'len', + 'value': 'numberOfAttributes' + }, + 'type': 'ViAttr[]', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Sets this list as the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute when this parameter is enabled. NI recommends that you set this parameter to VI_TRUE when creating the list.' + }, + 'name': 'setAsActiveList', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CreateConfigurationListStep': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Creates a new configuration list step in the configuration list specified by the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute. When you create a configuration list step, a new instance of each attribute specified by the configuration list attributes is created. Configuration list attributes are specified when a configuration list is created. The new instance of an attribute can be accessed with any Set attribute function using the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST and NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attributes.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Sets this step as the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attribute list specified by the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute. NI recommends that you set this parameter to VI_TRUE when creating the list steps.' + }, + 'name': 'setAsActiveStep', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'CreateDeembeddingSparameterTableS2PFile': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Creates an S-parameter de-embedding table for the port based on the specified S2P file.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'port', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'tableName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 's2pFilePath', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'yet to be defined' + }, + 'name': 'sparameterOrientation', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'DeleteAllDeembeddingTables': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Deletes all configured de-embedding tables for the session.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'DeleteConfigurationList': { + 'codegen_method': 'public', + 'documentation': { + 'description': "Deletes a previously created configuration list and all the configuration list steps in the specified configuration list. When a configuration list step is deleted, all the instances of the attributes associated with the configuration list step are also removed. When you delete the active configuration list, NI-RFSG automatically resets the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute to '' (empty string), which indicates no list is active, and the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attribute to 0." + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words.' + }, + 'name': 'listName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'DeleteDeembeddingTable': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Deletes the selected de-embedding table for a given port.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + }, + 'name': 'port', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the table.' + }, + 'name': 'tableName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'Disable': { + 'codegen_method': 'public', + 'documentation': { + 'description': ' Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'DisableConfigurationListStepTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Configures the device not to receive triggers for the configuration list. The configuration list does not advance steps if this trigger is disabled. Call this function only if a previously configured trigger needs to be disabled. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'DisableScriptTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': ' Configures the device not to wait for the specified Script Trigger. Call this function only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the Script trigger to configure.' + }, + 'name': 'triggerId', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'DisableStartTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': ' Configures the device not to wait for a Start Trigger. This function is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ErrorMessage': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Converts an error code returned by an NI-RFSG function into a user-readable string.' + }, + 'included_in_proto': True, + 'is_error_handling': True, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'The ViSession handle that you obtain from niRFSG_Init or niRFSG_InitWithOptions. The handle identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the status parameter that is returned from any NI-RFSG function.' + }, + 'name': 'errorCode', + 'type': 'ViStatus', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': ' Returns the user-readable message string that corresponds to the status code you specify.' + }, + 'name': 'errorMessage', + 'size': { + 'mechanism': 'fixed', + 'value': 256 + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': False + }, + 'ErrorQuery': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Reads an error code and an error message from the instrument error queue.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the error code read from the instrument error queue.' + }, + 'name': 'errorCode', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': ' Returns the error message string read from the instrument error message queue.' + }, + 'name': 'errorMessage', + 'size': { + 'mechanism': 'fixed', + 'value': 256 + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ExportSignal': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': ' Specifies the type of signal to route.' + }, + 'name': 'signal', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies which instance of the selected signal to export. This parameter is useful when you set the NIRFSG_ATTR_SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the NIRFSG_ATTR_SIGNAL_IDENTIFIER parameter to '' (empty string)." + }, + 'name': 'signalIdentifier', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841.' + }, + 'name': 'outputTerminal', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAllNamedWaveformNames': { + 'codegen_method': 'private', + 'documentation': { + 'description': ' Return names of the waveforms present in the memory.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Returns a string having waveform names separated by commas.' + }, + 'name': 'waveformNames', + 'size': { + 'mechanism': 'ivi-dance', + 'value': 'bufferSize' + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the number of bytes in the ViChar buffer you specify for the NIRFSG_ATTR_WAVEFORM_NAMES parameter.' + }, + 'name': 'bufferSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Fetch the number of bytes needed to pass in the NIRFSG_ATTR_BUFFER_SIZE parameter.' + }, + 'name': 'actualBufferSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAllScriptNames': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Return names of the scripts present in the memory.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Returns a string having script names separated by commas.' + }, + 'name': 'scriptNames', + 'size': { + 'mechanism': 'ivi-dance', + 'value': 'bufferSize' + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter.' + }, + 'name': 'bufferSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Fetch the number of bytes needed to pass in the NIRFSG_ATTR_BUFFER_SIZE parameter.It can be fetch by passing VI_NULL in the NIRFSG_ATTR_SCRIPT_NAMES parameter.' + }, + 'name': 'actualBufferSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAttributeViBoolean': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Queries the value of a ViBoolean attribute.Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the current value of the attribute. Pass the address of a ViBoolean variable.' + }, + 'name': 'value', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAttributeViInt32': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Queries the value of a ViInt32 attribute. Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the current value of the attribute. Pass the address of a ViInt32 variable.' + }, + 'name': 'value', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAttributeViInt64': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Queries the value of a ViInt64 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the current value of the attribute. Pass the address of a ViInt64 variable.' + }, + 'name': 'value', + 'type': 'ViInt64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAttributeViReal64': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Queries the value of a ViReal64 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the current value of the attribute. Pass the address of a ViReal64 variable.' + }, + 'name': 'value', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAttributeViSession': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Queries the value of a ViSession attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the current value of the attribute. Pass the address of a ViSession variable.' + }, + 'name': 'value', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetAttributeViString': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Queries the value of a ViString attribute.Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter.' + }, + 'name': 'bufSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'The buffer in which the function returns the current value of the attribute. The buffer must be of type ViChar and have at least as many bytes as indicated in the **bufferSize** parameter.' + }, + 'name': 'value', + 'size': { + 'mechanism': 'ivi-dance', + 'value': 'bufSize' + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetChannelName': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the channel string that is in the channel table at an index you specify.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies a one-based index into the channel table.' + }, + 'name': 'index', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the buffer for the channel string.' + }, + 'name': 'bufferSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'yet to be defined.' + }, + 'name': 'name', + 'size': { + 'mechanism': 'ivi-dance', + 'value': 'bufferSize' + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetDeembeddingSparameters': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the S-parameters used for de-embedding a measurement on the selected port. This includes interpolation of the parameters based on the configured carrier frequency. This function returns an empty array if no de-embedding is done.', + 'note': 'The port orientation for the returned S-parameters is normalized to NIRFSG_VAL_PORT1_TOWARDS_DUT.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. NIRFSG_ATTR_VI is obtained from the niRFSG_Init or niRFSG_InitWithOptions function.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns an array of S-parameters. The S-parameters are returned in the following order: s11, s12, s21, s22.' + }, + 'name': 'sparameters', + 'type': 'ni complex number', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the array that is returned by the NIRFSG_ATTR_SPARAMETERS output.' + }, + 'name': 'sparametersArraySize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the number of S-parameters.' + }, + 'name': 'numberOfSparameters', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the number of S-parameter ports. The **sparameter** array is always *n* x *n*, where span *n* is the number of ports.' + }, + 'name': 'numberOfPorts', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetError': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Retrieves and then clears the IVI error information for the session or the current execution thread.', + 'note': 'If the **bufferSize** parameter is 0, this function does not clear the error information. By passing 0 to the **bufferSize** parameter, you can determine the buffer size required to obtain the entire NIRFSG_ATTR_ERROR_DESCRIPTION string. You can then call this function again with a sufficiently large buffer. If you specify a valid IVI session for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the session. If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the current execution thread. If the NIRFSG_ATTR_VI parameter is an invalid session, this function does nothing and returns an error. Normally, the error information describes the first error that occurred since the user last called this function or the niRFSG_ClearError function.' + }, + 'included_in_proto': True, + 'is_error_handling': True, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'none' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the error code for the session or execution thread. If you pass 0 for the **BufferSize** parameter, you can pass VI_NULL for this parameter.' + }, + 'name': 'errorCode', + 'type': 'ViStatus', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'default_value': '256', + 'direction': 'in', + 'documentation': { + 'description': 'Pass the number of bytes in the ViChar array you specify for the **description** parameter.' + }, + 'name': 'errorDescriptionBufferSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the NIRFSG_ATTR_ERROR_DESCRIPTION for the IVI session or execution thread.' + }, + 'name': 'errorDescription', + 'size': { + 'mechanism': 'ivi-dance', + 'value': 'errorDescriptionBufferSize' + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': False + }, + 'GetExternalCalibrationLastDateAndTime': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the year of the last successful calibration.' + }, + 'name': 'year', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the month of the last successful calibration.' + }, + 'name': 'month', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the day of the last successful calibration.' + }, + 'name': 'day', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the hour of the last successful calibration.' + }, + 'name': 'hour', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the minute of the last successful calibration.' + }, + 'name': 'minute', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the second of the last successful calibration.' + }, + 'name': 'second', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetMaxSettablePower': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the maximum settable output power level for the current configuration.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns maximum settable power level in dBm.' + }, + 'name': 'value', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetSelfCalibrationDateAndTime': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration date and time.' + }, + 'name': 'module', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the year of the last successful calibration.' + }, + 'name': 'year', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the month of the last successful calibration.' + }, + 'name': 'month', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the day of the last successful calibration.' + }, + 'name': 'day', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the hour of the last successful calibration.' + }, + 'name': 'hour', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the minute of the last successful calibration.' + }, + 'name': 'minute', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the second of the last successful calibration.' + }, + 'name': 'second', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetSelfCalibrationTemperature': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration temperature.' + }, + 'name': 'module', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration.' + }, + 'name': 'temperature', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetStreamEndpointHandle': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the stream endpoint FIFO to configure.' + }, + 'name': 'streamEndpoint', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the reader endpoint handle that is used with NI-P2P to create a stream with the NI-RFSG device as an endpoint.' + }, + 'name': 'readerHandle', + 'type': 'ViUInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetTerminalName': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the fully-qualified name of the specified signal. The fully-qualified name is helpful to automatically route signals in a multisegment chassis.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the signal to query.' + }, + 'name': 'signal', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies which instance of the selected signal to query. This parameter is necessary when you set the NIRFSG_ATTR_SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT . Otherwise, set the NIRFSG_ATTR_SIGNAL_IDENTIFIER parameter to '' (empty string)." + }, + 'name': 'signalIdentifier', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the number of bytes in the ViChar buffer you specify for the NIRFSG_ATTR_TERMINAL_NAME parameter.' + }, + 'name': 'bufferSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Returns the string to use as the source for other devices.' + }, + 'name': 'terminalName', + 'size': { + 'mechanism': 'ivi-dance', + 'value': 'bufferSize' + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetWaveformBurstStartLocations': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the burst start locations of the waveform stored in the NI-RFSG session.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the waveform name and the marker name. Example: 'waveform::waveform0/marker0'" + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the burst start locations array.' + }, + 'name': 'numberOfLocations', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + }, + 'name': 'locations', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the required size for the output array if you pass NULL to NIRFSG_ATTR_LOCATIONS parameter.' + }, + 'name': 'requiredSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetWaveformBurstStopLocations': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the burst stop locations of the waveform stored in the NI-RFSG session.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the waveform name and the marker name. Example: 'waveform::waveform0/marker0'" + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the burst start locations array.' + }, + 'name': 'numberOfLocations', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + }, + 'name': 'locations', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the required size for the output array if you pass NULL to NIRFSG_ATTR_LOCATIONS parameter.' + }, + 'name': 'requiredSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'GetWaveformMarkerEventLocations': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the locations array.' + }, + 'name': 'numberOfLocations', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the marker locations stored in the NI-RFSG database for the channel you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + }, + 'name': 'locations', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the required size for the output array if you pass NULL to **Locations** parameter.' + }, + 'name': 'requiredSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'InitWithOptions': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Opens a session to the device you specify as the NIRFSG_ATTR_RESOURCE_NAME and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG function calls. This function also configures the device through the NIRFSG_ATTR_OPTION_STRING input.', + 'note': 'For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_name_for_documentation': '__init__', + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'initialization_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the resource name of the device to initialize.' + }, + 'name': 'resourceName', + 'type': 'ViRsrc', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies whether you want NI-RFSG to perform an ID query.' + }, + 'name': 'idQuery', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies whether you want to reset the NI-RFSG device during the initialization procedure.' + }, + 'name': 'resetDevice', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the initial value of certain attributes for the session. The following table lists the attributes and the name you pass in this parameter to identify the attribute.' + }, + 'name': 'optionString', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG function calls.' + }, + 'name': 'newVi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': False + }, + 'Initiate': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this function, they are committed by this function. The operation returns when the RF output signal settles. To return to the Configuration state, call the niRFSG_Abort function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'LoadConfigurationsFromFile': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the absolute path of the file from which the NI-RFSG loads the configurations.' + }, + 'name': 'filePath', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'LockSession': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Obtains a multithread lock on the instrument session. Before doing so, this function waits until all other execution threads have released their locks on the instrument session.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'lock', + 'library_interpreter_filename': 'lock', + 'method_python_name_suffix': '', + 'session_filename': 'lock' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Keeps track of whether you obtain a lock and therefore need to unlock the session. Pass the address of a local ViBoolean variable. In the declaration of the local variable, initialize it to VI_FALSE. Pass the address of the same local variable to any other calls you make to the niRFSG_LockSession function or the niRFSG_UnlockSession function in the same function.' + }, + 'name': 'callerHasLock', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'python_name': 'lock', + 'render_in_session_base': True, + 'returns': 'ViStatus', + 'use_session_lock': False + }, + 'PerformPowerSearch': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Performs a power search if the NIRFSG_ATTR_ALC_CONTROL attribute is disabled. Calling this function disables modulation for a short time while the device levels the output signal.', + 'note': 'Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'PerformThermalCorrection': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'QueryArbWaveformCapabilities': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Queries and returns the waveform capabilities of the NI-RFSG device. These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the value of the NIRFSG_ATTR_ARB_MAX_NUMBER_WAVEFORMS attribute. This value is the maximum number of waveforms you can write.' + }, + 'name': 'maxNumberWaveforms', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the value of the NIRFSG_ATTR_ARB_WAVEFORM_QUANTUM attribute. If the waveform quantum is *q*, then the size of the waveform that you write should be a multiple of *q*. The units are expressed in samples.' + }, + 'name': 'waveformQuantum', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the value of the NIRFSG_ATTR_ARB_WAVEFORM_SIZE_MIN attribute. The number of samples of the waveform that you write must be greater than or equal to this value.' + }, + 'name': 'minWaveformSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the value of the NIRFSG_ATTR_ARB_WAVEFORM_SIZE_MAX attribute. The number of samples of the waveform that you write must be less than or equal to this value.' + }, + 'name': 'maxWaveformSize', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ReadAndDownloadWaveformFromFileTDMS': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name used to store the waveform. This string is case-insensitive.' + }, + 'name': 'waveformName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the absolute path to the TDMS file from which the NI-RFSG reads the waveforms.' + }, + 'name': 'filePath', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the index of the waveform to be read from the TDMS file.' + }, + 'name': 'waveformIndex', + 'type': 'ViUInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'Reset': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Resets all attributes to their default values and moves the NI-RFSG device to the Configuration state. This function aborts the generation, deletes all de-embedding tables, clears all routes, and resets session attributes to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route.', + 'note': 'This function resets all configured routes for the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 in NI-RFSA and NI-RFSG.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ResetAttribute': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Resets the attribute to its default value.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attributeId', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ResetDevice': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Performs a hard reset on the device.', + 'note': 'You must call the niRFSG_ResetDevice function if the NI-RFSG device has shut down because of a high-temperature condition.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ResetWithDefaults': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'ResetWithOptions': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Resets all properties to default values and specifies steps to omit during the reset process, such as signal routes.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies a list of steps to skip during the reset process. The default value is NIRFSG_VAL_RESET_WITH_OPTIONS_NONE, which specifies that no step is omitted during reset.' + }, + 'name': 'stepsToOmit', + 'type': 'ViUInt64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'RevisionQuery': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Returns the revision numbers of the NI-RFSG driver and the instrument firmware.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Returns the value of the NIRFSG_ATTR_SPECIFIC_DRIVER_REVISION attribute in the form of a string.' + }, + 'name': 'instrumentDriverRevision', + 'size': { + 'mechanism': 'fixed', + 'value': 256 + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Returns the value of the NIRFSG_ATTR_INSTRUMENT_FIRMWARE_REVISION attribute in the form of a string.' + }, + 'name': 'firmwareRevision', + 'size': { + 'mechanism': 'fixed', + 'value': 256 + }, + 'type': 'ViChar[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SaveConfigurationsToFile': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Saves the configurations of the session to the specified file.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the absolute path of the file to which the NI-RFSG saves the configurations.' + }, + 'name': 'filePath', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SelectArbWaveform': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Specifies the waveform that is generated upon a call to the niRFSG_Initiate function when the **generationMode** parameter of the niRFSG_ConfigureGenerationMode function is set to NIRFSG_VAL_ARB_WAVEFORM. You must specify a waveform using the NIRFSG_ATTR_NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the stored waveform to generate. This is a case-insensitive alphanumeric string that does not use reserved words. NI-RFSG sets the NIRFSG_ATTR_ARB_SELECTED_WAVEFORM attribute to this value.' + }, + 'name': 'name', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SelfCal': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Performs an internal self-calibration on the device and associated modules that support self-calibration. If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module.', + 'note': 'If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842/5860 while this function runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SelfCalibrateRange': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Self-calibrates all configurations within the specified frequency and peak power level limits.', + 'note': 'If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this function runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted.' + }, + 'name': 'stepsToOmit', + 'type': 'ViInt64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the minimum frequency to calibrate.' + }, + 'name': 'minFrequency', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the maximum frequency to calibrate.' + }, + 'name': 'maxFrequency', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the minimum power level to calibrate.' + }, + 'name': 'minPowerLevel', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the maximum power level to calibrate.' + }, + 'name': 'maxPowerLevel', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SelfTest': { + 'documentation': { + 'description': 'Performs a self-test on the NI-RFSG device and returns the test results. This function performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding.' + }, + 'included_in_proto': True, + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession' + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'This parameter contains the value returned from the NI-RFSG device self test.' + }, + 'name': 'selfTestResult', + 'type': 'ViInt16' + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Returns the self-test response string from the NI-RFSG device. For an explanation of the string contents, refer to the **status** parameter of this function.' + }, + 'name': 'selfTestMessage', + 'size': { + 'mechanism': 'fixed', + 'value': 256 + }, + 'type': 'ViChar[]' + } + ], + 'returns': 'ViStatus' + }, + 'SendSoftwareEdgeTrigger': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the trigger to send.' + }, + 'name': 'trigger', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the Script Trigger to configure. This parameter is valid only when you set the NIRFSG_ATTR_TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the NIRFSG_ATTR_TRIGGER_IDENTIFIER parameter to '' (empty string)." + }, + 'name': 'triggerIdentifier', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'render_in_session_base': True, + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetArbWaveformNextWritePosition': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Configures the start position to use for writing a waveform before calling the niRFSG_WriteArbWaveform function. This function allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the niRFSG_AllocateArbWaveform function or the niRFSG_WriteArbWaveform function. Subsequent writes to that waveform begin where the last write ended, unless this function is called again.', + 'note': 'If you use this function to write the waveform that is currently generating, an undefined output may result.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ ' + }, + 'name': 'waveformName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the reference position in the waveform. The position and NIRFSG_ATTR_OFFSET together determine where to start loading data into the waveform.' + }, + 'name': 'relativeTo', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the offset from the **relative to** parameter at which to start loading the data into the waveform.' + }, + 'name': 'offset', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetAttributeViBoolean': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Sets the value of a ViBoolean attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value to which you want to set the attribute.' + }, + 'name': 'value', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetAttributeViInt32': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Sets the value of a ViInt32 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the value to which you want to set the attribute.' + }, + 'grpc_enum': 'NiRFSGInt32AttributeValues', + 'name': 'value', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetAttributeViInt64': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Sets the value of a ViInt64 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value to which you want to set the attribute.' + }, + 'grpc_enum': 'NiRFSGInt64AttributeValues', + 'name': 'value', + 'type': 'ViInt64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetAttributeViReal64': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Sets the value of a ViReal64 attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value to which you want to set the attribute.' + }, + 'grpc_enum': 'NiRFSGReal64AttributeValues', + 'name': 'value', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetAttributeViSession': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Sets the value of a ViSession attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value to which you want to set the attribute.' + }, + 'name': 'value', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetAttributeViString': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Sets the value of a ViString attribute.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the value to which you want to set the attribute.' + }, + 'grpc_mapped_enum': 'NiRFSGStringAttributeValuesMapped', + 'name': 'value', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetWaveformBurstStartLocations': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Configures the start location of the burst in samples where the burst refers to the active portion of a waveform.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies the waveform name and the marker name. Example: 'waveform::waveform0/marker0'" + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the burst start locations array.' + }, + 'name': 'numberOfLocations', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + }, + 'name': 'locations', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetWaveformBurstStopLocations': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the burst stop locations array.' + }, + 'name': 'numberOfLocations', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Specifies the burst stop locations, in samples, to store in the NI-RFSG session.' + }, + 'name': 'locations', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'SetWaveformMarkerEventLocations': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Configures the marker locations associated with waveform and marker in the NI-RFSG session.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the size of the locations array.' + }, + 'name': 'numberOfLocations', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Specifies the marker location, in samples, to store in the NI-RFSG database.' + }, + 'name': 'locations', + 'type': 'ViReal64', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'UnlockSession': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Releases a lock obtained on an NI-RFSG device session by calling the niRFSG_LockSession function.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'unlock', + 'library_interpreter_filename': 'unlock', + 'method_python_name_suffix': '', + 'session_filename': 'unlock' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Keeps track of whether you obtain a lock and therefore need to unlock the session. Pass the address of a local ViBoolean variable. In the declaration of the local variable, initialize it to VI_FALSE. Pass the address of the same local variable to any other calls you make to the niRFSG_LockSession function or the niRFSG_UnlockSession function in the same function.' + }, + 'name': 'callerHasLock', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'python_name': 'unlock', + 'render_in_session_base': True, + 'returns': 'ViStatus', + 'use_session_lock': False + }, + 'WaitUntilSettled': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Waits until the RF output signal has settled. This function is useful for devices that support changes while in the Generation state. Call this function after making a dynamic change to wait for the output signal to settle.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the maximum time the function waits for the output to settle. If the maximum time is exceeded, this function returns an error. The units are expressed in milliseconds.' + }, + 'name': 'maxTimeMilliseconds', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'WriteArbWaveform': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Writes an arbitrary waveform to the NI-RFSG device. This function configures the I and Q vectors of a complex baseband signal. If the waveform to write is already allocated using the niRFSG_AllocateArbWaveform function, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this function. When streaming is enabled, you can call this function when the PXIe-5672/5673/5673E and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state.', + 'note': 'On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words.' + }, + 'name': 'waveformName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the number of samples in both the NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays. The NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays must have the same length. If the NIRFSG_ATTR_ARB_WAVEFORM_QUANTUM attribute value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0.' + }, + 'name': 'numberOfSamples', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the in-phase (I) component of the complex baseband signal.' + }, + 'name': 'iData', + 'numpy': True, + 'size': { + 'mechanism': 'passed-in', + 'value': 'numberOfSamples' + }, + 'type': 'ViReal64[]', + 'use_array': True, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the quadrature (Q) component of the complex baseband signal.' + }, + 'name': 'qData', + 'numpy': True, + 'size': { + 'mechanism': 'passed-in', + 'value': 'numberOfSamples' + }, + 'type': 'ViReal64[]', + 'use_array': True, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies whether or not the data block contains the end of the waveform. Set this parameter to VI_TRUE to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set NIRFSG_ATTR_MORE_DATA_PENDING to VI_FALSE to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored.' + }, + 'name': 'moreDataPending', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'WriteArbWaveformF32': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Writes an arbitrary waveform to the NI-RFSG device. This function configures the I and Q vectors of a complex single baseband signal. If the waveform to write is already allocated using the niRFSG_AllocateArbWaveform function, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this function. When streaming is enabled, you can call this function when the PXIe-5672/5673/5673E or PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state.', + 'note': 'On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words.' + }, + 'name': 'waveformName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the number of samples in both the NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays. The NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays must have the same length. If the NIRFSG_ATTR_ARB_WAVEFORM_QUANTUM attribute value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0.' + }, + 'name': 'numberOfSamples', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the in-phase (I) component of the complex baseband signal.' + }, + 'name': 'iData', + 'numpy': True, + 'size': { + 'mechanism': 'passed-in', + 'value': 'numberOfSamples' + }, + 'type': 'ViReal32[]', + 'use_array': True, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the quadrature (Q) component of the complex baseband signal.' + }, + 'name': 'qData', + 'numpy': True, + 'size': { + 'mechanism': 'passed-in', + 'value': 'numberOfSamples' + }, + 'type': 'ViReal32[]', + 'use_array': True, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies whether or not the data block contains the end of the waveform. Set this parameter to VI_TRUE to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set NIRFSG_ATTR_MORE_DATA_PENDING to VI_FALSE to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored.' + }, + 'name': 'moreDataPending', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'WriteP2PEndpointI16': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Writes an array of 16-bit integer data to the peer-to-peer endpoint. Use this function to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the stream endpoint FIFO to configure.' + }, + 'name': 'streamEndpoint', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the number of samples to write into the endpoint FIFO.' + }, + 'name': 'numberOfSamples', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the array of data to write into the endpoint FIFO. The binary data is left-justified.' + }, + 'name': 'endpointData', + 'size': { + 'mechanism': 'passed-in', + 'value': 'numberOfSamples' + }, + 'type': 'ViInt16[]', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'WriteScript': { + 'codegen_method': 'public', + 'documentation': { + 'description': 'Writes a script to the device to control waveform generation in Script mode. First, configure your device for Script mode by calling the niRFSG_ConfigureGenerationMode function. The NI-RFSG device must be in the Configuration state before calling the niRFSG_WriteScript function.', + 'note': 'If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported.' + }, + 'included_in_proto': True, + 'is_error_handling': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'default_method', + 'method_python_name_suffix': '', + 'session_filename': 'default_method' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies a string containing a syntactically correct script. NI-RFSG supports multiple scripts that are selected with the NIRFSG_ATTR_SELECTED_SCRIPT attribute. Refer to `Scripting Instructions `_ for more information about using scripts.' + }, + 'name': 'script', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'returns': 'ViStatus', + 'use_session_lock': True + }, + 'close': { + 'codegen_method': 'private', + 'documentation': { + 'description': 'Aborts any signal generation in progress and destroys the instrument driver session.', + 'note': 'After calling this function, you cannot use NI-RFSG again until you call the niRFSG_Init function or the niRFSG_InitWithOptions function.' + }, + 'grpc_name': 'Close', + 'included_in_proto': True, + 'is_error_handling': False, + 'parameters': [ + { + 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + }, + 'name': 'vi', + 'type': 'ViSession', + 'use_array': False, + 'use_in_python_api': True + } + ], + 'python_name': '_close', + 'returns': 'ViStatus', + 'use_session_lock': False + }, + 'fancy_self_test': { + 'codegen_method': 'python-only', + 'documentation': { + 'description': 'TBD' + }, + 'grpc_name': 'FancySelfTest', + 'included_in_proto': False, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'none', + 'method_python_name_suffix': '', + 'session_filename': 'fancy_self_test' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'name': 'vi', + 'type': 'ViSession' + } + ], + 'python_name': 'self_test', + 'returns': 'ViStatus' + } +} diff --git a/src/nirfsg/metadata/functions_addon.py b/src/nirfsg/metadata/functions_addon.py new file mode 100644 index 0000000000..6bdd48e56e --- /dev/null +++ b/src/nirfsg/metadata/functions_addon.py @@ -0,0 +1,9 @@ +# These dictionaries are merged with the extracted function metadata at build time. +# Changes to the metadata should be made here, because functions.py is generated thus any changes get overwritten. + +functions_override_metadata = {} +functions_additional_fetch_array_measurement = { +} + +functions_additional_fetch_array_measurement_stats = { +} diff --git a/src/nirfsg/nirfsg.mak b/src/nirfsg/nirfsg.mak new file mode 100644 index 0000000000..010defb466 --- /dev/null +++ b/src/nirfsg/nirfsg.mak @@ -0,0 +1,15 @@ + + +include $(BUILD_HELPER_DIR)/defines.mak + +MODULE_FILES_TO_GENERATE := $(DEFAULT_PY_FILES_TO_GENERATE) + +MODULE_FILES_TO_COPY := $(DEFAULT_PY_FILES_TO_COPY) + +RST_FILES_TO_GENERATE := $(DEFAULT_RST_FILES_TO_GENERATE) + +SPHINX_CONF_PY := $(DEFAULT_SPHINX_CONF_PY) +READTHEDOCS_CONFIG := $(DEFAULT_READTHEDOCS_CONFIG) + +include $(BUILD_HELPER_DIR)/rules.mak + diff --git a/tox-travis.ini b/tox-travis.ini index 8f781ede15..abfd7da105 100644 --- a/tox-travis.ini +++ b/tox-travis.ini @@ -6,15 +6,10 @@ # tox.ini and tox-travis.ini are copies of the same content with different envlist commented out # tox-travis.ini will have pyXX-clean and all pyXX-installers in the default envlist, while the developer tox.ini # does not have clean and only has one pyXX-installers -# Historically we've used the latest Python for environments that we only list one Python for. For now, we're using Python 3.12 -# to avoid updating our pb2 files, which could possibly cause incompatibilities with other NI Python packages. -# When other NI Python packages bump the version that they use for generating pb2 files, we can bump this Python version to match. -# We may also bump it sooner, if we agree with team members who own other NI Python packages that it's okay to do so. -# At the latest, we'll bump it when we drop support for Python 3.12. # Uncomment this line for tox.ini -# envlist = py312-build_test,py312-codegen,py312-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg +# envlist = py312-build_test,py312-codegen,py312-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg # Uncomment this line for tox-travis.ini -envlist = py312-clean,py312-build_test,py312-codegen,py{39,310,311,312,313}-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg +envlist = py312-clean,py312-build_test,py312-codegen,py{38,39,310,311,312}-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg skip_missing_interpreters=True ignore_basepython_conflict=True skipsdist = true @@ -121,6 +116,7 @@ commands = docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nise ../generated/docs/nise/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./niswitch ../generated/docs/niswitch/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nitclk ../generated/docs/nitclk/html {posargs} + docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nirfsg ../generated/docs/nirfsg/html {posargs} pkg: python --version pkg: python -c "import platform; print(platform.architecture())" pkg: python -m twine --version @@ -132,6 +128,7 @@ commands = pkg: python -m twine check generated/niscope/dist/* pkg: python -m twine check generated/nise/dist/* pkg: python -m twine check generated/niswitch/dist/* + pkg: python -m twine check generated/nirfsg/dist/* # pkg: check-manifest --ignore tox.ini,tests*,.github,.github/*,CONTRIBUTING.rst,docs,docs/* deps = @@ -141,8 +138,8 @@ deps = test: mako test: numpy test: hightime - test: grpcio == 1.67.0 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 - test: protobuf == 5.27.2 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 + test: grpcio == 1.59.0 # Compatible with grpcio-tools 1.59.0 + test: protobuf == 4.21.6 # Compatible with grpcio-tools 1.59.0 build_test: pytest build_test: coverage build_test: mako @@ -150,7 +147,7 @@ deps = build_test: pep8-naming codegen: mako codegen: packaging - codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 + codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 installers: build flake8: hacking flake8: pep8-naming diff --git a/tox.ini b/tox.ini index 0f9ec336f0..a4ab560918 100644 --- a/tox.ini +++ b/tox.ini @@ -6,15 +6,10 @@ # tox.ini and tox-travis.ini are copies of the same content with different envlist commented out # tox-travis.ini will have pyXX-clean and all pyXX-installers in the default envlist, while the developer tox.ini # does not have clean and only has one pyXX-installers -# Historically we've used the latest Python for environments that we only list one Python for. For now, we're using Python 3.12 -# to avoid updating our pb2 files, which could possibly cause incompatibilities with other NI Python packages. -# When other NI Python packages bump the version that they use for generating pb2 files, we can bump this Python version to match. -# We may also bump it sooner, if we agree with team members who own other NI Python packages that it's okay to do so. -# At the latest, we'll bump it when we drop support for Python 3.12. # Uncomment this line for tox.ini -envlist = py312-build_test,py312-codegen,py312-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg +envlist = py312-build_test,py312-codegen,py312-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg # Uncomment this line for tox-travis.ini -# envlist = py312-clean,py312-build_test,py312-codegen,py{39,310,311,312,313}-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg +# envlist = py312-clean,py312-build_test,py312-codegen,py{38,39,310,311,312}-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg skip_missing_interpreters=True ignore_basepython_conflict=True skipsdist = true @@ -121,6 +116,7 @@ commands = docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nise ../generated/docs/nise/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./niswitch ../generated/docs/niswitch/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nitclk ../generated/docs/nitclk/html {posargs} + docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nirfsg ../generated/docs/nirfsg/html {posargs} pkg: python --version pkg: python -c "import platform; print(platform.architecture())" pkg: python -m twine --version @@ -141,8 +137,8 @@ deps = test: mako test: numpy test: hightime - test: grpcio == 1.67.0 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 - test: protobuf == 5.27.2 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 + test: grpcio == 1.59.0 # Compatible with grpcio-tools 1.59.0 + test: protobuf == 4.21.6 # Compatible with grpcio-tools 1.59.0 build_test: pytest build_test: coverage build_test: mako @@ -150,7 +146,7 @@ deps = build_test: pep8-naming codegen: mako codegen: packaging - codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 + codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 installers: build flake8: hacking flake8: pep8-naming From 8c79a45c1ccdd6b6092a80697441c72ce7b669cc Mon Sep 17 00:00:00 2001 From: Vagupta Date: Wed, 2 Apr 2025 07:00:17 +0000 Subject: [PATCH 02/46] Supported ViAttr and ViRsrc --- build/helper/helper.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/helper/helper.py b/build/helper/helper.py index 83c3f005b6..c8bbdf996f 100644 --- a/build/helper/helper.py +++ b/build/helper/helper.py @@ -21,11 +21,11 @@ 'ViReal64': { 'array_type': 'd', 'python_type': 'float', 'numpy_type': 'float64', }, # noqa: E201, E202, E241 'ViStatus': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 'ViSession': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 - 'ViAttr': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 + 'ViAttr': { 'array_type': 'Q', 'python_type': 'int', 'numpy_type': 'uint64', }, # noqa: E201, E202, E241 'ViChar': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 'ViChar[]': { 'array_type': None, 'python_type': 'str', 'numpy_type': None, }, # noqa: E201, E202, E241 'ViBoolean': { 'array_type': None, 'python_type': 'bool', 'numpy_type': None, }, # noqa: E201, E202, E241 - 'ViRsrc': { 'array_type': None, 'python_type': 'str', 'numpy_type': 'bool_', }, # noqa: E201, E202, E241 + 'ViRsrc': { 'array_type': 's', 'python_type': 'str', 'numpy_type': 'bool_', }, # noqa: E201, E202, E241 } From 18af3dc3898c355e6cc45315097e6e0ce9a5595e Mon Sep 17 00:00:00 2001 From: Vagupta Date: Wed, 2 Apr 2025 07:01:00 +0000 Subject: [PATCH 03/46] Added nirfsg to build_release.py --- src/nirfsg/LATEST_RELEASE | 1 + tools/build_release.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 src/nirfsg/LATEST_RELEASE diff --git a/src/nirfsg/LATEST_RELEASE b/src/nirfsg/LATEST_RELEASE new file mode 100644 index 0000000000..0ea3a944b3 --- /dev/null +++ b/src/nirfsg/LATEST_RELEASE @@ -0,0 +1 @@ +0.2.0 diff --git a/tools/build_release.py b/tools/build_release.py index ba2c5d90ab..e5fa58ca05 100644 --- a/tools/build_release.py +++ b/tools/build_release.py @@ -9,7 +9,7 @@ pp = pprint.PrettyPrinter(indent=4, width=100) default_python_cmd = ['python'] -drivers_to_upload = ['nidcpower', 'nidigital', 'nidmm', 'niswitch', 'nimodinst', 'nifgen', 'niscope', 'nise', 'nitclk'] +drivers_to_upload = ['nirfsg', 'nidcpower', 'nidigital', 'nidmm', 'niswitch', 'nimodinst', 'nifgen', 'niscope', 'nise', 'nitclk'] drivers_to_update = ['nifake'] + drivers_to_upload From f9e8bb08c806cc6cef5d62c125a3d2982cdd24b9 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 4 Apr 2025 05:13:18 +0000 Subject: [PATCH 04/46] Final auditing for public APIs --- docs/nirfsg/class.rst | 1410 +++++------------ docs/nirfsg/enums.rst | 2 +- docs/nirfsg/examples.rst | 2 +- generated/nirfsg/nirfsg/_library.py | 153 -- .../nirfsg/nirfsg/_library_interpreter.py | 162 +- generated/nirfsg/nirfsg/enums.py | 2 +- generated/nirfsg/nirfsg/session.py | 725 +-------- .../nirfsg/nirfsg/unit_tests/_mock_helper.py | 202 +-- src/nirfsg/metadata/attributes.py | 432 +---- src/nirfsg/metadata/enums.py | 2 +- src/nirfsg/metadata/functions.py | 1240 ++------------- 11 files changed, 635 insertions(+), 3697 deletions(-) diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index 3d4e7ee3e7..4490adfb5c 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -105,10 +105,12 @@ allocate_arb_waveform .. py:method:: allocate_arb_waveform(waveform_name, size_in_samples) - Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the :py:meth:`nirfsg.Session.write_arb_waveform` method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the :py:meth:`nirfsg.Session.WriteArbWaveform` method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + .. note:: One or more of the referenced methods are not in the Python API for this driver. + :param waveform_name: @@ -428,41 +430,6 @@ check_generation_status -check_if_configuration_list_exists ----------------------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: check_if_configuration_list_exists(list_name) - - Returns whether the configuration list that you specify as :py:attr:`nirfsg.Session.LIST_NAME` exists. - - - - .. note:: One or more of the referenced properties are not in the Python API for this driver. - - - - :param list_name: - - - Specifies the name of the configuration list. This string is case-insensitive. - - - - - :type list_name: str - - :rtype: bool - :return: - - - Returns True if the configuration list exists. - - - - - check_if_script_exists ---------------------- @@ -546,6 +513,29 @@ clear_all_arb_waveforms +clear_arb_waveform +------------------ + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: clear_arb_waveform(name) + + Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + + + + + + :param name: + + + Name of the stored waveform to delete. + + + + + :type name: str + clear_error ----------- @@ -557,7 +547,7 @@ clear_error - .. note:: The :py:meth:`nirfsg.Session._get_error` method clears the error information after it is retrieved. A call to the :py:meth:`nirfsg.Session.clear_error` method is necessary only when you do not use a call to the :py:meth:`nirfsg.Session._get_error` method to retrieve error information. + .. note:: The :py:meth:`nirfsg.Session.get_error` method clears the error information after it is retrieved. A call to the :py:meth:`nirfsg.Session.clear_error` method is necessary only when you do not use a call to the :py:meth:`nirfsg.Session.get_error` method to retrieve error information. .. note:: One or more of the referenced properties are not in the Python API for this driver. @@ -713,38 +703,6 @@ configure_deembedding_table_interpolation_spline :type table_name: str -configure_digital_edge_configuration_list_step_trigger ------------------------------------------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: configure_digital_edge_configuration_list_step_trigger(source, edge) - - Configures the Configuration List Step trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before you call this method. - - - - - - :param source: - - - Specifies the trigger source terminal for the digital edge Configuration List Step trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_configuration_list_step_trigger_source` property to this value. Refer to this property for possible values. - - - - - :type source: str - :param edge: - - - Specifies the active edge for the digital edge Configuration List Step trigger. NI-RFSG sets the :py:attr:`nirfsg.Session.digital_edge_configuration_list_step_trigger_edge` property to this value. - - - - - :type edge: int - configure_digital_edge_script_trigger ------------------------------------- @@ -1139,70 +1097,6 @@ configure_software_start_trigger -create_configuration_list -------------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: create_configuration_list(list_name, configuration_list_attributes, set_as_active_list) - - Creates an empty configuration list. Use the :py:attr:`nirfsg.Session.active_configuration_list` property to enable a configuration list created by this method. Call the :py:meth:`nirfsg.Session.create_configuration_list_step` method to add steps to the configuration list. - - - - - - :param list_name: - - - Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. - - - - - :type list_name: str - :param configuration_list_attributes: - - - Specifies the properties that you intend to change between configuration list steps. Calling the :py:meth:`nirfsg.Session.create_configuration_list` method allocates space for each of the configuration list properties. When you use an NI-RFSG Set property method to set one of the properties in the configuration list, that property is set for one of the configuration list steps. Use the :py:attr:`nirfsg.Session.active_configuration_list_step` property to specify which configuration list step to configure. - - - - - :type configuration_list_attributes: list of int - :param set_as_active_list: - - - Sets this list as the :py:attr:`nirfsg.Session.active_configuration_list` property when this parameter is enabled. NI recommends that you set this parameter to True when creating the list. - - - - - :type set_as_active_list: bool - -create_configuration_list_step ------------------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: create_configuration_list_step(set_as_active_step) - - Creates a new configuration list step in the configuration list specified by the :py:attr:`nirfsg.Session.active_configuration_list` property. When you create a configuration list step, a new instance of each property specified by the configuration list properties is created. Configuration list properties are specified when a configuration list is created. The new instance of a property can be accessed with any Set property method using the :py:attr:`nirfsg.Session.active_configuration_list` and :py:attr:`nirfsg.Session.active_configuration_list_step` properties. - - - - - - :param set_as_active_step: - - - Sets this step as the :py:attr:`nirfsg.Session.active_configuration_list_step` property list specified by the :py:attr:`nirfsg.Session.active_configuration_list` property. NI recommends that you set this parameter to True when creating the list steps. - - - - - :type set_as_active_step: bool - create_deembedding_sparameter_table_s2_p_file --------------------------------------------- @@ -1266,29 +1160,6 @@ delete_all_deembedding_tables -delete_configuration_list -------------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: delete_configuration_list(list_name) - - Deletes a previously created configuration list and all the configuration list steps in the specified configuration list. When a configuration list step is deleted, all the instances of the properties associated with the configuration list step are also removed. When you delete the active configuration list, NI-RFSG automatically resets the :py:attr:`nirfsg.Session.active_configuration_list` property to '' (empty string), which indicates no list is active, and the :py:attr:`nirfsg.Session.active_configuration_list_step` property to 0. - - - - - - :param list_name: - - - Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. - - - - - :type list_name: str - delete_deembedding_table ------------------------ @@ -1334,19 +1205,6 @@ disable -disable_configuration_list_step_trigger ---------------------------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: disable_configuration_list_step_trigger() - - Configures the device not to receive triggers for the configuration list. The configuration list does not advance steps if this trigger is disabled. Call this method only if a previously configured trigger needs to be disabled. The NI-RFSG device must be in the Configuration state before you call this method. - - - - - disable_script_trigger ---------------------- @@ -1383,39 +1241,6 @@ disable_start_trigger -error_query ------------ - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: error_query(error_message) - - Reads an error code and an error message from the instrument error queue. - - - - - - :param error_message: - - - Returns the error message string read from the instrument error message queue. - - - - - :type error_message: str - - :rtype: int - :return: - - - Returns the error code read from the instrument error queue. - - - - - export_signal ------------- @@ -1461,127 +1286,398 @@ export_signal :type output_terminal: str -initiate --------- +get_error +--------- .. py:currentmodule:: nirfsg.Session - .. py:method:: initiate() + .. py:method:: get_error() - Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the :py:meth:`nirfsg.Session.abort` method. + Retrieves and then clears the IVI error information for the session or the current execution thread. - .. note:: This method will return a Python context manager that will initiate on entering and abort on exit. + .. note:: If the **bufferSize** parameter is 0, this method does not clear the error information. By passing 0 to the **bufferSize** parameter, you can determine the buffer size required to obtain the entire :py:attr:`nirfsg.Session.ERROR_DESCRIPTION` string. You can then call this method again with a sufficiently large buffer. If you specify a valid IVI session for the :py:attr:`nirfsg.Session.VI` parameter, this method retrieves and clears the error information for the session. If you pass VI_NULL for the :py:attr:`nirfsg.Session.VI` parameter, this method retrieves and clears the error information for the current execution thread. If the :py:attr:`nirfsg.Session.VI` parameter is an invalid session, this method does nothing and returns an error. Normally, the error information describes the first error that occurred since the user last called this method or the :py:meth:`nirfsg.Session.clear_error` method. + .. note:: One or more of the referenced properties are not in the Python API for this driver. -load_configurations_from_file ------------------------------ - .. py:currentmodule:: nirfsg.Session + :rtype: tuple (error_code, error_description) - .. py:method:: load_configurations_from_file(file_path) + WHERE - Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file. + error_code (int): - + Returns the error code for the session or execution thread. If you pass 0 for the **BufferSize** parameter, you can pass VI_NULL for this parameter. - .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. - Use Python index notation on the repeated capabilities container channels to specify a subset, - and then call this method on the result. + - Example: :py:meth:`my_session.channels[ ... ].load_configurations_from_file` - To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + error_description (str): - Example: :py:meth:`my_session.load_configurations_from_file` + Returns the :py:attr:`nirfsg.Session.ERROR_DESCRIPTION` for the IVI session or execution thread. - :param file_path: + + .. note:: One or more of the referenced properties are not in the Python API for this driver. - Specifies the absolute path of the file from which the NI-RFSG loads the configurations. - +get_external_calibration_last_date_and_time +------------------------------------------- - :type file_path: str + .. py:currentmodule:: nirfsg.Session -lock ----- + .. py:method:: get_external_calibration_last_date_and_time() - .. py:currentmodule:: nirfsg.Session + Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. -.. py:method:: lock() + - Obtains a multithread lock on the device session. Before doing so, the - software waits until all other execution threads release their locks - on the device session. - Other threads may have obtained a lock on this session for the - following reasons: - - The application called the :py:meth:`nirfsg.Session.lock` method. - - A call to NI-RFSG locked the session. - - After a call to the :py:meth:`nirfsg.Session.lock` method returns - successfully, no other threads can access the device session until - you call the :py:meth:`nirfsg.Session.unlock` method or exit out of the with block when using - lock context manager. - - Use the :py:meth:`nirfsg.Session.lock` method and the - :py:meth:`nirfsg.Session.unlock` method around a sequence of calls to - instrument driver methods if you require that the device retain its - settings through the end of the sequence. + :rtype: tuple (year, month, day, hour, minute, second) - You can safely make nested calls to the :py:meth:`nirfsg.Session.lock` method - within the same thread. To completely unlock the session, you must - balance each call to the :py:meth:`nirfsg.Session.lock` method with a call to - the :py:meth:`nirfsg.Session.unlock` method. + WHERE - One method for ensuring there are the same number of unlock method calls as there is lock calls - is to use lock as a context manager + year (int): - .. code:: python - with nirfsg.Session('dev1') as session: - with session.lock(): - # Calls to session within a single lock context + Returns the year of the last successful calibration. - The first `with` block ensures the session is closed regardless of any exceptions raised + - The second `with` block ensures that unlock is called regardless of any exceptions raised - :rtype: context manager - :return: - When used in a `with` statement, :py:meth:`nirfsg.Session.lock` acts as - a context manager and unlock will be called when the `with` block is exited + month (int): -perform_power_search --------------------- - .. py:currentmodule:: nirfsg.Session + Returns the month of the last successful calibration. - .. py:method:: perform_power_search() + - Performs a power search if the :py:attr:`nirfsg.Session.alc_control` property is disabled. Calling this method disables modulation for a short time while the device levels the output signal. - + day (int): - .. note:: Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search. + Returns the day of the last successful calibration. + -perform_thermal_correction --------------------------- - .. py:currentmodule:: nirfsg.Session + hour (int): - .. py:method:: perform_thermal_correction() - Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + Returns the hour of the last successful calibration. - + + + + minute (int): + + + Returns the minute of the last successful calibration. + + + + + second (int): + + + Returns the second of the last successful calibration. + + + + + +get_max_settable_power +---------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: get_max_settable_power() + + Returns the maximum settable output power level for the current configuration. + + + + + + :rtype: float + :return: + + + Returns maximum settable power level in dBm. + + + + + +get_self_calibration_date_and_time +---------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: get_self_calibration_date_and_time(module) + + Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. + + + + + + :param module: + + + Specifies from which stand-alone module to retrieve the last successful self-calibration date and time. + + + + + :type module: int + + :rtype: tuple (year, month, day, hour, minute, second) + + WHERE + + year (int): + + + Returns the year of the last successful calibration. + + + + + month (int): + + + Returns the month of the last successful calibration. + + + + + day (int): + + + Returns the day of the last successful calibration. + + + + + hour (int): + + + Returns the hour of the last successful calibration. + + + + + minute (int): + + + Returns the minute of the last successful calibration. + + + + + second (int): + + + Returns the second of the last successful calibration. + + + + + +get_self_calibration_temperature +-------------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: get_self_calibration_temperature(module) + + Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. + + + + + + :param module: + + + Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. + + + + + :type module: int + + :rtype: float + :return: + + + Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. + + + + + +get_stream_endpoint_handle +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: get_stream_endpoint_handle(stream_endpoint) + + Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint. + + + + + + :param stream_endpoint: + + + Specifies the stream endpoint FIFO to configure. + + + + + :type stream_endpoint: str + + :rtype: int + :return: + + + Returns the reader endpoint handle that is used with NI-P2P to create a stream with the NI-RFSG device as an endpoint. + + + + + +initiate +-------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: initiate() + + Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the :py:meth:`nirfsg.Session.abort` method. + + + + .. note:: This method will return a Python context manager that will initiate on entering and abort on exit. + + + +load_configurations_from_file +----------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: load_configurations_from_file(file_path) + + Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file. + + + + + .. tip:: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. + Use Python index notation on the repeated capabilities container channels to specify a subset, + and then call this method on the result. + + Example: :py:meth:`my_session.channels[ ... ].load_configurations_from_file` + + To call the method on all channels, you can call it directly on the :py:class:`nirfsg.Session`. + + Example: :py:meth:`my_session.load_configurations_from_file` + + + :param file_path: + + + Specifies the absolute path of the file from which the NI-RFSG loads the configurations. + + + + + :type file_path: str + +lock +---- + + .. py:currentmodule:: nirfsg.Session + +.. py:method:: lock() + + Obtains a multithread lock on the device session. Before doing so, the + software waits until all other execution threads release their locks + on the device session. + + Other threads may have obtained a lock on this session for the + following reasons: + + - The application called the :py:meth:`nirfsg.Session.lock` method. + - A call to NI-RFSG locked the session. + - After a call to the :py:meth:`nirfsg.Session.lock` method returns + successfully, no other threads can access the device session until + you call the :py:meth:`nirfsg.Session.unlock` method or exit out of the with block when using + lock context manager. + - Use the :py:meth:`nirfsg.Session.lock` method and the + :py:meth:`nirfsg.Session.unlock` method around a sequence of calls to + instrument driver methods if you require that the device retain its + settings through the end of the sequence. + + You can safely make nested calls to the :py:meth:`nirfsg.Session.lock` method + within the same thread. To completely unlock the session, you must + balance each call to the :py:meth:`nirfsg.Session.lock` method with a call to + the :py:meth:`nirfsg.Session.unlock` method. + + One method for ensuring there are the same number of unlock method calls as there is lock calls + is to use lock as a context manager + + .. code:: python + + with nirfsg.Session('dev1') as session: + with session.lock(): + # Calls to session within a single lock context + + The first `with` block ensures the session is closed regardless of any exceptions raised + + The second `with` block ensures that unlock is called regardless of any exceptions raised + + :rtype: context manager + :return: + When used in a `with` statement, :py:meth:`nirfsg.Session.lock` acts as + a context manager and unlock will be called when the `with` block is exited + +perform_power_search +-------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: perform_power_search() + + Performs a power search if the :py:attr:`nirfsg.Session.alc_control` property is disabled. Calling this method disables modulation for a short time while the device levels the output signal. + + + + .. note:: Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search. + + + +perform_thermal_correction +-------------------------- + + .. py:currentmodule:: nirfsg.Session + + .. py:method:: perform_thermal_correction() + + Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + + @@ -1752,61 +1848,6 @@ reset_with_defaults -reset_with_options ------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: reset_with_options(steps_to_omit) - - Resets all properties to default values and specifies steps to omit during the reset process, such as signal routes. - - - - - - :param steps_to_omit: - - - Specifies a list of steps to skip during the reset process. The default value is :py:data:`~nirfsg.StepsToOmit.NONE`, which specifies that no step is omitted during reset. - - - - - :type steps_to_omit: int - -revision_query --------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: revision_query(instrument_driver_revision, firmware_revision) - - Returns the revision numbers of the NI-RFSG driver and the instrument firmware. - - - - - - :param instrument_driver_revision: - - - Returns the value of the :py:attr:`nirfsg.Session.specific_driver_revision` property in the form of a string. - - - - - :type instrument_driver_revision: str - :param firmware_revision: - - - Returns the value of the :py:attr:`nirfsg.Session.instrument_firmware_revision` property in the form of a string. - - - - - :type firmware_revision: str - save_configurations_to_file --------------------------- @@ -1990,173 +2031,86 @@ send_software_edge_trigger :type trigger_identifier: str -unlock ------- - - .. py:currentmodule:: nirfsg.Session - -.. py:method:: unlock() - - Releases a lock that you acquired on an device session using - :py:meth:`nirfsg.Session.lock`. Refer to :py:meth:`nirfsg.Session.unlock` for additional - information on session locks. - -wait_until_settled ------------------- - - .. py:currentmodule:: nirfsg.Session - - .. py:method:: wait_until_settled(max_time_milliseconds) - - Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. Call this method after making a dynamic change to wait for the output signal to settle. - - - - - - :param max_time_milliseconds: - - - Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. - - - - - :type max_time_milliseconds: int - -write_arb_waveform ------------------- +set_arb_waveform_next_write_position +------------------------------------ .. py:currentmodule:: nirfsg.Session - .. py:method:: write_arb_waveform(waveform_name, number_of_samples, i_data, q_data, more_data_pending) + .. py:method:: set_arb_waveform_next_write_position(waveform_name, relative_to, offset) - Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex baseband signal. If the waveform to write is already allocated using the :py:meth:`nirfsg.Session.allocate_arb_waveform` method, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. + Configures the start position to use for writing a waveform before calling the :py:meth:`nirfsg.Session.WriteArbWaveform` method. This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the :py:meth:`nirfsg.Session.allocate_arb_waveform` method or the :py:meth:`nirfsg.Session.WriteArbWaveform` method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. - .. note:: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. + .. note:: If you use this method to write the waveform that is currently generating, an undefined output may result. - .. note:: One or more of the referenced properties are not in the Python API for this driver. + .. note:: One or more of the referenced methods are not in the Python API for this driver. :param waveform_name: - Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. + Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ :type waveform_name: str - :param number_of_samples: + :param relative_to: - Specifies the number of samples in both the :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays. The :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays must have the same length. If the :py:attr:`nirfsg.Session.arb_waveform_quantum` property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. + Specifies the reference position in the waveform. The position and :py:attr:`nirfsg.Session.OFFSET` together determine where to start loading data into the waveform. .. note:: One or more of the referenced properties are not in the Python API for this driver. - :type number_of_samples: int - :param i_data: + :type relative_to: int + :param offset: - Specifies the in-phase (I) component of the complex baseband signal. + Specifies the offset from the **relative to** parameter at which to start loading the data into the waveform. - :type i_data: array.array("d") - :param q_data: - - - Specifies the quadrature (Q) component of the complex baseband signal. - - - + :type offset: int - :type q_data: array.array("d") - :param more_data_pending: - - - Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set :py:attr:`nirfsg.Session.MORE_DATA_PENDING` to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. - - +unlock +------ - .. note:: One or more of the referenced properties are not in the Python API for this driver. + .. py:currentmodule:: nirfsg.Session +.. py:method:: unlock() - :type more_data_pending: bool + Releases a lock that you acquired on an device session using + :py:meth:`nirfsg.Session.lock`. Refer to :py:meth:`nirfsg.Session.unlock` for additional + information on session locks. -write_arb_waveform_f32 ----------------------- +wait_until_settled +------------------ .. py:currentmodule:: nirfsg.Session - .. py:method:: write_arb_waveform_f32(waveform_name, number_of_samples, i_data, q_data, more_data_pending) + .. py:method:: wait_until_settled(max_time_milliseconds) - Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex single baseband signal. If the waveform to write is already allocated using the :py:meth:`nirfsg.Session.allocate_arb_waveform` method, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E or PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. + Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. Call this method after making a dynamic change to wait for the output signal to settle. - .. note:: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the :py:attr:`nirfsg.Session.MORE_DATA_PENDING` parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. - - .. note:: One or more of the referenced properties are not in the Python API for this driver. - - - - :param waveform_name: - - - Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. - - - - - :type waveform_name: str - :param number_of_samples: - - - Specifies the number of samples in both the :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays. The :py:attr:`nirfsg.Session.I_DATA` and :py:attr:`nirfsg.Session.Q_DATA` arrays must have the same length. If the :py:attr:`nirfsg.Session.arb_waveform_quantum` property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. - - - - .. note:: One or more of the referenced properties are not in the Python API for this driver. - - - :type number_of_samples: int - :param i_data: - - - Specifies the in-phase (I) component of the complex baseband signal. - - - :type i_data: array.array("f") - :param q_data: - - - Specifies the quadrature (Q) component of the complex baseband signal. - - - - - :type q_data: array.array("f") - :param more_data_pending: + :param max_time_milliseconds: - Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set :py:attr:`nirfsg.Session.MORE_DATA_PENDING` to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. + Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. - .. note:: One or more of the referenced properties are not in the Python API for this driver. - - :type more_data_pending: bool + :type max_time_milliseconds: int write_p2_p_endpoint_i16 ----------------------- @@ -2254,102 +2208,18 @@ absolute_delay +-----------------------+-------------------------------------------------------------+ | Characteristic | Value | +=======================+=============================================================+ - | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | - +-----------------------+-------------------------------------------------------------+ - | Permissions | read-write | - +-----------------------+-------------------------------------------------------------+ - | Repeated Capabilities | None | - +-----------------------+-------------------------------------------------------------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Absolute Delay** - - C Attribute: **NIRFSG_ATTR_ABSOLUTE_DELAY** - -active_configuration_list -------------------------- - - .. py:attribute:: active_configuration_list - - Specifies the name of the configuration list to make active. When you get or set a property and it is in the configuration list configuration, the property is set to or read from the active list step of the active configuration list. - - If the :py:attr:`nirfsg.Session.active_configuration_list` property is set to "" (empty string), no list is active. - - **Default Value:** "" - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - - **High-Level Methods**: - - - :py:meth:`nirfsg.Session.create_configuration_list` - - - - .. note:: For the PXIe-5650/5651/5652 and PXIe-5673E, when this property is set to a valid list name, the :py:attr:`nirfsg.Session.frequency_settling_units` property supports only :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` as a valid value. - - The following table lists the characteristics of this property. - - +-----------------------+------------+ - | Characteristic | Value | - +=======================+============+ - | Datatype | str | - +-----------------------+------------+ - | Permissions | read-write | - +-----------------------+------------+ - | Repeated Capabilities | None | - +-----------------------+------------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Configuration List:Active List** - - C Attribute: **NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST** - -active_configuration_list_step ------------------------------- - - .. py:attribute:: active_configuration_list_step - - Specifies the step in the configuration list for `RF list mode `_ that you want to make active for configuration or initiation. - - Activating a list makes all properties in the list reflect the value of the properties that correspond to the set specified by the :py:attr:`nirfsg.Session.active_configuration_list` and the :py:attr:`nirfsg.Session.active_configuration_list_step` properties. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - - **High-Level Methods**: - - - :py:meth:`nirfsg.Session.create_configuration_list_step` - - The following table lists the characteristics of this property. - - +-----------------------+------------+ - | Characteristic | Value | - +=======================+============+ - | Datatype | int | - +-----------------------+------------+ - | Permissions | read-write | - +-----------------------+------------+ - | Repeated Capabilities | None | - +-----------------------+------------+ + | Datatype | hightime.timedelta, datetime.timedelta, or float in seconds | + +-----------------------+-------------------------------------------------------------+ + | Permissions | read-write | + +-----------------------+-------------------------------------------------------------+ + | Repeated Capabilities | None | + +-----------------------+-------------------------------------------------------------+ .. tip:: This property corresponds to the following LabVIEW Property or C Attribute: - - LabVIEW Property: **Configuration List:Active Step** - - C Attribute: **NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP** + - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Signal Path:Absolute Delay** + - C Attribute: **NIRFSG_ATTR_ABSOLUTE_DELAY** ae_temperature -------------- @@ -3699,7 +3569,7 @@ arb_waveform_software_scaling_factor .. py:attribute:: arb_waveform_software_scaling_factor - Specifies how much to scale the data before writing it with the :py:meth:`nirfsg.Session.write_arb_waveform` method. The resulting waveform must be smaller than 1.0 in complex magnitude. This property is supported only if you set the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. + Specifies how much to scale the data before writing it with the :py:meth:`nirfsg.Session.WriteArbWaveform` method. The resulting waveform must be smaller than 1.0 in complex magnitude. This property is supported only if you set the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. **Default Value:** 1.0 @@ -3880,6 +3750,7 @@ automatic_thermal_correction `Temperature Monitoring `_ `Settling Times `_ + **Defined Values**: +-------------------------------------------------------+---------+-------------------------------------------+ @@ -4025,6 +3896,7 @@ cache **Default Value:** True **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: +-------+-------------------+ @@ -4065,6 +3937,7 @@ compensate_for_filter_group_delay **Default Value:** False **Supported Devices:** PXIe-5672 + **Defined Values**: +-------+-----------------------------------------------+ @@ -4093,218 +3966,6 @@ compensate_for_filter_group_delay - LabVIEW Property: **Arb:Advanced:Compensate for Filter Group Delay** - C Attribute: **NIRFSG_ATTR_COMPENSATE_FOR_FILTER_GROUP_DELAY** -configuration_list_is_done --------------------------- - - .. py:attribute:: configuration_list_is_done - - Returns whether the configuration list is still running or done. To read this property, the device must be in the Generation state. - - **Supported Devices:** PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - **Defined Values**: - - +-------+------------------------------------------+ - | Value | Description | - +=======+==========================================+ - | True | The configuration list is done. | - +-------+------------------------------------------+ - | False | The configuration list is still running. | - +-------+------------------------------------------+ - - The following table lists the characteristics of this property. - - +-----------------------+-----------+ - | Characteristic | Value | - +=======================+===========+ - | Datatype | bool | - +-----------------------+-----------+ - | Permissions | read only | - +-----------------------+-----------+ - | Repeated Capabilities | None | - +-----------------------+-----------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Configuration List:Configuration List Is Done** - - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_IS_DONE** - -configuration_list_repeat -------------------------- - - .. py:attribute:: configuration_list_repeat - - Specifies whether the configuration list runs only once or continuously. - - **Default Value:** :py:data:`~nirfsg.ConfigurationListRepeat.CONTINUOUS` - - **Supported Devices:** PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - **Defined Values**: - - +-------------------------------------------------------+-------+---------------------------------------------------+ - | Name | Value | Description | - +=======================================================+=======+===================================================+ - | :py:data:`~nirfsg.ConfigurationListRepeat.CONTINUOUS` | 0 | NI-RFSG runs the configuration list continuously. | - +-------------------------------------------------------+-------+---------------------------------------------------+ - | :py:data:`~nirfsg.ConfigurationListRepeat.SINGLE` | 1 | NI-RFSG runs the configuration list only once. | - +-------------------------------------------------------+-------+---------------------------------------------------+ - - The following table lists the characteristics of this property. - - +-----------------------+-------------------------------+ - | Characteristic | Value | - +=======================+===============================+ - | Datatype | enums.ConfigurationListRepeat | - +-----------------------+-------------------------------+ - | Permissions | read-write | - +-----------------------+-------------------------------+ - | Repeated Capabilities | None | - +-----------------------+-------------------------------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Configuration List:Configuration List Repeat** - - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_REPEAT** - -configuration_list_step_in_progress ------------------------------------ - - .. py:attribute:: configuration_list_step_in_progress - - Returns the configuration list step that is currently programmed to the hardware. The list is zero-indexed. You can query this property only when a list is executed. - - PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E: This property can be read only when a configuration list is running. - - PXIe-5644/5645/5646: This property always returns 0 when the configuration list is not running. - - PXIe-5820/5830/5831/5832/5840/5841/5842: If the configuration list is not running, this property returns the last step of a configuration list that is programmed to the hardware. If the device was last initiated without an active configuration list, this property returns 0. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - - The following table lists the characteristics of this property. - - +-----------------------+-----------+ - | Characteristic | Value | - +=======================+===========+ - | Datatype | int | - +-----------------------+-----------+ - | Permissions | read only | - +-----------------------+-----------+ - | Repeated Capabilities | None | - +-----------------------+-----------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Configuration List:Step In Progress** - - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_STEP_IN_PROGRESS** - -configuration_list_step_trigger_terminal_name ---------------------------------------------- - - .. py:attribute:: configuration_list_step_trigger_terminal_name - - Returns the fully-qualified signal name as a string. - - **Default Values**: - - PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. - - PXIe-5673E: /*AWGName*/ConfigurationListStepTrigger, where *AWGName* is the name of your associated AWG module in MAX. - - PXIe-5820/5830/5831/5832/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. - - **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `Triggers `_ - - `Syntax for Terminal Names `_ - - **High-Level Methods**: - - - :py:meth:`nirfsg.Session._get_terminal_name` - - The following table lists the characteristics of this property. - - +-----------------------+-----------+ - | Characteristic | Value | - +=======================+===========+ - | Datatype | str | - +-----------------------+-----------+ - | Permissions | read only | - +-----------------------+-----------+ - | Repeated Capabilities | None | - +-----------------------+-----------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Triggers:Configuration List Step:Terminal Name** - - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_STEP_TRIGGER_TERMINAL_NAME** - -configuration_list_step_trigger_type ------------------------------------- - - .. py:attribute:: configuration_list_step_trigger_type - - Specifies the type of trigger to use as the Configuration List Step Trigger. To set this property, the NI-RFSG device must be in the Configuration state. - - **Default Value:** :py:data:`~nirfsg.ConfigListTrigType.NONE` - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - **Defined Values**: - - +----------------------------------------------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +====================================================+=========+==================================================================================================================================================================================================================================================+ - | :py:data:`~nirfsg.ConfigListTrigType.DIGITAL_EDGE` | 1 (0x1) | Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the :py:attr:`nirfsg.Session.digital_edge_configuration_list_step_trigger_source` property, and the active edge is always rising. | - +----------------------------------------------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigType.NONE` | 0 (0x0) | Generation starts immediately, but the list does not advance. | - +----------------------------------------------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - - .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - - The following table lists the characteristics of this property. - - +-----------------------+--------------------------+ - | Characteristic | Value | - +=======================+==========================+ - | Datatype | enums.ConfigListTrigType | - +-----------------------+--------------------------+ - | Permissions | read-write | - +-----------------------+--------------------------+ - | Repeated Capabilities | None | - +-----------------------+--------------------------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Triggers:Configuration List Step:Edge** - - C Attribute: **NIRFSG_ATTR_CONFIGURATION_LIST_STEP_TRIGGER_TYPE** - configuration_settled_event_terminal_name ----------------------------------------- @@ -4633,6 +4294,7 @@ deembedding_type **Valid Values for PXIe-5831** :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR`, :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR`, or :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE`. :py:data:`~nirfsg.DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR` is only supported for TRX Ports in a Semiconductor Test System (STS). **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: +--------------------------------------------------------------------+----------------+------------------------------------------------------------------------+ @@ -4775,143 +4437,6 @@ device_temperature - LabVIEW Property: **Device Characteristics:Device Temperature (Degrees C)** - C Attribute: **NIRFSG_ATTR_DEVICE_TEMPERATURE** -digital_edge_configuration_list_step_trigger_edge -------------------------------------------------- - - .. py:attribute:: digital_edge_configuration_list_step_trigger_edge - - Specifies the active edge for the Configuration List Step trigger. This property is valid only when the :py:attr:`nirfsg.Session.configuration_list_step_trigger_type` property is set to digital edge. To set this property, the NI-RFSG device must be in the Configuration state. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - **Defined Values**: - - +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ - | Name | Description | - +===================================================+================================================================================================================================+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeEdge.EDGE` | Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level. | - +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ - - .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - - The following table lists the characteristics of this property. - - +-----------------------+---------------------------------+ - | Characteristic | Value | - +=======================+=================================+ - | Datatype | enums.ConfigListTrigDigEdgeEdge | - +-----------------------+---------------------------------+ - | Permissions | read-write | - +-----------------------+---------------------------------+ - | Repeated Capabilities | None | - +-----------------------+---------------------------------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Triggers:Configuration List Step:Digital Edge:Edge** - - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_EDGE** - -digital_edge_configuration_list_step_trigger_source ---------------------------------------------------- - - .. py:attribute:: digital_edge_configuration_list_step_trigger_source - - Specifies the source terminal for the Configuration List Step Trigger. This property is valid only when the configuration list step type property is set to digital edge. - - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - - `PFI Lines `_ - - `PXI Trigger Lines `_ - - `Marker Events `_ - **Defined Values**: - - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +==============================================================+==============+=====================================================================================================================+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER0_EVENT` | Marker0Event | The trigger is received from the Marker Event 0. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER1_EVENT` | Marker1Event | The trigger is received from the Marker Event 1. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER2_EVENT` | Marker2Event | The trigger is received from the Marker Event 2. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.MARKER3_EVENT` | Marker3Event | The trigger is received from the Marker Event 3. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PFI0` | PFI0 | The trigger is received on PFI 0. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PFI1` | PFI1 | The trigger is received on PFI 1. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_STAR` | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXI_TRIG7` | PXI_Trig7 | The trigger is received on PXI trigger line 7. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.PXIE_DSTARB` | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.TIMER_EVENT` | TimerEvent | The trigger is received from the Timer Event. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.TRIG_IN` | TrigIn | The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigDigEdgeSource.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | - +--------------------------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - - .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - - The following table lists the characteristics of this property. - - +-----------------------+-----------------------------------+ - | Characteristic | Value | - +=======================+===================================+ - | Datatype | enums.ConfigListTrigDigEdgeSource | - +-----------------------+-----------------------------------+ - | Permissions | read-write | - +-----------------------+-----------------------------------+ - | Repeated Capabilities | None | - +-----------------------+-----------------------------------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Triggers:Configuration List Step:Digital Edge:Source** - - C Attribute: **NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE** - digital_edge_script_trigger_edge -------------------------------- @@ -4932,6 +4457,7 @@ digital_edge_script_trigger_edge **High-Level Methods**: - :py:meth:`nirfsg.Session.configure_digital_edge_script_trigger` + **Defined Values**: +--------------------------------------------------+---------+-------------------------------------------------------------------------------+ @@ -4992,6 +4518,7 @@ digital_edge_script_trigger_source **High-Level Methods**: - :py:meth:`nirfsg.Session.configure_digital_edge_script_trigger` + **Defined Values**: +----------------------------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ @@ -5151,6 +4678,7 @@ digital_edge_start_trigger_source **High-Level Methods**: - :py:meth:`nirfsg.Session.configure_digital_edge_start_trigger` + **Defined Values**: +----------------------------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ @@ -5716,7 +5244,7 @@ direct_download .. py:attribute:: direct_download - Specifies whether the :py:meth:`nirfsg.Session.write_arb_waveform` method immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this property when an arbitrary waveform is first allocated. + Specifies whether the :py:meth:`nirfsg.Session.WriteArbWaveform` method immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this property when an arbitrary waveform is first allocated. For the PXI-5670, direct download is always disabled. For all other devices, direct download is always enabled. @@ -5795,7 +5323,7 @@ done_event_terminal_name **High-Level Methods**: - - :py:meth:`nirfsg.Session._get_terminal_name` + - :py:meth:`nirfsg.Session.GetTerminalName` The following table lists the characteristics of this property. @@ -5862,89 +5390,6 @@ events_delay - LabVIEW Property: **Device Specific:Vector Signal Transceiver:Events:Events Delay** - C Attribute: **NIRFSG_ATTR_EVENTS_DELAY** -exported_configuration_list_step_trigger_output_terminal --------------------------------------------------------- - - .. py:attribute:: exported_configuration_list_step_trigger_output_terminal - - Specifies the destination terminal for exporting the Configuration List Step trigger. To set this property, the NI-RFSG device must be in the Configuration state. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - [RF List Mode](RFSG.chm/RF_List_Mode_Overview.html) - - [PFI Lines](RFSG.chm/integration_PFI_Lines.html) - - [PXI Trigger Lines](RFSG.chm/integration_PXI_Trigger.html) - - **Defined Values**: - - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +=================================================================+=============+=================================================================================================================================+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DO_NOT_EXPORT` | | The signal is not exported. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PFI0` | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PFI1` | PFI1 | The signal is exported to the PFI 1 connector. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG0` | PXI_Trig0 | The trigger is received on PXI trigger line 0. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG1` | PXI_Trig1 | The trigger is received on PXI trigger line 1. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG2` | PXI_Trig2 | The trigger is received on PXI trigger line 2. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG3` | PXI_Trig3 | The trigger is received on PXI trigger line 3. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG4` | PXI_Trig4 | The trigger is received on PXI trigger line 4. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG5` | PXI_Trig5 | The trigger is received on PXI trigger line 5. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXI_TRIG6` | PXI_Trig6 | The trigger is received on PXI trigger line 6. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.PXIE_DSTARC` | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.TRIG_OUT` | TrigOut | The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO0` | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO1` | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO2` | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO3` | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO4` | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO5` | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO6` | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ConfigListTrigExportOutputTerm.DIO7` | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | - +-----------------------------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - - .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - - The following table lists the characteristics of this property. - - +-----------------------+--------------------------------------+ - | Characteristic | Value | - +=======================+======================================+ - | Datatype | enums.ConfigListTrigExportOutputTerm | - +-----------------------+--------------------------------------+ - | Permissions | read-write | - +-----------------------+--------------------------------------+ - | Repeated Capabilities | None | - +-----------------------+--------------------------------------+ - - .. tip:: - This property corresponds to the following LabVIEW Property or C Attribute: - - - LabVIEW Property: **Triggers:Configuration List Step:Export Output Terminal** - - C Attribute: **NIRFSG_ATTR_EXPORTED_CONFIGURATION_LIST_STEP_TRIGGER_OUTPUT_TERMINAL** - exported_configuration_settled_event_output_terminal ---------------------------------------------------- @@ -6769,7 +6214,7 @@ fast_tuning_option **Related Topics** - `Frequency Tuning Times `_ + `Frequency Tuning Times for 5654 `_ **Defined Values**: @@ -7033,7 +6478,7 @@ frequency_settling_units Specifies the interpretation of the value passed to the :py:attr:`nirfsg.Session.frequency_settling` property. - PXIe-5650/5651/5652/5653, PXIe-5673E: When the :py:attr:`nirfsg.Session.active_configuration_list` property is set to a valid list name, the :py:attr:`nirfsg.Session.frequency_settling_units` property supports only :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` as a valid value. + PXIe-5650/5651/5652/5653, PXIe-5673E: When the :py:attr:`nirfsg.Session.ACTIVE_CONFIGURATION_LIST` property is set to a valid list name, the :py:attr:`nirfsg.Session.frequency_settling_units` property supports only :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` as a valid value. PXIe-5654/5654 with PXIe-5696: The :py:attr:`nirfsg.Session.frequency_settling_units` property supports only :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO` and :py:data:`~nirfsg.FrequencySettlingUnits.PPM` as valid values. @@ -7059,6 +6504,8 @@ frequency_settling_units .. note:: If you set this property to :py:data:`~nirfsg.FrequencySettlingUnits.TIME_AFTER_IO`, the definition of settled for the Configuration Settled event changes. + .. note:: One or more of the referenced properties are not in the Python API for this driver. + The following table lists the characteristics of this property. +-----------------------+------------------------------+ @@ -7244,7 +6691,7 @@ instrument_firmware_revision **High-Level Methods**: - - :py:meth:`nirfsg.Session.revision_query` + - :py:meth:`nirfsg.Session.RevisionQuery` The following table lists the characteristics of this property. @@ -7949,6 +7396,7 @@ iq_rate `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate an I/Q rate with a waveform. `Digital Upconverter `_ + **Valid Values**: +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -7966,7 +7414,7 @@ iq_rate +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 100 MS/s | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | | *(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | + | | \*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5672 | Up to 100 MS/s. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -8882,7 +8330,7 @@ marker_event_terminal_name **High-Level Methods**: - - :py:meth:`nirfsg.Session._get_terminal_name` + - :py:meth:`nirfsg.Session.GetTerminalName` @@ -9107,7 +8555,9 @@ output_enabled - For the PXIe-5645, this property is ignored if you are using the I/Q ports. - - When the :py:attr:`nirfsg.Session.active_configuration_list` property is set to a valid list name, setting the :py:attr:`nirfsg.Session.output_enabled` property transitions the device to the Configuration state. + - When the :py:attr:`nirfsg.Session.ACTIVE_CONFIGURATION_LIST` property is set to a valid list name, setting the :py:attr:`nirfsg.Session.output_enabled` property transitions the device to the Configuration state. + + .. note:: One or more of the referenced properties are not in the Python API for this driver. The following table lists the characteristics of this property. @@ -10529,7 +9979,7 @@ rf_blanking_source PXIe-5840/5841: RF blanking does not occur for frequencies below 120MHz. - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.reset_with_options` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit**parameter. + For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.ResetWithOptions` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. **Default Value:** "" (empty string) @@ -10649,7 +10099,7 @@ script_trigger_terminal_name **High-Level Methods**: - - :py:meth:`nirfsg.Session._get_terminal_name` + - :py:meth:`nirfsg.Session.GetTerminalName` @@ -11194,7 +10644,7 @@ started_event_terminal_name **High-Level Methods**: - - :py:meth:`nirfsg.Session._get_terminal_name` + - :py:meth:`nirfsg.Session.GetTerminalName` The following table lists the characteristics of this property. @@ -11243,7 +10693,7 @@ start_trigger_terminal_name **High-Level Methods**: - - :py:meth:`nirfsg.Session._get_terminal_name` + - :py:meth:`nirfsg.Session.GetTerminalName` The following table lists the characteristics of this property. @@ -12214,7 +11664,7 @@ waveform_rf_blanking | :py:data:`~nirfsg.NIRFSG_VAL_MARKER0`, :py:data:`~nirfsg.NIRFSG_VAL_MARKER1`, :py:data:`~nirfsg.NIRFSG_VAL_MARKER2`, or :py:data:`~nirfsg.NIRFSG_VAL_MARKER3` | :py:data:`~nirfsg.RFBlanking.ENABLE` | Error is shown. | +---------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------+-----------------------------------------------------------------------------------------------------------+ - .. note:: For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.reset_with_options` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + .. note:: For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.ResetWithOptions` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -12376,7 +11826,7 @@ write_waveform_burst_detection **Default Value:** :py:data:`~nirfsg.WriteWaveformBurstDetection.DISABLE` - **Supported Devices:**PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Defined Values**: @@ -12390,7 +11840,7 @@ write_waveform_burst_detection .. note:: - When you download a waveform using :py:meth:`nirfsg.Session.ReadAndDownloadWaveformFromFileTdms` method and if :py:attr:`nirfsg.Session.waveform_rf_blanking` property is enabled, you must set the :py:attr:`nirfsg.Session.write_waveform_burst_detection` property to :py:data:`~nirfsg.WriteWaveformBurstDetection.DISABLE`. - - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.reset_with_options` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any :py:meth:`nirfsg.Session.reset` or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call :py:meth:`nirfsg.Session.ResetWithOptions` or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. diff --git a/docs/nirfsg/enums.rst b/docs/nirfsg/enums.rst index 511c8d3096..eb9683d430 100644 --- a/docs/nirfsg/enums.rst +++ b/docs/nirfsg/enums.rst @@ -2850,7 +2850,7 @@ ReferenceClockSource - This value is valid on only the PXIe-5831/5832 with PXIe-5653.**PXIe-5831/5832 with PXIe-5653—**NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use %enum_value{reference clock source.pxi clk str} as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. + This value is valid on only the PXIe-5831/5832 with PXIe-5653. **PXIe-5831/5832 with PXIe-5653 —** NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK` %enum_value as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. diff --git a/docs/nirfsg/examples.rst b/docs/nirfsg/examples.rst index 19de74178a..4aec20a517 100644 --- a/docs/nirfsg/examples.rst +++ b/docs/nirfsg/examples.rst @@ -1,5 +1,5 @@ Examples ======== -`You can download all nirfsg examples for latest version here `_ +`You can download all nirfsg examples for latest version here `_ diff --git a/generated/nirfsg/nirfsg/_library.py b/generated/nirfsg/nirfsg/_library.py index 35e331e437..dc194ec708 100644 --- a/generated/nirfsg/nirfsg/_library.py +++ b/generated/nirfsg/nirfsg/_library.py @@ -29,7 +29,6 @@ def __init__(self, ctypes_library): self.niRFSG_CheckAttributeViSession_cfunc = None self.niRFSG_CheckAttributeViString_cfunc = None self.niRFSG_CheckGenerationStatus_cfunc = None - self.niRFSG_CheckIfConfigurationListExists_cfunc = None self.niRFSG_CheckIfScriptExists_cfunc = None self.niRFSG_CheckIfWaveformExists_cfunc = None self.niRFSG_ClearAllArbWaveforms_cfunc = None @@ -40,7 +39,6 @@ def __init__(self, ctypes_library): self.niRFSG_ConfigureDeembeddingTableInterpolationLinear_cfunc = None self.niRFSG_ConfigureDeembeddingTableInterpolationNearest_cfunc = None self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc = None - self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc = None self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc = None self.niRFSG_ConfigureDigitalEdgeStartTrigger_cfunc = None self.niRFSG_ConfigureDigitalLevelScriptTrigger_cfunc = None @@ -55,36 +53,25 @@ def __init__(self, ctypes_library): self.niRFSG_ConfigureSignalBandwidth_cfunc = None self.niRFSG_ConfigureSoftwareScriptTrigger_cfunc = None self.niRFSG_ConfigureSoftwareStartTrigger_cfunc = None - self.niRFSG_CreateConfigurationList_cfunc = None - self.niRFSG_CreateConfigurationListStep_cfunc = None self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc = None self.niRFSG_DeleteAllDeembeddingTables_cfunc = None - self.niRFSG_DeleteConfigurationList_cfunc = None self.niRFSG_DeleteDeembeddingTable_cfunc = None self.niRFSG_Disable_cfunc = None - self.niRFSG_DisableConfigurationListStepTrigger_cfunc = None self.niRFSG_DisableScriptTrigger_cfunc = None self.niRFSG_DisableStartTrigger_cfunc = None - self.niRFSG_ErrorMessage_cfunc = None - self.niRFSG_ErrorQuery_cfunc = None self.niRFSG_ExportSignal_cfunc = None - self.niRFSG_GetAllNamedWaveformNames_cfunc = None - self.niRFSG_GetAllScriptNames_cfunc = None self.niRFSG_GetAttributeViBoolean_cfunc = None self.niRFSG_GetAttributeViInt32_cfunc = None self.niRFSG_GetAttributeViInt64_cfunc = None self.niRFSG_GetAttributeViReal64_cfunc = None self.niRFSG_GetAttributeViSession_cfunc = None self.niRFSG_GetAttributeViString_cfunc = None - self.niRFSG_GetChannelName_cfunc = None - self.niRFSG_GetDeembeddingSparameters_cfunc = None self.niRFSG_GetError_cfunc = None self.niRFSG_GetExternalCalibrationLastDateAndTime_cfunc = None self.niRFSG_GetMaxSettablePower_cfunc = None self.niRFSG_GetSelfCalibrationDateAndTime_cfunc = None self.niRFSG_GetSelfCalibrationTemperature_cfunc = None self.niRFSG_GetStreamEndpointHandle_cfunc = None - self.niRFSG_GetTerminalName_cfunc = None self.niRFSG_GetWaveformBurstStartLocations_cfunc = None self.niRFSG_GetWaveformBurstStopLocations_cfunc = None self.niRFSG_GetWaveformMarkerEventLocations_cfunc = None @@ -100,8 +87,6 @@ def __init__(self, ctypes_library): self.niRFSG_ResetAttribute_cfunc = None self.niRFSG_ResetDevice_cfunc = None self.niRFSG_ResetWithDefaults_cfunc = None - self.niRFSG_ResetWithOptions_cfunc = None - self.niRFSG_RevisionQuery_cfunc = None self.niRFSG_SaveConfigurationsToFile_cfunc = None self.niRFSG_SelectArbWaveform_cfunc = None self.niRFSG_SelfCal_cfunc = None @@ -120,8 +105,6 @@ def __init__(self, ctypes_library): self.niRFSG_SetWaveformMarkerEventLocations_cfunc = None self.niRFSG_UnlockSession_cfunc = None self.niRFSG_WaitUntilSettled_cfunc = None - self.niRFSG_WriteArbWaveform_cfunc = None - self.niRFSG_WriteArbWaveformF32_cfunc = None self.niRFSG_WriteP2PEndpointI16_cfunc = None self.niRFSG_WriteScript_cfunc = None self.niRFSG_close_cfunc = None @@ -213,14 +196,6 @@ def niRFSG_CheckGenerationStatus(self, vi, is_done): # noqa: N802 self.niRFSG_CheckGenerationStatus_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_CheckGenerationStatus_cfunc(vi, is_done) - def niRFSG_CheckIfConfigurationListExists(self, vi, list_name, list_exists): # noqa: N802 - with self._func_lock: - if self.niRFSG_CheckIfConfigurationListExists_cfunc is None: - self.niRFSG_CheckIfConfigurationListExists_cfunc = self._get_library_function('niRFSG_CheckIfConfigurationListExists') - self.niRFSG_CheckIfConfigurationListExists_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViBoolean)] # noqa: F405 - self.niRFSG_CheckIfConfigurationListExists_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_CheckIfConfigurationListExists_cfunc(vi, list_name, list_exists) - def niRFSG_CheckIfScriptExists(self, vi, script_name, script_exists): # noqa: N802 with self._func_lock: if self.niRFSG_CheckIfScriptExists_cfunc is None: @@ -301,14 +276,6 @@ def niRFSG_ConfigureDeembeddingTableInterpolationSpline(self, vi, port, table_na self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_ConfigureDeembeddingTableInterpolationSpline_cfunc(vi, port, table_name) - def niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger(self, vi, source, edge): # noqa: N802 - with self._func_lock: - if self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc is None: - self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc = self._get_library_function('niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger') - self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32] # noqa: F405 - self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger_cfunc(vi, source, edge) - def niRFSG_ConfigureDigitalEdgeScriptTrigger(self, vi, trigger_id, source, edge): # noqa: N802 with self._func_lock: if self.niRFSG_ConfigureDigitalEdgeScriptTrigger_cfunc is None: @@ -421,22 +388,6 @@ def niRFSG_ConfigureSoftwareStartTrigger(self, vi): # noqa: N802 self.niRFSG_ConfigureSoftwareStartTrigger_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_ConfigureSoftwareStartTrigger_cfunc(vi) - def niRFSG_CreateConfigurationList(self, vi, list_name, number_of_attributes, configuration_list_attributes, set_as_active_list): # noqa: N802 - with self._func_lock: - if self.niRFSG_CreateConfigurationList_cfunc is None: - self.niRFSG_CreateConfigurationList_cfunc = self._get_library_function('niRFSG_CreateConfigurationList') - self.niRFSG_CreateConfigurationList_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViAttr), ViBoolean] # noqa: F405 - self.niRFSG_CreateConfigurationList_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_CreateConfigurationList_cfunc(vi, list_name, number_of_attributes, configuration_list_attributes, set_as_active_list) - - def niRFSG_CreateConfigurationListStep(self, vi, set_as_active_step): # noqa: N802 - with self._func_lock: - if self.niRFSG_CreateConfigurationListStep_cfunc is None: - self.niRFSG_CreateConfigurationListStep_cfunc = self._get_library_function('niRFSG_CreateConfigurationListStep') - self.niRFSG_CreateConfigurationListStep_cfunc.argtypes = [ViSession, ViBoolean] # noqa: F405 - self.niRFSG_CreateConfigurationListStep_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_CreateConfigurationListStep_cfunc(vi, set_as_active_step) - def niRFSG_CreateDeembeddingSparameterTableS2PFile(self, vi, port, table_name, s2p_file_path, sparameter_orientation): # noqa: N802 with self._func_lock: if self.niRFSG_CreateDeembeddingSparameterTableS2PFile_cfunc is None: @@ -453,14 +404,6 @@ def niRFSG_DeleteAllDeembeddingTables(self, vi): # noqa: N802 self.niRFSG_DeleteAllDeembeddingTables_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_DeleteAllDeembeddingTables_cfunc(vi) - def niRFSG_DeleteConfigurationList(self, vi, list_name): # noqa: N802 - with self._func_lock: - if self.niRFSG_DeleteConfigurationList_cfunc is None: - self.niRFSG_DeleteConfigurationList_cfunc = self._get_library_function('niRFSG_DeleteConfigurationList') - self.niRFSG_DeleteConfigurationList_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar)] # noqa: F405 - self.niRFSG_DeleteConfigurationList_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_DeleteConfigurationList_cfunc(vi, list_name) - def niRFSG_DeleteDeembeddingTable(self, vi, port, table_name): # noqa: N802 with self._func_lock: if self.niRFSG_DeleteDeembeddingTable_cfunc is None: @@ -477,14 +420,6 @@ def niRFSG_Disable(self, vi): # noqa: N802 self.niRFSG_Disable_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_Disable_cfunc(vi) - def niRFSG_DisableConfigurationListStepTrigger(self, vi): # noqa: N802 - with self._func_lock: - if self.niRFSG_DisableConfigurationListStepTrigger_cfunc is None: - self.niRFSG_DisableConfigurationListStepTrigger_cfunc = self._get_library_function('niRFSG_DisableConfigurationListStepTrigger') - self.niRFSG_DisableConfigurationListStepTrigger_cfunc.argtypes = [ViSession] # noqa: F405 - self.niRFSG_DisableConfigurationListStepTrigger_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_DisableConfigurationListStepTrigger_cfunc(vi) - def niRFSG_DisableScriptTrigger(self, vi, trigger_id): # noqa: N802 with self._func_lock: if self.niRFSG_DisableScriptTrigger_cfunc is None: @@ -501,22 +436,6 @@ def niRFSG_DisableStartTrigger(self, vi): # noqa: N802 self.niRFSG_DisableStartTrigger_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_DisableStartTrigger_cfunc(vi) - def niRFSG_ErrorMessage(self, vi, error_code, error_message): # noqa: N802 - with self._func_lock: - if self.niRFSG_ErrorMessage_cfunc is None: - self.niRFSG_ErrorMessage_cfunc = self._get_library_function('niRFSG_ErrorMessage') - self.niRFSG_ErrorMessage_cfunc.argtypes = [ViSession, ViStatus, ctypes.POINTER(ViChar)] # noqa: F405 - self.niRFSG_ErrorMessage_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_ErrorMessage_cfunc(vi, error_code, error_message) - - def niRFSG_ErrorQuery(self, vi, error_code, error_message): # noqa: N802 - with self._func_lock: - if self.niRFSG_ErrorQuery_cfunc is None: - self.niRFSG_ErrorQuery_cfunc = self._get_library_function('niRFSG_ErrorQuery') - self.niRFSG_ErrorQuery_cfunc.argtypes = [ViSession, ctypes.POINTER(ViInt32), ctypes.POINTER(ViChar)] # noqa: F405 - self.niRFSG_ErrorQuery_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_ErrorQuery_cfunc(vi, error_code, error_message) - def niRFSG_ExportSignal(self, vi, signal, signal_identifier, output_terminal): # noqa: N802 with self._func_lock: if self.niRFSG_ExportSignal_cfunc is None: @@ -525,22 +444,6 @@ def niRFSG_ExportSignal(self, vi, signal, signal_identifier, output_terminal): self.niRFSG_ExportSignal_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_ExportSignal_cfunc(vi, signal, signal_identifier, output_terminal) - def niRFSG_GetAllNamedWaveformNames(self, vi, waveform_names, buffer_size, actual_buffer_size): # noqa: N802 - with self._func_lock: - if self.niRFSG_GetAllNamedWaveformNames_cfunc is None: - self.niRFSG_GetAllNamedWaveformNames_cfunc = self._get_library_function('niRFSG_GetAllNamedWaveformNames') - self.niRFSG_GetAllNamedWaveformNames_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViInt32)] # noqa: F405 - self.niRFSG_GetAllNamedWaveformNames_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_GetAllNamedWaveformNames_cfunc(vi, waveform_names, buffer_size, actual_buffer_size) - - def niRFSG_GetAllScriptNames(self, vi, script_names, buffer_size, actual_buffer_size): # noqa: N802 - with self._func_lock: - if self.niRFSG_GetAllScriptNames_cfunc is None: - self.niRFSG_GetAllScriptNames_cfunc = self._get_library_function('niRFSG_GetAllScriptNames') - self.niRFSG_GetAllScriptNames_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViInt32)] # noqa: F405 - self.niRFSG_GetAllScriptNames_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_GetAllScriptNames_cfunc(vi, script_names, buffer_size, actual_buffer_size) - def niRFSG_GetAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 with self._func_lock: if self.niRFSG_GetAttributeViBoolean_cfunc is None: @@ -589,22 +492,6 @@ def niRFSG_GetAttributeViString(self, vi, channel_name, attribute, buf_size, val self.niRFSG_GetAttributeViString_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_GetAttributeViString_cfunc(vi, channel_name, attribute, buf_size, value) - def niRFSG_GetChannelName(self, vi, index, buffer_size, name): # noqa: N802 - with self._func_lock: - if self.niRFSG_GetChannelName_cfunc is None: - self.niRFSG_GetChannelName_cfunc = self._get_library_function('niRFSG_GetChannelName') - self.niRFSG_GetChannelName_cfunc.argtypes = [ViSession, ViInt32, ViInt32, ctypes.POINTER(ViChar)] # noqa: F405 - self.niRFSG_GetChannelName_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_GetChannelName_cfunc(vi, index, buffer_size, name) - - def niRFSG_GetDeembeddingSparameters(self, vi, sparameters, sparameters_array_size, number_of_sparameters, number_of_ports): # noqa: N802 - with self._func_lock: - if self.niRFSG_GetDeembeddingSparameters_cfunc is None: - self.niRFSG_GetDeembeddingSparameters_cfunc = self._get_library_function('niRFSG_GetDeembeddingSparameters') - self.niRFSG_GetDeembeddingSparameters_cfunc.argtypes = [ViSession, ctypes.POINTER(ni_complex_number), ViInt32, ctypes.POINTER(ViInt32), ctypes.POINTER(ViInt32)] # noqa: F405 - self.niRFSG_GetDeembeddingSparameters_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_GetDeembeddingSparameters_cfunc(vi, sparameters, sparameters_array_size, number_of_sparameters, number_of_ports) - def niRFSG_GetError(self, vi, error_code, error_description_buffer_size, error_description): # noqa: N802 with self._func_lock: if self.niRFSG_GetError_cfunc is None: @@ -653,14 +540,6 @@ def niRFSG_GetStreamEndpointHandle(self, vi, stream_endpoint, reader_handle): # self.niRFSG_GetStreamEndpointHandle_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_GetStreamEndpointHandle_cfunc(vi, stream_endpoint, reader_handle) - def niRFSG_GetTerminalName(self, vi, signal, signal_identifier, buffer_size, terminal_name): # noqa: N802 - with self._func_lock: - if self.niRFSG_GetTerminalName_cfunc is None: - self.niRFSG_GetTerminalName_cfunc = self._get_library_function('niRFSG_GetTerminalName') - self.niRFSG_GetTerminalName_cfunc.argtypes = [ViSession, ViInt32, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViChar)] # noqa: F405 - self.niRFSG_GetTerminalName_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_GetTerminalName_cfunc(vi, signal, signal_identifier, buffer_size, terminal_name) - def niRFSG_GetWaveformBurstStartLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 with self._func_lock: if self.niRFSG_GetWaveformBurstStartLocations_cfunc is None: @@ -781,22 +660,6 @@ def niRFSG_ResetWithDefaults(self, vi): # noqa: N802 self.niRFSG_ResetWithDefaults_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_ResetWithDefaults_cfunc(vi) - def niRFSG_ResetWithOptions(self, vi, steps_to_omit): # noqa: N802 - with self._func_lock: - if self.niRFSG_ResetWithOptions_cfunc is None: - self.niRFSG_ResetWithOptions_cfunc = self._get_library_function('niRFSG_ResetWithOptions') - self.niRFSG_ResetWithOptions_cfunc.argtypes = [ViSession, ViUInt64] # noqa: F405 - self.niRFSG_ResetWithOptions_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_ResetWithOptions_cfunc(vi, steps_to_omit) - - def niRFSG_RevisionQuery(self, vi, instrument_driver_revision, firmware_revision): # noqa: N802 - with self._func_lock: - if self.niRFSG_RevisionQuery_cfunc is None: - self.niRFSG_RevisionQuery_cfunc = self._get_library_function('niRFSG_RevisionQuery') - self.niRFSG_RevisionQuery_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ctypes.POINTER(ViChar)] # noqa: F405 - self.niRFSG_RevisionQuery_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_RevisionQuery_cfunc(vi, instrument_driver_revision, firmware_revision) - def niRFSG_SaveConfigurationsToFile(self, vi, channel_name, file_path): # noqa: N802 with self._func_lock: if self.niRFSG_SaveConfigurationsToFile_cfunc is None: @@ -941,22 +804,6 @@ def niRFSG_WaitUntilSettled(self, vi, max_time_milliseconds): # noqa: N802 self.niRFSG_WaitUntilSettled_cfunc.restype = ViStatus # noqa: F405 return self.niRFSG_WaitUntilSettled_cfunc(vi, max_time_milliseconds) - def niRFSG_WriteArbWaveform(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 - with self._func_lock: - if self.niRFSG_WriteArbWaveform_cfunc is None: - self.niRFSG_WriteArbWaveform_cfunc = self._get_library_function('niRFSG_WriteArbWaveform') - self.niRFSG_WriteArbWaveform_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal64), ctypes.POINTER(ViReal64), ViBoolean] # noqa: F405 - self.niRFSG_WriteArbWaveform_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_WriteArbWaveform_cfunc(vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending) - - def niRFSG_WriteArbWaveformF32(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 - with self._func_lock: - if self.niRFSG_WriteArbWaveformF32_cfunc is None: - self.niRFSG_WriteArbWaveformF32_cfunc = self._get_library_function('niRFSG_WriteArbWaveformF32') - self.niRFSG_WriteArbWaveformF32_cfunc.argtypes = [ViSession, ctypes.POINTER(ViChar), ViInt32, ctypes.POINTER(ViReal32), ctypes.POINTER(ViReal32), ViBoolean] # noqa: F405 - self.niRFSG_WriteArbWaveformF32_cfunc.restype = ViStatus # noqa: F405 - return self.niRFSG_WriteArbWaveformF32_cfunc(vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending) - def niRFSG_WriteP2PEndpointI16(self, vi, stream_endpoint, number_of_samples, endpoint_data): # noqa: N802 with self._func_lock: if self.niRFSG_WriteP2PEndpointI16_cfunc is None: diff --git a/generated/nirfsg/nirfsg/_library_interpreter.py b/generated/nirfsg/nirfsg/_library_interpreter.py index 9f8451fe40..85f6a1f596 100644 --- a/generated/nirfsg/nirfsg/_library_interpreter.py +++ b/generated/nirfsg/nirfsg/_library_interpreter.py @@ -163,14 +163,6 @@ def check_generation_status(self): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return bool(is_done_ctype.value) - def check_if_configuration_list_exists(self, list_name): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - list_name_ctype = ctypes.create_string_buffer(list_name.encode(self._encoding)) # case C020 - list_exists_ctype = _visatype.ViBoolean() # case S220 - error_code = self._library.niRFSG_CheckIfConfigurationListExists(vi_ctype, list_name_ctype, None if list_exists_ctype is None else (ctypes.pointer(list_exists_ctype))) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return bool(list_exists_ctype.value) - def check_if_script_exists(self, script_name): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 script_name_ctype = ctypes.create_string_buffer(script_name.encode(self._encoding)) # case C020 @@ -243,14 +235,6 @@ def configure_deembedding_table_interpolation_spline(self, port, table_name): # errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def configure_digital_edge_configuration_list_step_trigger(self, source, edge): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - source_ctype = ctypes.create_string_buffer(source.encode(self._encoding)) # case C020 - edge_ctype = _visatype.ViInt32(edge) # case S150 - error_code = self._library.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger(vi_ctype, source_ctype, edge_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - def configure_digital_edge_script_trigger(self, trigger_id, source, edge): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 trigger_id_ctype = ctypes.create_string_buffer(trigger_id.encode(self._encoding)) # case C020 @@ -356,23 +340,6 @@ def configure_software_start_trigger(self): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def create_configuration_list(self, list_name, configuration_list_attributes, set_as_active_list): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - list_name_ctype = ctypes.create_string_buffer(list_name.encode(self._encoding)) # case C020 - number_of_attributes_ctype = _visatype.ViInt32(0 if configuration_list_attributes is None else len(configuration_list_attributes)) # case S160 - configuration_list_attributes_ctype = _get_ctypes_pointer_for_buffer(value=configuration_list_attributes, library_type=_visatype.ViAttr) # case B550 - set_as_active_list_ctype = _visatype.ViBoolean(set_as_active_list) # case S150 - error_code = self._library.niRFSG_CreateConfigurationList(vi_ctype, list_name_ctype, number_of_attributes_ctype, configuration_list_attributes_ctype, set_as_active_list_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - - def create_configuration_list_step(self, set_as_active_step): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - set_as_active_step_ctype = _visatype.ViBoolean(set_as_active_step) # case S150 - error_code = self._library.niRFSG_CreateConfigurationListStep(vi_ctype, set_as_active_step_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_file_path, sparameter_orientation): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 @@ -389,13 +356,6 @@ def delete_all_deembedding_tables(self): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def delete_configuration_list(self, list_name): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - list_name_ctype = ctypes.create_string_buffer(list_name.encode(self._encoding)) # case C020 - error_code = self._library.niRFSG_DeleteConfigurationList(vi_ctype, list_name_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - def delete_deembedding_table(self, port, table_name): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 @@ -410,12 +370,6 @@ def disable(self): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def disable_configuration_list_step_trigger(self): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - error_code = self._library.niRFSG_DisableConfigurationListStepTrigger(vi_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - def disable_script_trigger(self, trigger_id): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 trigger_id_ctype = ctypes.create_string_buffer(trigger_id.encode(self._encoding)) # case C020 @@ -429,22 +383,6 @@ def disable_start_trigger(self): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def error_message(self, error_code, error_message): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - error_code_ctype = _visatype.ViStatus(error_code) # case S150 - error_message_ctype = ctypes.create_string_buffer(error_message.encode(self._encoding)) # case C020 - error_code = self._library.niRFSG_ErrorMessage(vi_ctype, error_code_ctype, error_message_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=True) - return - - def error_query(self, error_message): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - error_code_ctype = _visatype.ViInt32() # case S220 - error_message_ctype = ctypes.create_string_buffer(error_message.encode(self._encoding)) # case C020 - error_code = self._library.niRFSG_ErrorQuery(vi_ctype, None if error_code_ctype is None else (ctypes.pointer(error_code_ctype)), error_message_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return int(error_code_ctype.value) - def export_signal(self, signal, signal_identifier, output_terminal): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 signal_ctype = _visatype.ViInt32(signal) # case S150 @@ -454,24 +392,6 @@ def export_signal(self, signal, signal_identifier, output_terminal): # noqa: N8 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def get_all_named_waveform_names(self, buffer_size): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - waveform_names_ctype = ctypes.create_string_buffer(waveform_names.encode(self._encoding)) # case C020 - buffer_size_ctype = _visatype.ViInt32(0 if waveform_names is None else len(waveform_names)) # case S160 - actual_buffer_size_ctype = _visatype.ViInt32() # case S220 - error_code = self._library.niRFSG_GetAllNamedWaveformNames(vi_ctype, waveform_names_ctype, buffer_size_ctype, None if actual_buffer_size_ctype is None else (ctypes.pointer(actual_buffer_size_ctype))) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return int(actual_buffer_size_ctype.value) - - def get_all_script_names(self, buffer_size): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - script_names_ctype = ctypes.create_string_buffer(script_names.encode(self._encoding)) # case C020 - buffer_size_ctype = _visatype.ViInt32(0 if script_names is None else len(script_names)) # case S160 - actual_buffer_size_ctype = _visatype.ViInt32() # case S220 - error_code = self._library.niRFSG_GetAllScriptNames(vi_ctype, script_names_ctype, buffer_size_ctype, None if actual_buffer_size_ctype is None else (ctypes.pointer(actual_buffer_size_ctype))) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return int(actual_buffer_size_ctype.value) - def get_attribute_vi_boolean(self, channel_name, attribute): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 @@ -517,34 +437,19 @@ def get_attribute_vi_session(self, channel_name, attribute): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return int(value_ctype.value) - def get_attribute_vi_string(self, channel_name, attribute, buf_size): # noqa: N802 + def get_attribute_vi_string(self, channel_name, attribute): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 attribute_ctype = _visatype.ViAttr(attribute) # case S150 - buf_size_ctype = _visatype.ViInt32(0 if value is None else len(value)) # case S160 - value_ctype = ctypes.create_string_buffer(value.encode(self._encoding)) # case C020 + buf_size_ctype = _visatype.ViInt32() # case S170 + value_ctype = None # case C050 + error_code = self._library.niRFSG_GetAttributeViString(vi_ctype, channel_name_ctype, attribute_ctype, buf_size_ctype, value_ctype) + errors.handle_error(self, error_code, ignore_warnings=True, is_error_handling=False) + buf_size_ctype = _visatype.ViInt32(error_code) # case S180 + value_ctype = (_visatype.ViChar * buf_size_ctype.value)() # case C060 error_code = self._library.niRFSG_GetAttributeViString(vi_ctype, channel_name_ctype, attribute_ctype, buf_size_ctype, value_ctype) errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - - def get_channel_name(self, index, buffer_size): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - index_ctype = _visatype.ViInt32(index) # case S150 - buffer_size_ctype = _visatype.ViInt32(0 if name is None else len(name)) # case S160 - name_ctype = ctypes.create_string_buffer(name.encode(self._encoding)) # case C020 - error_code = self._library.niRFSG_GetChannelName(vi_ctype, index_ctype, buffer_size_ctype, name_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - - def get_deembedding_sparameters(self, sparameters_array_size): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - sparameters_ctype = _visatype.ni_complex_number() # case S220 - sparameters_array_size_ctype = _visatype.ViInt32(sparameters_array_size) # case S150 - number_of_sparameters_ctype = _visatype.ViInt32() # case S220 - number_of_ports_ctype = _visatype.ViInt32() # case S220 - error_code = self._library.niRFSG_GetDeembeddingSparameters(vi_ctype, None if sparameters_ctype is None else (ctypes.pointer(sparameters_ctype)), sparameters_array_size_ctype, None if number_of_sparameters_ctype is None else (ctypes.pointer(number_of_sparameters_ctype)), None if number_of_ports_ctype is None else (ctypes.pointer(number_of_ports_ctype))) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return ni_complex_number(sparameters_ctype.value), int(number_of_sparameters_ctype.value), int(number_of_ports_ctype.value) + return value_ctype.value.decode(self._encoding) def get_error(self): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 @@ -607,16 +512,6 @@ def get_stream_endpoint_handle(self, stream_endpoint): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return int(reader_handle_ctype.value) - def get_terminal_name(self, signal, signal_identifier, buffer_size): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - signal_ctype = _visatype.ViInt32(signal) # case S150 - signal_identifier_ctype = ctypes.create_string_buffer(signal_identifier.encode(self._encoding)) # case C020 - buffer_size_ctype = _visatype.ViInt32(0 if terminal_name is None else len(terminal_name)) # case S160 - terminal_name_ctype = ctypes.create_string_buffer(terminal_name.encode(self._encoding)) # case C020 - error_code = self._library.niRFSG_GetTerminalName(vi_ctype, signal_ctype, signal_identifier_ctype, buffer_size_ctype, terminal_name_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - def get_waveform_burst_start_locations(self, channel_name, number_of_locations): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 @@ -734,21 +629,6 @@ def reset_with_defaults(self): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def reset_with_options(self, steps_to_omit): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - steps_to_omit_ctype = _visatype.ViUInt64(steps_to_omit) # case S150 - error_code = self._library.niRFSG_ResetWithOptions(vi_ctype, steps_to_omit_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - - def revision_query(self, instrument_driver_revision, firmware_revision): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - instrument_driver_revision_ctype = ctypes.create_string_buffer(instrument_driver_revision.encode(self._encoding)) # case C020 - firmware_revision_ctype = ctypes.create_string_buffer(firmware_revision.encode(self._encoding)) # case C020 - error_code = self._library.niRFSG_RevisionQuery(vi_ctype, instrument_driver_revision_ctype, firmware_revision_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - def save_configurations_to_file(self, channel_name, file_path): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 channel_name_ctype = ctypes.create_string_buffer(channel_name.encode(self._encoding)) # case C010 @@ -900,32 +780,6 @@ def wait_until_settled(self, max_time_milliseconds): # noqa: N802 errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return - def write_arb_waveform(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 - number_of_samples_ctype = _visatype.ViInt32(0 if i_data is None else len(i_data)) # case S160 - i_data_array = _convert_to_array(value=i_data, array_type="d") # case B550 - i_data_ctype = _get_ctypes_pointer_for_buffer(value=i_data_array, library_type=_visatype.ViReal64) # case B550 - q_data_array = _convert_to_array(value=q_data, array_type="d") # case B550 - q_data_ctype = _get_ctypes_pointer_for_buffer(value=q_data_array, library_type=_visatype.ViReal64) # case B550 - more_data_pending_ctype = _visatype.ViBoolean(more_data_pending) # case S150 - error_code = self._library.niRFSG_WriteArbWaveform(vi_ctype, waveform_name_ctype, number_of_samples_ctype, i_data_ctype, q_data_ctype, more_data_pending_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - - def write_arb_waveform_f32(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 - vi_ctype = _visatype.ViSession(self._vi) # case S110 - waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 - number_of_samples_ctype = _visatype.ViInt32(0 if i_data is None else len(i_data)) # case S160 - i_data_array = _convert_to_array(value=i_data, array_type="f") # case B550 - i_data_ctype = _get_ctypes_pointer_for_buffer(value=i_data_array, library_type=_visatype.ViReal32) # case B550 - q_data_array = _convert_to_array(value=q_data, array_type="f") # case B550 - q_data_ctype = _get_ctypes_pointer_for_buffer(value=q_data_array, library_type=_visatype.ViReal32) # case B550 - more_data_pending_ctype = _visatype.ViBoolean(more_data_pending) # case S150 - error_code = self._library.niRFSG_WriteArbWaveformF32(vi_ctype, waveform_name_ctype, number_of_samples_ctype, i_data_ctype, q_data_ctype, more_data_pending_ctype) - errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) - return - def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_data): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 stream_endpoint_ctype = ctypes.create_string_buffer(stream_endpoint.encode(self._encoding)) # case C020 diff --git a/generated/nirfsg/nirfsg/enums.py b/generated/nirfsg/nirfsg/enums.py index 2dfc1c0c60..aba281e1f2 100644 --- a/generated/nirfsg/nirfsg/enums.py +++ b/generated/nirfsg/nirfsg/enums.py @@ -1191,7 +1191,7 @@ class ReferenceClockSource(Enum): ''' PXI_CLK_MASTER = 'PXI_ClkMaster' r''' - This value is valid on only the PXIe-5831/5832 with PXIe-5653.**PXIe-5831/5832 with PXIe-5653—**NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use %enum_value{reference clock source.pxi clk str} as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. + This value is valid on only the PXIe-5831/5832 with PXIe-5653. **PXIe-5831/5832 with PXIe-5653 —** NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use ReferenceClockSource.PXI_CLK %enum_value as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. ''' diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index b0798b4fe7..94b34490db 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -112,48 +112,6 @@ class _SessionBase(object): - If this property is set, NI-TClk cannot perform any sub-Sample Clock adjustment. ''' - active_configuration_list = _attributes.AttributeViString(1150096) - '''Type: str - - Specifies the name of the configuration list to make active. When you get or set a property and it is in the configuration list configuration, the property is set to or read from the active list step of the active configuration list. - - If the active_configuration_list property is set to "" (empty string), no list is active. - - **Default Value:** "" - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - - **High-Level Methods**: - - - create_configuration_list - - Note: For the PXIe-5650/5651/5652 and PXIe-5673E, when this property is set to a valid list name, the frequency_settling_units property supports only FrequencySettlingUnits.TIME_AFTER_IO as a valid value. - ''' - active_configuration_list_step = _attributes.AttributeViInt64(1150097) - '''Type: int - - Specifies the step in the configuration list for `RF list mode `_ that you want to make active for configuration or initiation. - - Activating a list makes all properties in the list reflect the value of the properties that correspond to the set specified by the active_configuration_list and the active_configuration_list_step properties. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - - **High-Level Methods**: - - - create_configuration_list_step - ''' ae_temperature = _attributes.AttributeViReal64(1150182) '''Type: float @@ -803,7 +761,7 @@ class _SessionBase(object): arb_waveform_software_scaling_factor = _attributes.AttributeViReal64(1150052) '''Type: float - Specifies how much to scale the data before writing it with the write_arb_waveform method. The resulting waveform must be smaller than 1.0 in complex magnitude. This property is supported only if you set the power_level_type property to PowerLevelType.PEAK. + Specifies how much to scale the data before writing it with the WriteArbWaveform method. The resulting waveform must be smaller than 1.0 in complex magnitude. This property is supported only if you set the power_level_type property to PowerLevelType.PEAK. **Default Value:** 1.0 @@ -902,6 +860,7 @@ class _SessionBase(object): `Temperature Monitoring `_ `Settling Times `_ + **Defined Values**: +------------------------------------+---------+-------------------------------------------+ @@ -969,6 +928,7 @@ class _SessionBase(object): **Default Value:** True **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: +-------+-------------------+ @@ -989,6 +949,7 @@ class _SessionBase(object): **Default Value:** False **Supported Devices:** PXIe-5672 + **Defined Values**: +-------+-----------------------------------------------+ @@ -999,119 +960,6 @@ class _SessionBase(object): | False | Disables compensation for filter group delay. | +-------+-----------------------------------------------+ ''' - configuration_list_is_done = _attributes.AttributeViBoolean(1150175) - '''Type: bool - - Returns whether the configuration list is still running or done. To read this property, the device must be in the Generation state. - - **Supported Devices:** PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - **Defined Values**: - - +-------+------------------------------------------+ - | Value | Description | - +=======+==========================================+ - | True | The configuration list is done. | - +-------+------------------------------------------+ - | False | The configuration list is still running. | - +-------+------------------------------------------+ - ''' - configuration_list_repeat = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ConfigurationListRepeat, 1150102) - '''Type: enums.ConfigurationListRepeat - - Specifies whether the configuration list runs only once or continuously. - - **Default Value:** ConfigurationListRepeat.CONTINUOUS - - **Supported Devices:** PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E - - **Related Topics** - - `RF List Mode `_ - - `Using RF List Mode `_ - **Defined Values**: - - +------------------------------------+-------+---------------------------------------------------+ - | Name | Value | Description | - +====================================+=======+===================================================+ - | ConfigurationListRepeat.CONTINUOUS | 0 | NI-RFSG runs the configuration list continuously. | - +------------------------------------+-------+---------------------------------------------------+ - | ConfigurationListRepeat.SINGLE | 1 | NI-RFSG runs the configuration list only once. | - +------------------------------------+-------+---------------------------------------------------+ - ''' - configuration_list_step_in_progress = _attributes.AttributeViInt64(1150122) - '''Type: int - - Returns the configuration list step that is currently programmed to the hardware. The list is zero-indexed. You can query this property only when a list is executed. - - PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E: This property can be read only when a configuration list is running. - - PXIe-5644/5645/5646: This property always returns 0 when the configuration list is not running. - - PXIe-5820/5830/5831/5832/5840/5841/5842: If the configuration list is not running, this property returns the last step of a configuration list that is programmed to the hardware. If the device was last initiated without an active configuration list, this property returns 0. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - ''' - configuration_list_step_trigger_terminal_name = _attributes.AttributeViString(1150117) - '''Type: str - - Returns the fully-qualified signal name as a string. - - **Default Values**: - - PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. - - PXIe-5673E: /*AWGName*/ConfigurationListStepTrigger, where *AWGName* is the name of your associated AWG module in MAX. - - PXIe-5820/5830/5831/5832/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX. - - **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `Triggers `_ - - `Syntax for Terminal Names `_ - - **High-Level Methods**: - - - _get_terminal_name - ''' - configuration_list_step_trigger_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ConfigListTrigType, 1150098) - '''Type: enums.ConfigListTrigType - - Specifies the type of trigger to use as the Configuration List Step Trigger. To set this property, the NI-RFSG device must be in the Configuration state. - - **Default Value:** ConfigListTrigType.NONE - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - **Defined Values**: - - +---------------------------------+---------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +=================================+=========+========================================================================================================================================================================================================================+ - | ConfigListTrigType.DIGITAL_EDGE | 1 (0x1) | Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the digital_edge_configuration_list_step_trigger_source property, and the active edge is always rising. | - +---------------------------------+---------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigType.NONE | 0 (0x0) | Generation starts immediately, but the list does not advance. | - +---------------------------------+---------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - - Note: - One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - ''' configuration_settled_event_terminal_name = _attributes.AttributeViString(1150194) '''Type: str @@ -1270,6 +1118,7 @@ class _SessionBase(object): **Valid Values for PXIe-5831** DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_SCALAR, DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR, or DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_NONE. DeembeddingTypeAttrVals.DEEMBEDDING_TYPE_VECTOR is only supported for TRX Ports in a Semiconductor Test System (STS). **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Defined Values**: +-------------------------------------------------+----------------+------------------------------------------------------------------------+ @@ -1354,105 +1203,6 @@ class _SessionBase(object): | Second connected mmRH-5582 | SWITCHED TRX PORTS [0-7] | rf1switch1 | +----------------------------+--------------------------+-------------------------+ ''' - digital_edge_configuration_list_step_trigger_edge = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ConfigListTrigDigEdgeEdge, 1150103) - '''Type: enums.ConfigListTrigDigEdgeEdge - - Specifies the active edge for the Configuration List Step trigger. This property is valid only when the configuration_list_step_trigger_type property is set to digital edge. To set this property, the NI-RFSG device must be in the Configuration state. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - **Defined Values**: - - +--------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ - | Name | Description | - +================================+================================================================================================================================+ - | ConfigListTrigDigEdgeEdge.EDGE | Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level. | - +--------------------------------+--------------------------------------------------------------------------------------------------------------------------------+ - - Note: - One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - ''' - digital_edge_configuration_list_step_trigger_source = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ConfigListTrigDigEdgeSource, 1150099) - '''Type: enums.ConfigListTrigDigEdgeSource - - Specifies the source terminal for the Configuration List Step Trigger. This property is valid only when the configuration list step type property is set to digital edge. - - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - `RF List Mode `_ - - `PFI Lines `_ - - `PXI Trigger Lines `_ - - `Marker Events `_ - **Defined Values**: - - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +===========================================+==============+=====================================================================================================================+ - | ConfigListTrigDigEdgeSource.MARKER0_EVENT | Marker0Event | The trigger is received from the Marker Event 0. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.MARKER1_EVENT | Marker1Event | The trigger is received from the Marker Event 1. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.MARKER2_EVENT | Marker2Event | The trigger is received from the Marker Event 2. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.MARKER3_EVENT | Marker3Event | The trigger is received from the Marker Event 3. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PFI0 | PFI0 | The trigger is received on PFI 0. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PFI1 | PFI1 | The trigger is received on PFI 1. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_STAR | PXI_Star | The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXI_TRIG7 | PXI_Trig7 | The trigger is received on PXI trigger line 7. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.PXIE_DSTARB | PXIe_DStarB | The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.TIMER_EVENT | TimerEvent | The trigger is received from the Timer Event. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.TRIG_IN | TrigIn | The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigDigEdgeSource.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | - +-------------------------------------------+--------------+---------------------------------------------------------------------------------------------------------------------+ - - Note: - One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - ''' digital_edge_script_trigger_edge = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.ScriptTrigDigEdgeEdge, 1150021) '''Type: enums.ScriptTrigDigEdgeEdge @@ -1471,6 +1221,7 @@ class _SessionBase(object): **High-Level Methods**: - configure_digital_edge_script_trigger + **Defined Values**: +-------------------------------+---------+-------------------------------------------------------------------------------+ @@ -1512,6 +1263,7 @@ class _SessionBase(object): **High-Level Methods**: - configure_digital_edge_script_trigger + **Defined Values**: +---------------------------------------------+-------------+-----------------------------------------------------------------------------------------------------------------------------------------+ @@ -1633,6 +1385,7 @@ class _SessionBase(object): **High-Level Methods**: - configure_digital_edge_start_trigger + **Defined Values**: +---------------------------------------------+-------------+----------------------------------------------------------------------------------------------------------------------------------------+ @@ -1983,7 +1736,7 @@ class _SessionBase(object): direct_download = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.DirectDownload, 1150042) '''Type: enums.DirectDownload - Specifies whether the write_arb_waveform method immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this property when an arbitrary waveform is first allocated. + Specifies whether the WriteArbWaveform method immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this property when an arbitrary waveform is first allocated. For the PXI-5670, direct download is always disabled. For all other devices, direct download is always enabled. @@ -2043,7 +1796,7 @@ class _SessionBase(object): **High-Level Methods**: - - _get_terminal_name + - GetTerminalName ''' events_delay = _attributes.AttributeViReal64TimeDeltaSeconds(1150154) '''Type: hightime.timedelta, datetime.timedelta, or float in seconds @@ -2070,70 +1823,6 @@ class _SessionBase(object): Note: If you decrease the event delay during generation, some markers may be dropped. ''' - exported_configuration_list_step_trigger_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ConfigListTrigExportOutputTerm, 1150105) - '''Type: enums.ConfigListTrigExportOutputTerm - - Specifies the destination terminal for exporting the Configuration List Step trigger. To set this property, the NI-RFSG device must be in the Configuration state. - - **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 - - **Related Topics** - - [RF List Mode](RFSG.chm/RF_List_Mode_Overview.html) - - [PFI Lines](RFSG.chm/integration_PFI_Lines.html) - - [PXI Trigger Lines](RFSG.chm/integration_PXI_Trigger.html) - - **Defined Values**: - - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +==============================================+=============+=================================================================================================================================+ - | ConfigListTrigExportOutputTerm.DO_NOT_EXPORT | | The signal is not exported. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PFI0 | PFI0 | The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PFI1 | PFI1 | The signal is exported to the PFI 1 connector. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXI_TRIG0 | PXI_Trig0 | The trigger is received on PXI trigger line 0. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXI_TRIG1 | PXI_Trig1 | The trigger is received on PXI trigger line 1. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXI_TRIG2 | PXI_Trig2 | The trigger is received on PXI trigger line 2. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXI_TRIG3 | PXI_Trig3 | The trigger is received on PXI trigger line 3. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXI_TRIG4 | PXI_Trig4 | The trigger is received on PXI trigger line 4. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXI_TRIG5 | PXI_Trig5 | The trigger is received on PXI trigger line 5. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXI_TRIG6 | PXI_Trig6 | The trigger is received on PXI trigger line 6. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.PXIE_DSTARC | PXIe_DStarC | The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.TRIG_OUT | TrigOut | The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO0 | DIO/PFI0 | The trigger is received on PFI0 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO1 | DIO/PFI1 | The trigger is received on PFI1 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO2 | DIO/PFI2 | The trigger is received on PFI2 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO3 | DIO/PFI3 | The trigger is received on PFI3 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO4 | DIO/PFI4 | The trigger is received on PFI4 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO5 | DIO/PFI5 | The trigger is received on PFI5 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO6 | DIO/PFI6 | The trigger is received on PFI6 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - | ConfigListTrigExportOutputTerm.DIO7 | DIO/PFI7 | The trigger is received on PFI7 from the front panel DIO terminal. | - +----------------------------------------------+-------------+---------------------------------------------------------------------------------------------------------------------------------+ - - Note: - One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - ''' exported_configuration_settled_event_output_terminal = _attributes.AttributeEnum(_attributes.AttributeViString, enums.ConfigurationSettledEventExportOutputTerm, 1150129) '''Type: enums.ConfigurationSettledEventExportOutputTerm @@ -2703,7 +2392,7 @@ class _SessionBase(object): **Related Topics** - `Frequency Tuning Times `_ + `Frequency Tuning Times for 5654 `_ **Defined Values**: @@ -2823,7 +2512,7 @@ class _SessionBase(object): Specifies the interpretation of the value passed to the frequency_settling property. - PXIe-5650/5651/5652/5653, PXIe-5673E: When the active_configuration_list property is set to a valid list name, the frequency_settling_units property supports only FrequencySettlingUnits.TIME_AFTER_IO as a valid value. + PXIe-5650/5651/5652/5653, PXIe-5673E: When the ACTIVE_CONFIGURATION_LIST property is set to a valid list name, the frequency_settling_units property supports only FrequencySettlingUnits.TIME_AFTER_IO as a valid value. PXIe-5654/5654 with PXIe-5696: The frequency_settling_units property supports only FrequencySettlingUnits.TIME_AFTER_IO and FrequencySettlingUnits.PPM as valid values. @@ -2848,6 +2537,9 @@ class _SessionBase(object): +----------------------------------------+-----------------------------------------------------------------------------------------------------------------+ Note: If you set this property to FrequencySettlingUnits.TIME_AFTER_IO, the definition of settled for the Configuration Settled event changes. + + Note: + One or more of the referenced properties are not in the Python API for this driver. ''' frequency_tolerance = _attributes.AttributeViReal64(1150006) '''Type: float @@ -2933,7 +2625,7 @@ class _SessionBase(object): **High-Level Methods**: - - revision_query + - RevisionQuery ''' instrument_manufacturer = _attributes.AttributeViString(1050511) '''Type: str @@ -3266,6 +2958,7 @@ class _SessionBase(object): `Assigning Properties or Properties to a Waveform `_—Refer to this topic for more information about using this property to associate an I/Q rate with a waveform. `Digital Upconverter `_ + **Valid Values**: +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -3283,7 +2976,7 @@ class _SessionBase(object): +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 100 MS/s | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | | *(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | + | | \*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5672 | Up to 100 MS/s. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -3797,7 +3490,7 @@ class _SessionBase(object): **High-Level Methods**: - - _get_terminal_name + - GetTerminalName Tip: This property can be set/get on specific markers within your :py:class:`nirfsg.Session` instance. @@ -3916,7 +3609,10 @@ class _SessionBase(object): - For the PXIe-5645, this property is ignored if you are using the I/Q ports. - - When the active_configuration_list property is set to a valid list name, setting the output_enabled property transitions the device to the Configuration state. + - When the ACTIVE_CONFIGURATION_LIST property is set to a valid list name, setting the output_enabled property transitions the device to the Configuration state. + + Note: + One or more of the referenced properties are not in the Python API for this driver. ''' output_port = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.OutputPort, 1150144) '''Type: enums.OutputPort @@ -4674,7 +4370,7 @@ class _SessionBase(object): PXIe-5840/5841: RF blanking does not occur for frequencies below 120MHz. - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call reset_with_options or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit**parameter. + For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. **Default Value:** "" (empty string) @@ -4755,7 +4451,7 @@ class _SessionBase(object): **High-Level Methods**: - - _get_terminal_name + - GetTerminalName Tip: This property can be set/get on specific script_triggers within your :py:class:`nirfsg.Session` instance. @@ -4997,7 +4693,7 @@ class _SessionBase(object): **High-Level Methods**: - - _get_terminal_name + - GetTerminalName ''' start_trigger_terminal_name = _attributes.AttributeViString(1150114) '''Type: str @@ -5026,7 +4722,7 @@ class _SessionBase(object): **High-Level Methods**: - - _get_terminal_name + - GetTerminalName ''' start_trigger_type = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.StartTrigType, 1250458) '''Type: enums.StartTrigType @@ -5527,7 +5223,7 @@ class _SessionBase(object): | NIRFSG_VAL_MARKER0, NIRFSG_VAL_MARKER1, NIRFSG_VAL_MARKER2, or NIRFSG_VAL_MARKER3 | RFBlanking.ENABLE | Error is shown. | +-----------------------------------------------------------------------------------+----------------------+-----------------------------------------------------------------------------------------------------------+ - Note: For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call reset_with_options or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + Note: For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -5604,7 +5300,7 @@ class _SessionBase(object): **Default Value:** WriteWaveformBurstDetection.DISABLE - **Supported Devices:**PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Defined Values**: @@ -5618,7 +5314,7 @@ class _SessionBase(object): Note: - When you download a waveform using ReadAndDownloadWaveformFromFileTdms method and if waveform_rf_blanking property is enabled, you must set the write_waveform_burst_detection property to WriteWaveformBurstDetection.DISABLE. - - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call reset_with_options or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. + - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking properties. Alternatively, you can call ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter. Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -5888,19 +5584,6 @@ def check_attribute_vi_string(self, attribute, value): ''' self._interpreter.check_attribute_vi_string(self._repeated_capability, attribute, value) - def _error_message(self, error_code, error_message): - r'''_error_message - - Converts an error code returned by an NI-RFSG method into a user-readable string. - - Args: - error_code (int): Pass the status parameter that is returned from any NI-RFSG method. - - error_message (str): Returns the user-readable message string that corresponds to the status code you specify. - - ''' - self._interpreter.error_message(error_code, error_message) - @ivi_synchronized def _get_attribute_vi_boolean(self, attribute): r'''_get_attribute_vi_boolean @@ -6042,7 +5725,7 @@ def _get_attribute_vi_session(self, attribute): return value @ivi_synchronized - def _get_attribute_vi_string(self, attribute, buf_size): + def _get_attribute_vi_string(self, attribute): r'''_get_attribute_vi_string Queries the value of a ViString property.Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. @@ -6061,10 +5744,13 @@ def _get_attribute_vi_string(self, attribute, buf_size): Args: attribute (int): Pass the ID of a property. - buf_size (int): Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter. + + Returns: + value (str): The buffer in which the method returns the current value of the property. The buffer must be of type ViChar and have at least as many bytes as indicated in the **bufferSize** parameter. ''' - self._interpreter.get_attribute_vi_string(self._repeated_capability, attribute, buf_size) + value = self._interpreter.get_attribute_vi_string(self._repeated_capability, attribute) + return value @ivi_synchronized def _get_waveform_burst_start_locations(self, number_of_locations): @@ -6683,7 +6369,10 @@ def abort(self): def allocate_arb_waveform(self, waveform_name, size_in_samples): r'''allocate_arb_waveform - Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the write_arb_waveform method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the WriteArbWaveform method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + + Note: + One or more of the referenced methods are not in the Python API for this driver. Args: waveform_name (str): Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. @@ -6720,26 +6409,6 @@ def check_generation_status(self): is_done = self._interpreter.check_generation_status() return is_done - @ivi_synchronized - def check_if_configuration_list_exists(self, list_name): - r'''check_if_configuration_list_exists - - Returns whether the configuration list that you specify as LIST_NAME exists. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - Args: - list_name (str): Specifies the name of the configuration list. This string is case-insensitive. - - - Returns: - list_exists (bool): Returns True if the configuration list exists. - - ''' - list_exists = self._interpreter.check_if_configuration_list_exists(list_name) - return list_exists - @ivi_synchronized def check_if_script_exists(self, script_name): r'''check_if_script_exists @@ -6789,8 +6458,8 @@ def clear_all_arb_waveforms(self): self._interpreter.clear_all_arb_waveforms() @ivi_synchronized - def _clear_arb_waveform(self, name): - r'''_clear_arb_waveform + def clear_arb_waveform(self, name): + r'''clear_arb_waveform Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this method. @@ -6806,7 +6475,7 @@ def clear_error(self): Clears the error information associated with the session. If you pass VI_NULL for the VI parameter, this method clears the error information for the current execution thread. - Note: The _get_error method clears the error information after it is retrieved. A call to the clear_error method is necessary only when you do not use a call to the _get_error method to retrieve error information. + Note: The get_error method clears the error information after it is retrieved. A call to the clear_error method is necessary only when you do not use a call to the get_error method to retrieve error information. Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6875,20 +6544,6 @@ def configure_deembedding_table_interpolation_spline(self, port, table_name): ''' self._interpreter.configure_deembedding_table_interpolation_spline(port, table_name) - @ivi_synchronized - def configure_digital_edge_configuration_list_step_trigger(self, source, edge): - r'''configure_digital_edge_configuration_list_step_trigger - - Configures the Configuration List Step trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before you call this method. - - Args: - source (str): Specifies the trigger source terminal for the digital edge Configuration List Step trigger. NI-RFSG sets the digital_edge_configuration_list_step_trigger_source property to this value. Refer to this property for possible values. - - edge (int): Specifies the active edge for the digital edge Configuration List Step trigger. NI-RFSG sets the digital_edge_configuration_list_step_trigger_edge property to this value. - - ''' - self._interpreter.configure_digital_edge_configuration_list_step_trigger(source, edge) - @ivi_synchronized def configure_digital_edge_script_trigger(self, trigger_id, source, edge): r'''configure_digital_edge_script_trigger @@ -7082,34 +6737,6 @@ def configure_software_start_trigger(self): ''' self._interpreter.configure_software_start_trigger() - @ivi_synchronized - def create_configuration_list(self, list_name, configuration_list_attributes, set_as_active_list): - r'''create_configuration_list - - Creates an empty configuration list. Use the active_configuration_list property to enable a configuration list created by this method. Call the create_configuration_list_step method to add steps to the configuration list. - - Args: - list_name (str): Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. - - configuration_list_attributes (list of int): Specifies the properties that you intend to change between configuration list steps. Calling the create_configuration_list method allocates space for each of the configuration list properties. When you use an NI-RFSG Set property method to set one of the properties in the configuration list, that property is set for one of the configuration list steps. Use the active_configuration_list_step property to specify which configuration list step to configure. - - set_as_active_list (bool): Sets this list as the active_configuration_list property when this parameter is enabled. NI recommends that you set this parameter to True when creating the list. - - ''' - self._interpreter.create_configuration_list(list_name, configuration_list_attributes, set_as_active_list) - - @ivi_synchronized - def create_configuration_list_step(self, set_as_active_step): - r'''create_configuration_list_step - - Creates a new configuration list step in the configuration list specified by the active_configuration_list property. When you create a configuration list step, a new instance of each property specified by the configuration list properties is created. Configuration list properties are specified when a configuration list is created. The new instance of a property can be accessed with any Set property method using the active_configuration_list and active_configuration_list_step properties. - - Args: - set_as_active_step (bool): Sets this step as the active_configuration_list_step property list specified by the active_configuration_list property. NI recommends that you set this parameter to True when creating the list steps. - - ''' - self._interpreter.create_configuration_list_step(set_as_active_step) - @ivi_synchronized def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_file_path, sparameter_orientation): r'''create_deembedding_sparameter_table_s2_p_file @@ -7136,18 +6763,6 @@ def delete_all_deembedding_tables(self): ''' self._interpreter.delete_all_deembedding_tables() - @ivi_synchronized - def delete_configuration_list(self, list_name): - r'''delete_configuration_list - - Deletes a previously created configuration list and all the configuration list steps in the specified configuration list. When a configuration list step is deleted, all the instances of the properties associated with the configuration list step are also removed. When you delete the active configuration list, NI-RFSG automatically resets the active_configuration_list property to '' (empty string), which indicates no list is active, and the active_configuration_list_step property to 0. - - Args: - list_name (str): Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words. - - ''' - self._interpreter.delete_configuration_list(list_name) - @ivi_synchronized def delete_deembedding_table(self, port, table_name): r'''delete_deembedding_table @@ -7170,14 +6785,6 @@ def disable(self): ''' self._interpreter.disable() - @ivi_synchronized - def disable_configuration_list_step_trigger(self): - r'''disable_configuration_list_step_trigger - - Configures the device not to receive triggers for the configuration list. The configuration list does not advance steps if this trigger is disabled. Call this method only if a previously configured trigger needs to be disabled. The NI-RFSG device must be in the Configuration state before you call this method. - ''' - self._interpreter.disable_configuration_list_step_trigger() - @ivi_synchronized def disable_script_trigger(self, trigger_id): r'''disable_script_trigger @@ -7198,23 +6805,6 @@ def disable_start_trigger(self): ''' self._interpreter.disable_start_trigger() - @ivi_synchronized - def error_query(self, error_message): - r'''error_query - - Reads an error code and an error message from the instrument error queue. - - Args: - error_message (str): Returns the error message string read from the instrument error message queue. - - - Returns: - error_code (int): Returns the error code read from the instrument error queue. - - ''' - error_code = self._interpreter.error_query(error_message) - return error_code - @ivi_synchronized def export_signal(self, signal, signal_identifier, output_terminal): r'''export_signal @@ -7238,91 +6828,8 @@ def export_signal(self, signal, signal_identifier, output_terminal): self._interpreter.export_signal(signal, signal_identifier, output_terminal) @ivi_synchronized - def _get_all_named_waveform_names(self, buffer_size): - r'''_get_all_named_waveform_names - - Return names of the waveforms present in the memory. - - Args: - buffer_size (int): Pass the number of bytes in the ViChar buffer you specify for the WAVEFORM_NAMES parameter. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - - Returns: - actual_buffer_size (int): Fetch the number of bytes needed to pass in the BUFFER_SIZE parameter. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - ''' - actual_buffer_size = self._interpreter.get_all_named_waveform_names(buffer_size) - return actual_buffer_size - - @ivi_synchronized - def _get_all_script_names(self, buffer_size): - r'''_get_all_script_names - - Return names of the scripts present in the memory. - - Args: - buffer_size (int): Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter. - - - Returns: - actual_buffer_size (int): Fetch the number of bytes needed to pass in the BUFFER_SIZE parameter.It can be fetch by passing VI_NULL in the SCRIPT_NAMES parameter. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - ''' - actual_buffer_size = self._interpreter.get_all_script_names(buffer_size) - return actual_buffer_size - - @ivi_synchronized - def _get_channel_name(self, index, buffer_size): - r'''_get_channel_name - - Returns the channel string that is in the channel table at an index you specify. - - Args: - index (int): Specifies a one-based index into the channel table. - - buffer_size (int): Specifies the size of the buffer for the channel string. - - ''' - self._interpreter.get_channel_name(index, buffer_size) - - @ivi_synchronized - def _get_deembedding_sparameters(self, sparameters_array_size): - r'''_get_deembedding_sparameters - - Returns the S-parameters used for de-embedding a measurement on the selected port. This includes interpolation of the parameters based on the configured carrier frequency. This method returns an empty array if no de-embedding is done. - - Note: The port orientation for the returned S-parameters is normalized to SparameterOrientation.PORT1. - - Args: - sparameters_array_size (int): Specifies the size of the array that is returned by the SPARAMETERS output. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - - Returns: - sparameters (ni_complex_number): Returns an array of S-parameters. The S-parameters are returned in the following order: s11, s12, s21, s22. - - number_of_sparameters (int): Returns the number of S-parameters. - - number_of_ports (int): Returns the number of S-parameter ports. The **sparameter** array is always *n* x *n*, where span *n* is the number of ports. - - ''' - sparameters, number_of_sparameters, number_of_ports = self._interpreter.get_deembedding_sparameters(sparameters_array_size) - return sparameters, number_of_sparameters, number_of_ports - - @ivi_synchronized - def _get_external_calibration_last_date_and_time(self): - r'''_get_external_calibration_last_date_and_time + def get_external_calibration_last_date_and_time(self): + r'''get_external_calibration_last_date_and_time Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. @@ -7344,8 +6851,8 @@ def _get_external_calibration_last_date_and_time(self): return year, month, day, hour, minute, second @ivi_synchronized - def _get_max_settable_power(self): - r'''_get_max_settable_power + def get_max_settable_power(self): + r'''get_max_settable_power Returns the maximum settable output power level for the current configuration. @@ -7357,8 +6864,8 @@ def _get_max_settable_power(self): return value @ivi_synchronized - def _get_self_calibration_date_and_time(self, module): - r'''_get_self_calibration_date_and_time + def get_self_calibration_date_and_time(self, module): + r'''get_self_calibration_date_and_time Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. @@ -7384,8 +6891,8 @@ def _get_self_calibration_date_and_time(self, module): return year, month, day, hour, minute, second @ivi_synchronized - def _get_self_calibration_temperature(self, module): - r'''_get_self_calibration_temperature + def get_self_calibration_temperature(self, module): + r'''get_self_calibration_temperature Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. @@ -7401,8 +6908,8 @@ def _get_self_calibration_temperature(self, module): return temperature @ivi_synchronized - def _get_stream_endpoint_handle(self, stream_endpoint): - r'''_get_stream_endpoint_handle + def get_stream_endpoint_handle(self, stream_endpoint): + r'''get_stream_endpoint_handle Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint. @@ -7417,31 +6924,6 @@ def _get_stream_endpoint_handle(self, stream_endpoint): reader_handle = self._interpreter.get_stream_endpoint_handle(stream_endpoint) return reader_handle - @ivi_synchronized - def _get_terminal_name(self, signal, signal_identifier, buffer_size): - r'''_get_terminal_name - - Returns the fully-qualified name of the specified signal. The fully-qualified name is helpful to automatically route signals in a multisegment chassis. - - Args: - signal (int): Specifies the signal to query. - - signal_identifier (str): Specifies which instance of the selected signal to query. This parameter is necessary when you set the SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT . Otherwise, set the SIGNAL_IDENTIFIER parameter to '' (empty string). - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - Note: - One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - - buffer_size (int): Pass the number of bytes in the ViChar buffer you specify for the TERMINAL_NAME parameter. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - ''' - self._interpreter.get_terminal_name(signal, signal_identifier, buffer_size) - def _init_with_options(self, resource_name, id_query, reset_device, option_string): r'''_init_with_options @@ -7558,32 +7040,6 @@ def reset_with_defaults(self): ''' self._interpreter.reset_with_defaults() - @ivi_synchronized - def reset_with_options(self, steps_to_omit): - r'''reset_with_options - - Resets all properties to default values and specifies steps to omit during the reset process, such as signal routes. - - Args: - steps_to_omit (int): Specifies a list of steps to skip during the reset process. The default value is StepsToOmit.NONE, which specifies that no step is omitted during reset. - - ''' - self._interpreter.reset_with_options(steps_to_omit) - - @ivi_synchronized - def revision_query(self, instrument_driver_revision, firmware_revision): - r'''revision_query - - Returns the revision numbers of the NI-RFSG driver and the instrument firmware. - - Args: - instrument_driver_revision (str): Returns the value of the specific_driver_revision property in the form of a string. - - firmware_revision (str): Returns the value of the instrument_firmware_revision property in the form of a string. - - ''' - self._interpreter.revision_query(instrument_driver_revision, firmware_revision) - @ivi_synchronized def select_arb_waveform(self, name): r'''select_arb_waveform @@ -7649,13 +7105,16 @@ def self_test(self, self_test_message): return self_test_result @ivi_synchronized - def _set_arb_waveform_next_write_position(self, waveform_name, relative_to, offset): - r'''_set_arb_waveform_next_write_position + def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offset): + r'''set_arb_waveform_next_write_position - Configures the start position to use for writing a waveform before calling the write_arb_waveform method. This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the allocate_arb_waveform method or the write_arb_waveform method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. + Configures the start position to use for writing a waveform before calling the WriteArbWaveform method. This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the allocate_arb_waveform method or the WriteArbWaveform method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. Note: If you use this method to write the waveform that is currently generating, an undefined output may result. + Note: + One or more of the referenced methods are not in the Python API for this driver. + Args: waveform_name (str): Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ @@ -7681,72 +7140,6 @@ def wait_until_settled(self, max_time_milliseconds): ''' self._interpreter.wait_until_settled(max_time_milliseconds) - @ivi_synchronized - def write_arb_waveform(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): - r'''write_arb_waveform - - Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex baseband signal. If the waveform to write is already allocated using the allocate_arb_waveform method, the MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. - - Note: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - Args: - waveform_name (str): Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. - - number_of_samples (int): Specifies the number of samples in both the I_DATA and Q_DATA arrays. The I_DATA and Q_DATA arrays must have the same length. If the arb_waveform_quantum property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - i_data (array.array("d")): Specifies the in-phase (I) component of the complex baseband signal. - - q_data (array.array("d")): Specifies the quadrature (Q) component of the complex baseband signal. - - more_data_pending (bool): Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set MORE_DATA_PENDING to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - ''' - if q_data is not None and len(q_data) != len(i_data): # case S160 - raise ValueError("Length of q_data and i_data parameters do not match.") # case S160 - self._interpreter.write_arb_waveform(waveform_name, number_of_samples, i_data, q_data, more_data_pending) - - @ivi_synchronized - def write_arb_waveform_f32(self, waveform_name, number_of_samples, i_data, q_data, more_data_pending): - r'''write_arb_waveform_f32 - - Writes an arbitrary waveform to the NI-RFSG device. This method configures the I and Q vectors of a complex single baseband signal. If the waveform to write is already allocated using the allocate_arb_waveform method, the MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this method. When streaming is enabled, you can call this method when the PXIe-5672/5673/5673E or PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state. - - Note: On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - Args: - waveform_name (str): Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. - - number_of_samples (int): Specifies the number of samples in both the I_DATA and Q_DATA arrays. The I_DATA and Q_DATA arrays must have the same length. If the arb_waveform_quantum property value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - i_data (array.array("f")): Specifies the in-phase (I) component of the complex baseband signal. - - q_data (array.array("f")): Specifies the quadrature (Q) component of the complex baseband signal. - - more_data_pending (bool): Specifies whether or not the data block contains the end of the waveform. Set this parameter to True to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set MORE_DATA_PENDING to False to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored. - - Note: - One or more of the referenced properties are not in the Python API for this driver. - - ''' - if q_data is not None and len(q_data) != len(i_data): # case S160 - raise ValueError("Length of q_data and i_data parameters do not match.") # case S160 - self._interpreter.write_arb_waveform_f32(waveform_name, number_of_samples, i_data, q_data, more_data_pending) - @ivi_synchronized def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_data): r'''write_p2_p_endpoint_i16 diff --git a/generated/nirfsg/nirfsg/unit_tests/_mock_helper.py b/generated/nirfsg/nirfsg/unit_tests/_mock_helper.py index a5b14d7b2e..e7a01aadde 100644 --- a/generated/nirfsg/nirfsg/unit_tests/_mock_helper.py +++ b/generated/nirfsg/nirfsg/unit_tests/_mock_helper.py @@ -37,9 +37,6 @@ def __init__(self): self._defaults['CheckGenerationStatus'] = {} self._defaults['CheckGenerationStatus']['return'] = 0 self._defaults['CheckGenerationStatus']['isDone'] = None - self._defaults['CheckIfConfigurationListExists'] = {} - self._defaults['CheckIfConfigurationListExists']['return'] = 0 - self._defaults['CheckIfConfigurationListExists']['listExists'] = None self._defaults['CheckIfScriptExists'] = {} self._defaults['CheckIfScriptExists']['return'] = 0 self._defaults['CheckIfScriptExists']['scriptExists'] = None @@ -62,8 +59,6 @@ def __init__(self): self._defaults['ConfigureDeembeddingTableInterpolationNearest']['return'] = 0 self._defaults['ConfigureDeembeddingTableInterpolationSpline'] = {} self._defaults['ConfigureDeembeddingTableInterpolationSpline']['return'] = 0 - self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger'] = {} - self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] = 0 self._defaults['ConfigureDigitalEdgeScriptTrigger'] = {} self._defaults['ConfigureDigitalEdgeScriptTrigger']['return'] = 0 self._defaults['ConfigureDigitalEdgeStartTrigger'] = {} @@ -92,39 +87,20 @@ def __init__(self): self._defaults['ConfigureSoftwareScriptTrigger']['return'] = 0 self._defaults['ConfigureSoftwareStartTrigger'] = {} self._defaults['ConfigureSoftwareStartTrigger']['return'] = 0 - self._defaults['CreateConfigurationList'] = {} - self._defaults['CreateConfigurationList']['return'] = 0 - self._defaults['CreateConfigurationListStep'] = {} - self._defaults['CreateConfigurationListStep']['return'] = 0 self._defaults['CreateDeembeddingSparameterTableS2PFile'] = {} self._defaults['CreateDeembeddingSparameterTableS2PFile']['return'] = 0 self._defaults['DeleteAllDeembeddingTables'] = {} self._defaults['DeleteAllDeembeddingTables']['return'] = 0 - self._defaults['DeleteConfigurationList'] = {} - self._defaults['DeleteConfigurationList']['return'] = 0 self._defaults['DeleteDeembeddingTable'] = {} self._defaults['DeleteDeembeddingTable']['return'] = 0 self._defaults['Disable'] = {} self._defaults['Disable']['return'] = 0 - self._defaults['DisableConfigurationListStepTrigger'] = {} - self._defaults['DisableConfigurationListStepTrigger']['return'] = 0 self._defaults['DisableScriptTrigger'] = {} self._defaults['DisableScriptTrigger']['return'] = 0 self._defaults['DisableStartTrigger'] = {} self._defaults['DisableStartTrigger']['return'] = 0 - self._defaults['ErrorMessage'] = {} - self._defaults['ErrorMessage']['return'] = 0 - self._defaults['ErrorQuery'] = {} - self._defaults['ErrorQuery']['return'] = 0 - self._defaults['ErrorQuery']['errorCode'] = None self._defaults['ExportSignal'] = {} self._defaults['ExportSignal']['return'] = 0 - self._defaults['GetAllNamedWaveformNames'] = {} - self._defaults['GetAllNamedWaveformNames']['return'] = 0 - self._defaults['GetAllNamedWaveformNames']['actualBufferSize'] = None - self._defaults['GetAllScriptNames'] = {} - self._defaults['GetAllScriptNames']['return'] = 0 - self._defaults['GetAllScriptNames']['actualBufferSize'] = None self._defaults['GetAttributeViBoolean'] = {} self._defaults['GetAttributeViBoolean']['return'] = 0 self._defaults['GetAttributeViBoolean']['value'] = None @@ -142,13 +118,7 @@ def __init__(self): self._defaults['GetAttributeViSession']['value'] = None self._defaults['GetAttributeViString'] = {} self._defaults['GetAttributeViString']['return'] = 0 - self._defaults['GetChannelName'] = {} - self._defaults['GetChannelName']['return'] = 0 - self._defaults['GetDeembeddingSparameters'] = {} - self._defaults['GetDeembeddingSparameters']['return'] = 0 - self._defaults['GetDeembeddingSparameters']['sparameters'] = None - self._defaults['GetDeembeddingSparameters']['numberOfSparameters'] = None - self._defaults['GetDeembeddingSparameters']['numberOfPorts'] = None + self._defaults['GetAttributeViString']['value'] = None self._defaults['GetError'] = {} self._defaults['GetError']['return'] = 0 self._defaults['GetError']['errorCode'] = None @@ -178,8 +148,6 @@ def __init__(self): self._defaults['GetStreamEndpointHandle'] = {} self._defaults['GetStreamEndpointHandle']['return'] = 0 self._defaults['GetStreamEndpointHandle']['readerHandle'] = None - self._defaults['GetTerminalName'] = {} - self._defaults['GetTerminalName']['return'] = 0 self._defaults['GetWaveformBurstStartLocations'] = {} self._defaults['GetWaveformBurstStartLocations']['return'] = 0 self._defaults['GetWaveformBurstStartLocations']['locations'] = None @@ -222,10 +190,6 @@ def __init__(self): self._defaults['ResetDevice']['return'] = 0 self._defaults['ResetWithDefaults'] = {} self._defaults['ResetWithDefaults']['return'] = 0 - self._defaults['ResetWithOptions'] = {} - self._defaults['ResetWithOptions']['return'] = 0 - self._defaults['RevisionQuery'] = {} - self._defaults['RevisionQuery']['return'] = 0 self._defaults['SaveConfigurationsToFile'] = {} self._defaults['SaveConfigurationsToFile']['return'] = 0 self._defaults['SelectArbWaveform'] = {} @@ -267,10 +231,6 @@ def __init__(self): self._defaults['UnlockSession']['callerHasLock'] = None self._defaults['WaitUntilSettled'] = {} self._defaults['WaitUntilSettled']['return'] = 0 - self._defaults['WriteArbWaveform'] = {} - self._defaults['WriteArbWaveform']['return'] = 0 - self._defaults['WriteArbWaveformF32'] = {} - self._defaults['WriteArbWaveformF32']['return'] = 0 self._defaults['WriteP2PEndpointI16'] = {} self._defaults['WriteP2PEndpointI16']['return'] = 0 self._defaults['WriteScript'] = {} @@ -339,16 +299,6 @@ def niRFSG_CheckGenerationStatus(self, vi, is_done): # noqa: N802 is_done.contents.value = self._defaults['CheckGenerationStatus']['isDone'] return self._defaults['CheckGenerationStatus']['return'] - def niRFSG_CheckIfConfigurationListExists(self, vi, list_name, list_exists): # noqa: N802 - if self._defaults['CheckIfConfigurationListExists']['return'] != 0: - return self._defaults['CheckIfConfigurationListExists']['return'] - # list_exists - if self._defaults['CheckIfConfigurationListExists']['listExists'] is None: - raise MockFunctionCallError("niRFSG_CheckIfConfigurationListExists", param='listExists') - if list_exists is not None: - list_exists.contents.value = self._defaults['CheckIfConfigurationListExists']['listExists'] - return self._defaults['CheckIfConfigurationListExists']['return'] - def niRFSG_CheckIfScriptExists(self, vi, script_name, script_exists): # noqa: N802 if self._defaults['CheckIfScriptExists']['return'] != 0: return self._defaults['CheckIfScriptExists']['return'] @@ -409,11 +359,6 @@ def niRFSG_ConfigureDeembeddingTableInterpolationSpline(self, vi, port, table_na return self._defaults['ConfigureDeembeddingTableInterpolationSpline']['return'] return self._defaults['ConfigureDeembeddingTableInterpolationSpline']['return'] - def niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger(self, vi, source, edge): # noqa: N802 - if self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] != 0: - return self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] - return self._defaults['ConfigureDigitalEdgeConfigurationListStepTrigger']['return'] - def niRFSG_ConfigureDigitalEdgeScriptTrigger(self, vi, trigger_id, source, edge): # noqa: N802 if self._defaults['ConfigureDigitalEdgeScriptTrigger']['return'] != 0: return self._defaults['ConfigureDigitalEdgeScriptTrigger']['return'] @@ -484,16 +429,6 @@ def niRFSG_ConfigureSoftwareStartTrigger(self, vi): # noqa: N802 return self._defaults['ConfigureSoftwareStartTrigger']['return'] return self._defaults['ConfigureSoftwareStartTrigger']['return'] - def niRFSG_CreateConfigurationList(self, vi, list_name, number_of_attributes, configuration_list_attributes, set_as_active_list): # noqa: N802 - if self._defaults['CreateConfigurationList']['return'] != 0: - return self._defaults['CreateConfigurationList']['return'] - return self._defaults['CreateConfigurationList']['return'] - - def niRFSG_CreateConfigurationListStep(self, vi, set_as_active_step): # noqa: N802 - if self._defaults['CreateConfigurationListStep']['return'] != 0: - return self._defaults['CreateConfigurationListStep']['return'] - return self._defaults['CreateConfigurationListStep']['return'] - def niRFSG_CreateDeembeddingSparameterTableS2PFile(self, vi, port, table_name, s2p_file_path, sparameter_orientation): # noqa: N802 if self._defaults['CreateDeembeddingSparameterTableS2PFile']['return'] != 0: return self._defaults['CreateDeembeddingSparameterTableS2PFile']['return'] @@ -504,11 +439,6 @@ def niRFSG_DeleteAllDeembeddingTables(self, vi): # noqa: N802 return self._defaults['DeleteAllDeembeddingTables']['return'] return self._defaults['DeleteAllDeembeddingTables']['return'] - def niRFSG_DeleteConfigurationList(self, vi, list_name): # noqa: N802 - if self._defaults['DeleteConfigurationList']['return'] != 0: - return self._defaults['DeleteConfigurationList']['return'] - return self._defaults['DeleteConfigurationList']['return'] - def niRFSG_DeleteDeembeddingTable(self, vi, port, table_name): # noqa: N802 if self._defaults['DeleteDeembeddingTable']['return'] != 0: return self._defaults['DeleteDeembeddingTable']['return'] @@ -519,11 +449,6 @@ def niRFSG_Disable(self, vi): # noqa: N802 return self._defaults['Disable']['return'] return self._defaults['Disable']['return'] - def niRFSG_DisableConfigurationListStepTrigger(self, vi): # noqa: N802 - if self._defaults['DisableConfigurationListStepTrigger']['return'] != 0: - return self._defaults['DisableConfigurationListStepTrigger']['return'] - return self._defaults['DisableConfigurationListStepTrigger']['return'] - def niRFSG_DisableScriptTrigger(self, vi, trigger_id): # noqa: N802 if self._defaults['DisableScriptTrigger']['return'] != 0: return self._defaults['DisableScriptTrigger']['return'] @@ -534,46 +459,11 @@ def niRFSG_DisableStartTrigger(self, vi): # noqa: N802 return self._defaults['DisableStartTrigger']['return'] return self._defaults['DisableStartTrigger']['return'] - def niRFSG_ErrorMessage(self, vi, error_code, error_message): # noqa: N802 - if self._defaults['ErrorMessage']['return'] != 0: - return self._defaults['ErrorMessage']['return'] - return self._defaults['ErrorMessage']['return'] - - def niRFSG_ErrorQuery(self, vi, error_code, error_message): # noqa: N802 - if self._defaults['ErrorQuery']['return'] != 0: - return self._defaults['ErrorQuery']['return'] - # error_code - if self._defaults['ErrorQuery']['errorCode'] is None: - raise MockFunctionCallError("niRFSG_ErrorQuery", param='errorCode') - if error_code is not None: - error_code.contents.value = self._defaults['ErrorQuery']['errorCode'] - return self._defaults['ErrorQuery']['return'] - def niRFSG_ExportSignal(self, vi, signal, signal_identifier, output_terminal): # noqa: N802 if self._defaults['ExportSignal']['return'] != 0: return self._defaults['ExportSignal']['return'] return self._defaults['ExportSignal']['return'] - def niRFSG_GetAllNamedWaveformNames(self, vi, waveform_names, buffer_size, actual_buffer_size): # noqa: N802 - if self._defaults['GetAllNamedWaveformNames']['return'] != 0: - return self._defaults['GetAllNamedWaveformNames']['return'] - # actual_buffer_size - if self._defaults['GetAllNamedWaveformNames']['actualBufferSize'] is None: - raise MockFunctionCallError("niRFSG_GetAllNamedWaveformNames", param='actualBufferSize') - if actual_buffer_size is not None: - actual_buffer_size.contents.value = self._defaults['GetAllNamedWaveformNames']['actualBufferSize'] - return self._defaults['GetAllNamedWaveformNames']['return'] - - def niRFSG_GetAllScriptNames(self, vi, script_names, buffer_size, actual_buffer_size): # noqa: N802 - if self._defaults['GetAllScriptNames']['return'] != 0: - return self._defaults['GetAllScriptNames']['return'] - # actual_buffer_size - if self._defaults['GetAllScriptNames']['actualBufferSize'] is None: - raise MockFunctionCallError("niRFSG_GetAllScriptNames", param='actualBufferSize') - if actual_buffer_size is not None: - actual_buffer_size.contents.value = self._defaults['GetAllScriptNames']['actualBufferSize'] - return self._defaults['GetAllScriptNames']['return'] - def niRFSG_GetAttributeViBoolean(self, vi, channel_name, attribute, value): # noqa: N802 if self._defaults['GetAttributeViBoolean']['return'] != 0: return self._defaults['GetAttributeViBoolean']['return'] @@ -627,33 +517,14 @@ def niRFSG_GetAttributeViSession(self, vi, channel_name, attribute, value): # n def niRFSG_GetAttributeViString(self, vi, channel_name, attribute, buf_size, value): # noqa: N802 if self._defaults['GetAttributeViString']['return'] != 0: return self._defaults['GetAttributeViString']['return'] + # value + if self._defaults['GetAttributeViString']['value'] is None: + raise MockFunctionCallError("niRFSG_GetAttributeViString", param='value') + if buf_size.value == 0: + return len(self._defaults['GetAttributeViString']['value']) + value.value = self._defaults['GetAttributeViString']['value'].encode('ascii') return self._defaults['GetAttributeViString']['return'] - def niRFSG_GetChannelName(self, vi, index, buffer_size, name): # noqa: N802 - if self._defaults['GetChannelName']['return'] != 0: - return self._defaults['GetChannelName']['return'] - return self._defaults['GetChannelName']['return'] - - def niRFSG_GetDeembeddingSparameters(self, vi, sparameters, sparameters_array_size, number_of_sparameters, number_of_ports): # noqa: N802 - if self._defaults['GetDeembeddingSparameters']['return'] != 0: - return self._defaults['GetDeembeddingSparameters']['return'] - # sparameters - if self._defaults['GetDeembeddingSparameters']['sparameters'] is None: - raise MockFunctionCallError("niRFSG_GetDeembeddingSparameters", param='sparameters') - if sparameters is not None: - sparameters.contents.value = self._defaults['GetDeembeddingSparameters']['sparameters'] - # number_of_sparameters - if self._defaults['GetDeembeddingSparameters']['numberOfSparameters'] is None: - raise MockFunctionCallError("niRFSG_GetDeembeddingSparameters", param='numberOfSparameters') - if number_of_sparameters is not None: - number_of_sparameters.contents.value = self._defaults['GetDeembeddingSparameters']['numberOfSparameters'] - # number_of_ports - if self._defaults['GetDeembeddingSparameters']['numberOfPorts'] is None: - raise MockFunctionCallError("niRFSG_GetDeembeddingSparameters", param='numberOfPorts') - if number_of_ports is not None: - number_of_ports.contents.value = self._defaults['GetDeembeddingSparameters']['numberOfPorts'] - return self._defaults['GetDeembeddingSparameters']['return'] - def niRFSG_GetError(self, vi, error_code, error_description_buffer_size, error_description): # noqa: N802 if self._defaults['GetError']['return'] != 0: return self._defaults['GetError']['return'] @@ -770,11 +641,6 @@ def niRFSG_GetStreamEndpointHandle(self, vi, stream_endpoint, reader_handle): # reader_handle.contents.value = self._defaults['GetStreamEndpointHandle']['readerHandle'] return self._defaults['GetStreamEndpointHandle']['return'] - def niRFSG_GetTerminalName(self, vi, signal, signal_identifier, buffer_size, terminal_name): # noqa: N802 - if self._defaults['GetTerminalName']['return'] != 0: - return self._defaults['GetTerminalName']['return'] - return self._defaults['GetTerminalName']['return'] - def niRFSG_GetWaveformBurstStartLocations(self, vi, channel_name, number_of_locations, locations, required_size): # noqa: N802 if self._defaults['GetWaveformBurstStartLocations']['return'] != 0: return self._defaults['GetWaveformBurstStartLocations']['return'] @@ -910,16 +776,6 @@ def niRFSG_ResetWithDefaults(self, vi): # noqa: N802 return self._defaults['ResetWithDefaults']['return'] return self._defaults['ResetWithDefaults']['return'] - def niRFSG_ResetWithOptions(self, vi, steps_to_omit): # noqa: N802 - if self._defaults['ResetWithOptions']['return'] != 0: - return self._defaults['ResetWithOptions']['return'] - return self._defaults['ResetWithOptions']['return'] - - def niRFSG_RevisionQuery(self, vi, instrument_driver_revision, firmware_revision): # noqa: N802 - if self._defaults['RevisionQuery']['return'] != 0: - return self._defaults['RevisionQuery']['return'] - return self._defaults['RevisionQuery']['return'] - def niRFSG_SaveConfigurationsToFile(self, vi, channel_name, file_path): # noqa: N802 if self._defaults['SaveConfigurationsToFile']['return'] != 0: return self._defaults['SaveConfigurationsToFile']['return'] @@ -1035,16 +891,6 @@ def niRFSG_WaitUntilSettled(self, vi, max_time_milliseconds): # noqa: N802 return self._defaults['WaitUntilSettled']['return'] return self._defaults['WaitUntilSettled']['return'] - def niRFSG_WriteArbWaveform(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 - if self._defaults['WriteArbWaveform']['return'] != 0: - return self._defaults['WriteArbWaveform']['return'] - return self._defaults['WriteArbWaveform']['return'] - - def niRFSG_WriteArbWaveformF32(self, vi, waveform_name, number_of_samples, i_data, q_data, more_data_pending): # noqa: N802 - if self._defaults['WriteArbWaveformF32']['return'] != 0: - return self._defaults['WriteArbWaveformF32']['return'] - return self._defaults['WriteArbWaveformF32']['return'] - def niRFSG_WriteP2PEndpointI16(self, vi, stream_endpoint, number_of_samples, endpoint_data): # noqa: N802 if self._defaults['WriteP2PEndpointI16']['return'] != 0: return self._defaults['WriteP2PEndpointI16']['return'] @@ -1082,8 +928,6 @@ def set_side_effects_and_return_values(self, mock_library): mock_library.niRFSG_CheckAttributeViString.return_value = 0 mock_library.niRFSG_CheckGenerationStatus.side_effect = MockFunctionCallError("niRFSG_CheckGenerationStatus") mock_library.niRFSG_CheckGenerationStatus.return_value = 0 - mock_library.niRFSG_CheckIfConfigurationListExists.side_effect = MockFunctionCallError("niRFSG_CheckIfConfigurationListExists") - mock_library.niRFSG_CheckIfConfigurationListExists.return_value = 0 mock_library.niRFSG_CheckIfScriptExists.side_effect = MockFunctionCallError("niRFSG_CheckIfScriptExists") mock_library.niRFSG_CheckIfScriptExists.return_value = 0 mock_library.niRFSG_CheckIfWaveformExists.side_effect = MockFunctionCallError("niRFSG_CheckIfWaveformExists") @@ -1104,8 +948,6 @@ def set_side_effects_and_return_values(self, mock_library): mock_library.niRFSG_ConfigureDeembeddingTableInterpolationNearest.return_value = 0 mock_library.niRFSG_ConfigureDeembeddingTableInterpolationSpline.side_effect = MockFunctionCallError("niRFSG_ConfigureDeembeddingTableInterpolationSpline") mock_library.niRFSG_ConfigureDeembeddingTableInterpolationSpline.return_value = 0 - mock_library.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger") - mock_library.niRFSG_ConfigureDigitalEdgeConfigurationListStepTrigger.return_value = 0 mock_library.niRFSG_ConfigureDigitalEdgeScriptTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalEdgeScriptTrigger") mock_library.niRFSG_ConfigureDigitalEdgeScriptTrigger.return_value = 0 mock_library.niRFSG_ConfigureDigitalEdgeStartTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureDigitalEdgeStartTrigger") @@ -1134,36 +976,20 @@ def set_side_effects_and_return_values(self, mock_library): mock_library.niRFSG_ConfigureSoftwareScriptTrigger.return_value = 0 mock_library.niRFSG_ConfigureSoftwareStartTrigger.side_effect = MockFunctionCallError("niRFSG_ConfigureSoftwareStartTrigger") mock_library.niRFSG_ConfigureSoftwareStartTrigger.return_value = 0 - mock_library.niRFSG_CreateConfigurationList.side_effect = MockFunctionCallError("niRFSG_CreateConfigurationList") - mock_library.niRFSG_CreateConfigurationList.return_value = 0 - mock_library.niRFSG_CreateConfigurationListStep.side_effect = MockFunctionCallError("niRFSG_CreateConfigurationListStep") - mock_library.niRFSG_CreateConfigurationListStep.return_value = 0 mock_library.niRFSG_CreateDeembeddingSparameterTableS2PFile.side_effect = MockFunctionCallError("niRFSG_CreateDeembeddingSparameterTableS2PFile") mock_library.niRFSG_CreateDeembeddingSparameterTableS2PFile.return_value = 0 mock_library.niRFSG_DeleteAllDeembeddingTables.side_effect = MockFunctionCallError("niRFSG_DeleteAllDeembeddingTables") mock_library.niRFSG_DeleteAllDeembeddingTables.return_value = 0 - mock_library.niRFSG_DeleteConfigurationList.side_effect = MockFunctionCallError("niRFSG_DeleteConfigurationList") - mock_library.niRFSG_DeleteConfigurationList.return_value = 0 mock_library.niRFSG_DeleteDeembeddingTable.side_effect = MockFunctionCallError("niRFSG_DeleteDeembeddingTable") mock_library.niRFSG_DeleteDeembeddingTable.return_value = 0 mock_library.niRFSG_Disable.side_effect = MockFunctionCallError("niRFSG_Disable") mock_library.niRFSG_Disable.return_value = 0 - mock_library.niRFSG_DisableConfigurationListStepTrigger.side_effect = MockFunctionCallError("niRFSG_DisableConfigurationListStepTrigger") - mock_library.niRFSG_DisableConfigurationListStepTrigger.return_value = 0 mock_library.niRFSG_DisableScriptTrigger.side_effect = MockFunctionCallError("niRFSG_DisableScriptTrigger") mock_library.niRFSG_DisableScriptTrigger.return_value = 0 mock_library.niRFSG_DisableStartTrigger.side_effect = MockFunctionCallError("niRFSG_DisableStartTrigger") mock_library.niRFSG_DisableStartTrigger.return_value = 0 - mock_library.niRFSG_ErrorMessage.side_effect = MockFunctionCallError("niRFSG_ErrorMessage") - mock_library.niRFSG_ErrorMessage.return_value = 0 - mock_library.niRFSG_ErrorQuery.side_effect = MockFunctionCallError("niRFSG_ErrorQuery") - mock_library.niRFSG_ErrorQuery.return_value = 0 mock_library.niRFSG_ExportSignal.side_effect = MockFunctionCallError("niRFSG_ExportSignal") mock_library.niRFSG_ExportSignal.return_value = 0 - mock_library.niRFSG_GetAllNamedWaveformNames.side_effect = MockFunctionCallError("niRFSG_GetAllNamedWaveformNames") - mock_library.niRFSG_GetAllNamedWaveformNames.return_value = 0 - mock_library.niRFSG_GetAllScriptNames.side_effect = MockFunctionCallError("niRFSG_GetAllScriptNames") - mock_library.niRFSG_GetAllScriptNames.return_value = 0 mock_library.niRFSG_GetAttributeViBoolean.side_effect = MockFunctionCallError("niRFSG_GetAttributeViBoolean") mock_library.niRFSG_GetAttributeViBoolean.return_value = 0 mock_library.niRFSG_GetAttributeViInt32.side_effect = MockFunctionCallError("niRFSG_GetAttributeViInt32") @@ -1176,10 +1002,6 @@ def set_side_effects_and_return_values(self, mock_library): mock_library.niRFSG_GetAttributeViSession.return_value = 0 mock_library.niRFSG_GetAttributeViString.side_effect = MockFunctionCallError("niRFSG_GetAttributeViString") mock_library.niRFSG_GetAttributeViString.return_value = 0 - mock_library.niRFSG_GetChannelName.side_effect = MockFunctionCallError("niRFSG_GetChannelName") - mock_library.niRFSG_GetChannelName.return_value = 0 - mock_library.niRFSG_GetDeembeddingSparameters.side_effect = MockFunctionCallError("niRFSG_GetDeembeddingSparameters") - mock_library.niRFSG_GetDeembeddingSparameters.return_value = 0 mock_library.niRFSG_GetError.side_effect = MockFunctionCallError("niRFSG_GetError") mock_library.niRFSG_GetError.return_value = 0 mock_library.niRFSG_GetExternalCalibrationLastDateAndTime.side_effect = MockFunctionCallError("niRFSG_GetExternalCalibrationLastDateAndTime") @@ -1192,8 +1014,6 @@ def set_side_effects_and_return_values(self, mock_library): mock_library.niRFSG_GetSelfCalibrationTemperature.return_value = 0 mock_library.niRFSG_GetStreamEndpointHandle.side_effect = MockFunctionCallError("niRFSG_GetStreamEndpointHandle") mock_library.niRFSG_GetStreamEndpointHandle.return_value = 0 - mock_library.niRFSG_GetTerminalName.side_effect = MockFunctionCallError("niRFSG_GetTerminalName") - mock_library.niRFSG_GetTerminalName.return_value = 0 mock_library.niRFSG_GetWaveformBurstStartLocations.side_effect = MockFunctionCallError("niRFSG_GetWaveformBurstStartLocations") mock_library.niRFSG_GetWaveformBurstStartLocations.return_value = 0 mock_library.niRFSG_GetWaveformBurstStopLocations.side_effect = MockFunctionCallError("niRFSG_GetWaveformBurstStopLocations") @@ -1224,10 +1044,6 @@ def set_side_effects_and_return_values(self, mock_library): mock_library.niRFSG_ResetDevice.return_value = 0 mock_library.niRFSG_ResetWithDefaults.side_effect = MockFunctionCallError("niRFSG_ResetWithDefaults") mock_library.niRFSG_ResetWithDefaults.return_value = 0 - mock_library.niRFSG_ResetWithOptions.side_effect = MockFunctionCallError("niRFSG_ResetWithOptions") - mock_library.niRFSG_ResetWithOptions.return_value = 0 - mock_library.niRFSG_RevisionQuery.side_effect = MockFunctionCallError("niRFSG_RevisionQuery") - mock_library.niRFSG_RevisionQuery.return_value = 0 mock_library.niRFSG_SaveConfigurationsToFile.side_effect = MockFunctionCallError("niRFSG_SaveConfigurationsToFile") mock_library.niRFSG_SaveConfigurationsToFile.return_value = 0 mock_library.niRFSG_SelectArbWaveform.side_effect = MockFunctionCallError("niRFSG_SelectArbWaveform") @@ -1264,10 +1080,6 @@ def set_side_effects_and_return_values(self, mock_library): mock_library.niRFSG_UnlockSession.return_value = 0 mock_library.niRFSG_WaitUntilSettled.side_effect = MockFunctionCallError("niRFSG_WaitUntilSettled") mock_library.niRFSG_WaitUntilSettled.return_value = 0 - mock_library.niRFSG_WriteArbWaveform.side_effect = MockFunctionCallError("niRFSG_WriteArbWaveform") - mock_library.niRFSG_WriteArbWaveform.return_value = 0 - mock_library.niRFSG_WriteArbWaveformF32.side_effect = MockFunctionCallError("niRFSG_WriteArbWaveformF32") - mock_library.niRFSG_WriteArbWaveformF32.return_value = 0 mock_library.niRFSG_WriteP2PEndpointI16.side_effect = MockFunctionCallError("niRFSG_WriteP2PEndpointI16") mock_library.niRFSG_WriteP2PEndpointI16.return_value = 0 mock_library.niRFSG_WriteScript.side_effect = MockFunctionCallError("niRFSG_WriteScript") diff --git a/src/nirfsg/metadata/attributes.py b/src/nirfsg/metadata/attributes.py index 1a42c19a92..b87dca55af 100644 --- a/src/nirfsg/metadata/attributes.py +++ b/src/nirfsg/metadata/attributes.py @@ -53,7 +53,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies whether to cache the value of attributes. When caching is enabled, NI-RFSG tracks the current NI-RFSG device settings and avoids sending redundant commands to the device. NI-RFSG can always cache or never cache particular attributes, regardless of the setting of this attribute. Call the nirfsg_InitWithOptions function to override the default value.\n\n **Default Value:** VI_TRUE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n **Defined Values**:\n ', + 'description': ' Specifies whether to cache the value of attributes. When caching is enabled, NI-RFSG tracks the current NI-RFSG device settings and avoids sending redundant commands to the device. NI-RFSG can always cache or never cache particular attributes, regardless of the setting of this attribute. Call the nirfsg_InitWithOptions function to override the default value.\n\n **Default Value:** VI_TRUE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Defined Values**:\n ', 'table_body': [ [ 'VI_TRUE', @@ -330,7 +330,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies the source terminal for the Start Trigger. This attribute is used when the NIRFSG_ATTR_START_TRIGGER_TYPE attribute is set to digital edge. The NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute is not case-sensitive. To set the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeStartTrigger\n **Defined Values**:\n ', + 'description': ' Specifies the source terminal for the Start Trigger. This attribute is used when the NIRFSG_ATTR_START_TRIGGER_TYPE attribute is set to digital edge. The NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute is not case-sensitive. To set the NIRFSG_ATTR_DIGITAL_EDGE_START_TRIGGER_SOURCE attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5654/5654 with PXIe-5696: The Start Trigger is valid only with a timer-based list when RF list mode is enabled.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeStartTrigger\n \n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_PFI0_STR', @@ -678,7 +678,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Enables or disables automatic thermal correction. When this attribute is enabled, changes to settings cause NI-RFSG to check whether the device temperature has changed and adjusts the settings as needed. When this attribute is disabled, you must explicitly call the nirfsg_PerformThermalCorrection function to adjust the device for temperature changes.\n\n **Default Value:** NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Temperature Monitoring `_\n\n `Settling Times `_\n **Defined Values**:\n ', + 'description': ' Enables or disables automatic thermal correction. When this attribute is enabled, changes to settings cause NI-RFSG to check whether the device temperature has changed and adjusts the settings as needed. When this attribute is disabled, you must explicitly call the nirfsg_PerformThermalCorrection function to adjust the device for temperature changes.\n\n **Default Value:** NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Temperature Monitoring `_\n\n `Settling Times `_\n\n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_DISABLE', @@ -994,7 +994,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies the source terminal for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to digital edge. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeScriptTrigger\n **Defined Values**:\n ', + 'description': ' Specifies the source terminal for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to digital edge. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeScriptTrigger\n \n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_PFI0_STR', @@ -1135,7 +1135,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies the active edge for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to digital edge. To set the NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_EDGE attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_RISING_EDGE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Edge Trigger `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeScriptTrigger\n **Defined Values**:\n ', + 'description': ' Specifies the active edge for the Script Trigger. This attribute is used when the NIRFSG_ATTR_SCRIPT_TRIGGER_TYPE attribute is set to digital edge. To set the NIRFSG_ATTR_DIGITAL_EDGE_SCRIPT_TRIGGER_EDGE attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_RISING_EDGE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Edge Trigger `_\n \n **High-Level Functions**:\n\n - nirfsg_ConfigureDigitalEdgeScriptTrigger\n \n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_FALLING_EDGE', @@ -2683,203 +2683,6 @@ 'name': 'ARB_OSCILLATOR_PHASE_DAC_VALUE', 'type': 'ViInt32' }, - 1150096: { - 'access': 'read-write', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Specifies the name of the configuration list to make active. When you get or set an attribute and it is in the configuration list configuration, the attribute is set to or read from the active list step of the active configuration list.\n\n If the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute is set to "" (empty string), no list is active.\n\n **Default Value:** ""\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n \n **High-Level Functions**:\n\n - nirfsg_CreateConfigurationList\n ', - 'note': 'For the PXIe-5650/5651/5652 and PXIe-5673E, when this attribute is set to a valid list name, the NIRFSG_ATTR_FREQUENCY_SETTLING_UNITS attribute supports only NIRFSG_VAL_TIME_AFTER_IO as a valid value.' - }, - 'lv_property': 'Configuration List:Active List', - 'name': 'ACTIVE_CONFIGURATION_LIST', - 'type': 'ViString' - }, - 1150097: { - 'access': 'read-write', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Specifies the step in the configuration list for `RF list mode `_ that you want to make active for configuration or initiation.\n\n Activating a list makes all attributes in the list reflect the value of the attributes that correspond to the set specified by the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST and the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attributes.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n \n **High-Level Functions**:\n\n - nirfsg_CreateConfigurationListStep' - }, - 'lv_property': 'Configuration List:Active Step', - 'name': 'ACTIVE_CONFIGURATION_LIST_STEP', - 'type': 'ViInt64' - }, - 1150098: { - 'access': 'read-write', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Specifies the type of trigger to use as the Configuration List Step Trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Default Value:** NIRFSG_VAL_NONE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n **Defined Values**:\n ', - 'table_body': [ - [ - 'NIRFSG_VAL_DIGITAL_EDGE', - '1 (0x1)', - 'Data operation does not start until a digital edge is detected. The source of the digital edge is specified in the NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE attribute, and the active edge is always rising.' - ], - [ - 'NIRFSG_VAL_NONE', - '0 (0x0)', - 'Generation starts immediately, but the list does not advance.' - ] - ], - 'table_header': [ - 'Name', - 'Value', - 'Description' - ] - }, - 'enum': 'ConfigListTrigType', - 'lv_property': 'Triggers:Configuration List Step:Edge', - 'name': 'CONFIGURATION_LIST_STEP_TRIGGER_TYPE', - 'type': 'ViInt32' - }, - 1150099: { - 'access': 'read-write', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Specifies the source terminal for the Configuration List Step Trigger. This attribute is valid only when the configuration list step type attribute is set to digital edge.\n\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n\n `Marker Events `_\n **Defined Values**:\n ', - 'table_body': [ - [ - 'NIRFSG_VAL_MARKER0_EVENT_STR', - 'Marker0Event', - 'The trigger is received from the Marker Event 0.' - ], - [ - 'NIRFSG_VAL_MARKER1_EVENT_STR', - 'Marker1Event', - 'The trigger is received from the Marker Event 1.' - ], - [ - 'NIRFSG_VAL_MARKER2_EVENT_STR', - 'Marker2Event', - 'The trigger is received from the Marker Event 2.' - ], - [ - 'NIRFSG_VAL_MARKER3_EVENT_STR', - 'Marker3Event', - 'The trigger is received from the Marker Event 3.' - ], - [ - 'NIRFSG_VAL_PFI0_STR', - 'PFI0', - 'The trigger is received on PFI 0.' - ], - [ - 'NIRFSG_VAL_PFI1_STR', - 'PFI1', - 'The trigger is received on PFI 1.' - ], - [ - 'NIRFSG_VAL_PXI_STAR_STR', - 'PXI_Star', - 'The trigger is received on the PXI star trigger line. This value is not valid for the PXIe-5644/5645/5646.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG0_STR', - 'PXI_Trig0', - 'The trigger is received on PXI trigger line 0.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG1_STR', - 'PXI_Trig1', - 'The trigger is received on PXI trigger line 1.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG2_STR', - 'PXI_Trig2', - 'The trigger is received on PXI trigger line 2.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG3_STR', - 'PXI_Trig3', - 'The trigger is received on PXI trigger line 3.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG4_STR', - 'PXI_Trig4', - 'The trigger is received on PXI trigger line 4.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG5_STR', - 'PXI_Trig5', - 'The trigger is received on PXI trigger line 5.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG6_STR', - 'PXI_Trig6', - 'The trigger is received on PXI trigger line 6.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG7_STR', - 'PXI_Trig7', - 'The trigger is received on PXI trigger line 7.' - ], - [ - 'NIRFSG_VAL_PXIE_DSTARB_STR', - 'PXIe_DStarB', - 'The trigger is received on the PXIe DStar B trigger line. This value is valid on only the PXIe-5820/5840/5841/5842.' - ], - [ - 'NIRFSG_VAL_TIMER_EVENT_STR', - 'TimerEvent', - 'The trigger is received from the Timer Event.' - ], - [ - 'NIRFSG_VAL_TRIG_IN_STR', - 'TrigIn', - 'The trigger is received on the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' - ], - [ - 'NIRFSG_VAL_DIO0_STR', - 'DIO/PFI0', - 'The trigger is received on PFI0 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO1_STR', - 'DIO/PFI1', - 'The trigger is received on PFI1 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO2_STR', - 'DIO/PFI2', - 'The trigger is received on PFI2 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO3_STR', - 'DIO/PFI3', - 'The trigger is received on PFI3 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO4_STR', - 'DIO/PFI4', - 'The trigger is received on PFI4 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO5_STR', - 'DIO/PFI5', - 'The trigger is received on PFI5 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO6_STR', - 'DIO/PFI6', - 'The trigger is received on PFI6 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO7_STR', - 'DIO/PFI7', - 'The trigger is received on PFI7 from the front panel DIO terminal.' - ] - ], - 'table_header': [ - 'Name', - 'Value', - 'Description' - ] - }, - 'enum': 'ConfigListTrigDigEdgeSource', - 'lv_property': 'Triggers:Configuration List Step:Digital Edge:Source', - 'name': 'DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE', - 'type': 'ViString' - }, 1150100: { 'access': 'read-write', 'attribute_class': 'AttributeViReal64TimeDeltaSeconds', @@ -2893,55 +2696,6 @@ 'type': 'ViReal64', 'type_in_documentation': 'hightime.timedelta, datetime.timedelta, or float in seconds' }, - 1150102: { - 'access': 'read-write', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Specifies whether the configuration list runs only once or continuously.\n\n **Default Value:** NIRFSG_VAL_CONTINUOUS\n\n **Supported Devices:** PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n **Defined Values**:\n ', - 'table_body': [ - [ - 'NIRFSG_VAL_CONTINUOUS', - '0', - 'NI-RFSG runs the configuration list continuously.' - ], - [ - 'NIRFSG_VAL_SINGLE', - '1', - 'NI-RFSG runs the configuration list only once.' - ] - ], - 'table_header': [ - 'Name', - 'Value', - 'Description' - ] - }, - 'enum': 'ConfigurationListRepeat', - 'lv_property': 'Configuration List:Configuration List Repeat', - 'name': 'CONFIGURATION_LIST_REPEAT', - 'type': 'ViInt32' - }, - 1150103: { - 'access': 'read-write', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Specifies the active edge for the Configuration List Step trigger. This attribute is valid only when the NIRFSG_ATTR_CONFIGURATION_LIST_STEP_TRIGGER_TYPE attribute is set to digital edge. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n **Defined Values**:\n ', - 'table_body': [ - [ - 'NIRFSG_VAL_RISING_EDGE', - 'Specifies the rising edge as the active edge. The rising edge occurs when the signal transitions from low level to high level.' - ] - ], - 'table_header': [ - 'Name', - 'Description' - ] - }, - 'enum': 'ConfigListTrigDigEdgeEdge', - 'lv_property': 'Triggers:Configuration List Step:Digital Edge:Edge', - 'name': 'DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_EDGE', - 'type': 'ViInt32' - }, 1150104: { 'access': 'read-write', 'codegen_method': 'public', @@ -2953,124 +2707,6 @@ 'name': 'CORRECTION_TEMPERATURE', 'type': 'ViReal64' }, - 1150105: { - 'access': 'read-write', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Specifies the destination terminal for exporting the Configuration List Step trigger. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n [RF List Mode](RFSG.chm/RF_List_Mode_Overview.html)\n\n [PFI Lines](RFSG.chm/integration_PFI_Lines.html)\n\n [PXI Trigger Lines](RFSG.chm/integration_PXI_Trigger.html)\n\n **Defined Values**:\n ', - 'table_body': [ - [ - 'NIRFSG_VAL_DO_NOT_EXPORT_STR', - '', - 'The signal is not exported.' - ], - [ - 'NIRFSG_VAL_PFI0_STR', - 'PFI0', - 'The signal is exported to the PFI 0 connector. For the PXIe-5841 with PXIe-5655, the signal is exported to the PXIe-5841 PFI 0.' - ], - [ - 'NIRFSG_VAL_PFI1_STR', - 'PFI1', - 'The signal is exported to the PFI 1 connector.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG0_STR', - 'PXI_Trig0', - 'The trigger is received on PXI trigger line 0.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG1_STR', - 'PXI_Trig1', - 'The trigger is received on PXI trigger line 1.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG2_STR', - 'PXI_Trig2', - 'The trigger is received on PXI trigger line 2.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG3_STR', - 'PXI_Trig3', - 'The trigger is received on PXI trigger line 3.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG4_STR', - 'PXI_Trig4', - 'The trigger is received on PXI trigger line 4.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG5_STR', - 'PXI_Trig5', - 'The trigger is received on PXI trigger line 5.' - ], - [ - 'NIRFSG_VAL_PXI_TRIG6_STR', - 'PXI_Trig6', - 'The trigger is received on PXI trigger line 6.' - ], - [ - 'NIRFSG_VAL_PXIE_DSTARC_STR', - 'PXIe_DStarC', - 'The signal is exported to the PXIe DStar C trigger line. This value is valid on only the PXIe-5820/5840/5841/5842.' - ], - [ - 'NIRFSG_VAL_TRIG_OUT_STR', - 'TrigOut', - 'The signal is exported to the TRIG IN/OUT terminal. This value is valid on only the PXIe-5654/5654 with PXIe-5696.' - ], - [ - 'NIRFSG_VAL_DIO0_STR', - 'DIO/PFI0', - 'The trigger is received on PFI0 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO1_STR', - 'DIO/PFI1', - 'The trigger is received on PFI1 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO2_STR', - 'DIO/PFI2', - 'The trigger is received on PFI2 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO3_STR', - 'DIO/PFI3', - 'The trigger is received on PFI3 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO4_STR', - 'DIO/PFI4', - 'The trigger is received on PFI4 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO5_STR', - 'DIO/PFI5', - 'The trigger is received on PFI5 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO6_STR', - 'DIO/PFI6', - 'The trigger is received on PFI6 from the front panel DIO terminal.' - ], - [ - 'NIRFSG_VAL_DIO7_STR', - 'DIO/PFI7', - 'The trigger is received on PFI7 from the front panel DIO terminal.' - ] - ], - 'table_header': [ - 'Name', - 'Value', - 'Description' - ] - }, - 'enum': 'ConfigListTrigExportOutputTerm', - 'lv_property': 'Triggers:Configuration List Step:Export Output Terminal', - 'name': 'EXPORTED_CONFIGURATION_LIST_STEP_TRIGGER_OUTPUT_TERMINAL', - 'type': 'ViString' - }, 1150112: { 'access': 'read only', 'codegen_method': 'public', @@ -3128,16 +2764,6 @@ ], 'type': 'ViString' }, - 1150117: { - 'access': 'read only', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Returns the fully-qualified signal name as a string.\n\n **Default Values**:\n\n PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696: /*ModuleName*/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX.\n\n PXIe-5673E: /*AWGName*/ConfigurationListStepTrigger, where *AWGName* is the name of your associated AWG module in MAX.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842: /*ModuleName*/ao/0/ConfigurationListStepTrigger, where *ModuleName* is the name of your device in MAX.\n\n **Supported Devices:** PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Triggers `_\n\n `Syntax for Terminal Names `_\n \n **High-Level Functions**:\n\n - nirfsg_GetTerminalName' - }, - 'lv_property': 'Triggers:Configuration List Step:Terminal Name', - 'name': 'CONFIGURATION_LIST_STEP_TRIGGER_TERMINAL_NAME', - 'type': 'ViString' - }, 1150118: { 'access': 'read-write', 'codegen_method': 'public', @@ -3164,16 +2790,6 @@ 'name': 'YIG_MAIN_COIL_DRIVE', 'type': 'ViInt32' }, - 1150122: { - 'access': 'read only', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Returns the configuration list step that is currently programmed to the hardware. The list is zero-indexed. You can query this attribute only when a list is executed.\n\n PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673E: This attribute can be read only when a configuration list is running.\n\n PXIe-5644/5645/5646: This attribute always returns 0 when the configuration list is not running.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842: If the configuration list is not running, this attribute returns the last step of a configuration list that is programmed to the hardware. If the device was last initiated without an active configuration list, this attribute returns 0.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `RF List Mode `_\n ' - }, - 'lv_property': 'Configuration List:Step In Progress', - 'name': 'CONFIGURATION_LIST_STEP_IN_PROGRESS', - 'type': 'ViInt64' - }, 1150123: { 'access': 'read-write', 'codegen_method': 'public', @@ -3817,7 +3433,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies the Marker Event at which RF blanking occurs. RF blanking quickly attenuates the RF OUT signal. Use Marker Events to toggle the state of RF blanking. The RF Output always starts in the unblanked state.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n You can specify Marker Events by using scripts to trigger blanking at a certain point in a waveform. For example, if you set this attribute to marker0 str}, and marker0 occurs on samples 1,000 and 2,000 of a script, then the RF Output will be blanked (attenuated) between samples 1,000 and 2,000.\n\n PXIe-5645: This attribute is ignored if you are using the I/Q ports.\n\n PXIe-5840/5841: RF blanking does not occur for frequencies below 120MHz.\n\n For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any nirfsg_Reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking attributes. Alternatively, you can call nirfsg_ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit**parameter.\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n \n **Valid Values**:\n ', + 'description': ' Specifies the Marker Event at which RF blanking occurs. RF blanking quickly attenuates the RF OUT signal. Use Marker Events to toggle the state of RF blanking. The RF Output always starts in the unblanked state.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n You can specify Marker Events by using scripts to trigger blanking at a certain point in a waveform. For example, if you set this attribute to marker0 str}, and marker0 occurs on samples 1,000 and 2,000 of a script, then the RF Output will be blanked (attenuated) between samples 1,000 and 2,000.\n\n PXIe-5645: This attribute is ignored if you are using the I/Q ports.\n\n PXIe-5840/5841: RF blanking does not occur for frequencies below 120MHz.\n\n For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any nirfsg_Reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking attributes. Alternatively, you can call nirfsg_ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter.\n\n **Default Value:** "" (empty string)\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Marker Events `_\n \n **Valid Values**:\n ', 'note': 'The shortest supported blanking interval is eight microseconds.', 'table_body': [ [ @@ -3935,30 +3551,6 @@ 'name': 'ATTENUATOR_SETTING', 'type': 'ViReal64' }, - 1150175: { - 'access': 'read only', - 'codegen_method': 'public', - 'documentation': { - 'description': ' Returns whether the configuration list is still running or done. To read this attribute, the device must be in the Generation state.\n\n **Supported Devices:** PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXIe-5673E\n\n **Related Topics**\n\n `RF List Mode `_\n\n `Using RF List Mode `_\n **Defined Values**:\n ', - 'table_body': [ - [ - 'VI_TRUE', - 'The configuration list is done.' - ], - [ - 'VI_FALSE', - 'The configuration list is still running.' - ] - ], - 'table_header': [ - 'Value', - 'Description' - ] - }, - 'lv_property': 'Configuration List:Configuration List Is Done', - 'name': 'CONFIGURATION_LIST_IS_DONE', - 'type': 'ViBoolean' - }, 1150180: { 'access': 'read-write', 'codegen_method': 'public', @@ -4046,7 +3638,7 @@ 'access': 'read only', 'codegen_method': 'public', 'documentation': { - 'description': ' Returns whether the NI RF signal generator has the fast tuning option available.\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Frequency Tuning Times `_\n\n **Defined Values**:\n ', + 'description': ' Returns whether the NI RF signal generator has the fast tuning option available.\n\n **Supported Devices:** PXIe-5654/5654 with PXIe-5696\n\n **Related Topics**\n\n `Frequency Tuning Times for 5654 `_\n\n **Defined Values**:\n ', 'table_body': [ [ 'VI_TRUE', @@ -4633,7 +4225,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies the type of de-embedding to apply to measurements on the specified port.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViInt32 function to specify the name of the port to configure for de-embedding.\n\n If you set this attribute to NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR or NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR, NI-RFSG adjusts the instrument settings and the returned data to remove the effects of the external network between the instrument and the DUT.\n\n **Default Value**: NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR\n\n **Valid Values for PXIe-5830/5832/5840/5841/5842/5860** : NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR or NIRFSG_VAL_DEEMBEDDING_TYPE_NONE\n\n **Valid Values for PXIe-5831** NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR, NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR, or NIRFSG_VAL_DEEMBEDDING_TYPE_NONE. NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR is only supported for TRX Ports in a Semiconductor Test System (STS).\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n **Defined Values**:\n ', + 'description': ' Specifies the type of de-embedding to apply to measurements on the specified port.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViInt32 function to specify the name of the port to configure for de-embedding.\n\n If you set this attribute to NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR or NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR, NI-RFSG adjusts the instrument settings and the returned data to remove the effects of the external network between the instrument and the DUT.\n\n **Default Value**: NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR\n\n **Valid Values for PXIe-5830/5832/5840/5841/5842/5860** : NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR or NIRFSG_VAL_DEEMBEDDING_TYPE_NONE\n\n **Valid Values for PXIe-5831** NIRFSG_VAL_DEEMBEDDING_TYPE_SCALAR, NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR, or NIRFSG_VAL_DEEMBEDDING_TYPE_NONE. NIRFSG_VAL_DEEMBEDDING_TYPE_VECTOR is only supported for TRX Ports in a Semiconductor Test System (STS).\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_DEEMBEDDING_TYPE_NONE', @@ -4764,7 +4356,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Enables the detection of burst start and burst stop locations in the waveform. You can read the detected burst start and burst stop locations using nirfsg_GetWaveformBurstStartLocations and nirfsg_GetWaveformBurstStopLocations functions respectively.\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices:**PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'description': ' Enables the detection of burst start and burst stop locations in the waveform. You can read the detected burst start and burst stop locations using nirfsg_GetWaveformBurstStartLocations and nirfsg_GetWaveformBurstStopLocations functions respectively.\n\n **Default Value:** NIRFSG_VAL_DISABLE\n\n **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', 'note': '- When you download a waveform using nirfsg_ReadAndDownloadWaveformFromFileTdms function and if NIRFSG_ATTR_WAVEFORM_RF_BLANKING attribute is enabled, you must set the NIRFSG_ATTR_WRITE_WAVEFORM_BURST_DETECTION attribute to NIRFSG_VAL_DISABLE.\n\n - For PXIe-5830/5831/5832: The RF Blanking reserves a PXI trigger line. If you are calling any nirfsg_Reset or `niRFSA_reset `_ on the same device, NI recommends calling it before committing blanking attributes. Alternatively, you can call nirfsg_ResetWithOptions or `niRFSA_ResetWithOptions `_. Select **Routes** in the **steps to omit** parameter.', 'table_body': [ [ @@ -5157,7 +4749,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Enables or disables compensation for filter group delay on the AWG module. This attribute also accounts for the upconverter group delay and aligns the RF output with the Started Event, Done Event, and Marker Events.\n\n At a low I/Q rate, the group delay can become so large that some devices may not be able to align the events with the RF output, in which case you must increase the I/Q rate or disable this attribute.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5672\n **Defined Values**:\n ', + 'description': ' Enables or disables compensation for filter group delay on the AWG module. This attribute also accounts for the upconverter group delay and aligns the RF output with the Started Event, Done Event, and Marker Events.\n\n At a low I/Q rate, the group delay can become so large that some devices may not be able to align the events with the RF output, in which case you must increase the I/Q rate or disable this attribute.\n\n **Default Value:** VI_FALSE\n\n **Supported Devices:** PXIe-5672\n \n **Defined Values**:\n ', 'table_body': [ [ 'VI_TRUE', @@ -5333,7 +4925,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' This attribute specifies the I/Q rate of the arbitrary waveform. The I/Q rate is coerced to a value the hardware can achieve. Read this value back after setting it to see the actual I/Q rate. NI-RFSG internally uses an FIR filter with flat response up to (0.4 × IQ rate). Given a desired signal with the maximum frequency content *f*, sample the signal at an I/Q rate greater than or equal to ( *f*/0.4).\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n \n Setting this attribute to 50 MS/s on the PXI-5670/5671 and PXIe-5672 has the following implications:\n - NI-RFSG is forced to place the carrier frequency at 18 MHz ± 1 MHz to avoid aliasing. This means that NI-RFSG cannot select a carrier frequency that could optimize waveform size if phase continuity is enabled. \n - Output signal bandwidth must be <5 MHz to avoid aliasing. \n - Close-in phase noise is higher.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n\n `Assigning Properties or Attributes to a Waveform `_—Refer to this topic for more information about using this attribute to associate an I/Q rate with a waveform.\n\n `Digital Upconverter `_\n **Valid Values**:\n ', + 'description': ' This attribute specifies the I/Q rate of the arbitrary waveform. The I/Q rate is coerced to a value the hardware can achieve. Read this value back after setting it to see the actual I/Q rate. NI-RFSG internally uses an FIR filter with flat response up to (0.4 × IQ rate). Given a desired signal with the maximum frequency content *f*, sample the signal at an I/Q rate greater than or equal to ( *f*/0.4).\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT.\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n \n Setting this attribute to 50 MS/s on the PXI-5670/5671 and PXIe-5672 has the following implications:\n - NI-RFSG is forced to place the carrier frequency at 18 MHz ± 1 MHz to avoid aliasing. This means that NI-RFSG cannot select a carrier frequency that could optimize waveform size if phase continuity is enabled. \n - Output signal bandwidth must be <5 MHz to avoid aliasing. \n - Close-in phase noise is higher.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming `_\n\n `Assigning Properties or Attributes to a Waveform `_—Refer to this topic for more information about using this attribute to associate an I/Q rate with a waveform.\n\n `Digital Upconverter `_\n \n **Valid Values**:\n ', 'note': 'Use this attribute to associate an I/Q rate with a waveform.', 'table_body': [ [ @@ -5362,7 +4954,7 @@ ], [ '', - '*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.' + '\\*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.' ], [ 'PXIe-5672 ', diff --git a/src/nirfsg/metadata/enums.py b/src/nirfsg/metadata/enums.py index 55444d7e92..46c079047d 100644 --- a/src/nirfsg/metadata/enums.py +++ b/src/nirfsg/metadata/enums.py @@ -2308,7 +2308,7 @@ }, { 'documentation': { - 'description': 'This value is valid on only the PXIe-5831/5832 with PXIe-5653.**PXIe-5831/5832 with PXIe-5653—**NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use %enum_value{reference clock source.pxi clk str} as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' + 'description': 'This value is valid on only the PXIe-5831/5832 with PXIe-5653. **PXIe-5831/5832 with PXIe-5653 —** NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use NIRFSG_VAL_PXI_CLK_STR %enum_value as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' }, 'name': 'NIRFSG_VAL_PXI_CLK_MASTER_STR', 'value': 'PXI_ClkMaster' diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index 0febbd926d..0769a93c4c 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -535,56 +535,6 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'CheckIfConfigurationListExists': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Returns whether the configuration list that you specify as NIRFSG_ATTR_LIST_NAME exists.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the name of the configuration list. This string is case-insensitive.' - }, - 'name': 'listName', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Returns VI_TRUE if the configuration list exists.' - }, - 'name': 'listExists', - 'type': 'ViBoolean', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, 'CheckIfScriptExists': { 'codegen_method': 'public', 'documentation': { @@ -716,13 +666,12 @@ 'use_session_lock': True }, 'ClearArbWaveform': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this function.' }, 'included_in_proto': True, 'is_error_handling': False, - 'method_name_for_documentation': 'delete_waveform', 'method_templates': [ { 'documentation_filename': 'default_method', @@ -1008,56 +957,6 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'ConfigureDigitalEdgeConfigurationListStepTrigger': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Configures the Configuration List Step trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before you call this function.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the trigger source terminal for the digital edge Configuration List Step trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_SOURCE attribute to this value. Refer to this attribute for possible values.' - }, - 'name': 'source', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the active edge for the digital edge Configuration List Step trigger. NI-RFSG sets the NIRFSG_ATTR_DIGITAL_EDGE_CONFIGURATION_LIST_STEP_TRIGGER_EDGE attribute to this value.' - }, - 'name': 'edge', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, 'ConfigureDigitalEdgeScriptTrigger': { 'codegen_method': 'public', 'documentation': { @@ -1694,10 +1593,10 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'CreateConfigurationList': { + 'CreateDeembeddingSparameterTableS2PFile': { 'codegen_method': 'public', 'documentation': { - 'description': 'Creates an empty configuration list. Use the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute to enable a configuration list created by this function. Call the niRFSG_CreateConfigurationListStep function to add steps to the configuration list.' + 'description': 'Creates an S-parameter de-embedding table for the port based on the specified S2P file.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1723,9 +1622,9 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words.' + 'description': 'yet to be defined' }, - 'name': 'listName', + 'name': 'port', 'type': 'ViConstString', 'use_array': False, 'use_in_python_api': True @@ -1733,34 +1632,30 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies size of the NIRFSG_ATTR_CONFIGURATION_LIST_ATTRIBUTES parameter.' + 'description': 'yet to be defined' }, - 'name': 'numberOfAttributes', - 'type': 'ViInt32', + 'name': 'tableName', + 'type': 'ViConstString', 'use_array': False, 'use_in_python_api': True }, { 'direction': 'in', 'documentation': { - 'description': 'Specifies the attributes that you intend to change between configuration list steps. Calling the niRFSG_CreateConfigurationList function allocates space for each of the configuration list attributes. When you use an NI-RFSG Set attribute function to set one of the attributes in the configuration list, that attribute is set for one of the configuration list steps. Use the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attribute to specify which configuration list step to configure.' - }, - 'name': 'configurationListAttributes', - 'size': { - 'mechanism': 'len', - 'value': 'numberOfAttributes' + 'description': 'yet to be defined' }, - 'type': 'ViAttr[]', + 'name': 's2pFilePath', + 'type': 'ViConstString', 'use_array': False, 'use_in_python_api': True }, { 'direction': 'in', 'documentation': { - 'description': 'Sets this list as the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute when this parameter is enabled. NI recommends that you set this parameter to VI_TRUE when creating the list.' + 'description': 'yet to be defined' }, - 'name': 'setAsActiveList', - 'type': 'ViBoolean', + 'name': 'sparameterOrientation', + 'type': 'ViInt32', 'use_array': False, 'use_in_python_api': True } @@ -1768,10 +1663,10 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'CreateConfigurationListStep': { + 'DeleteAllDeembeddingTables': { 'codegen_method': 'public', 'documentation': { - 'description': 'Creates a new configuration list step in the configuration list specified by the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute. When you create a configuration list step, a new instance of each attribute specified by the configuration list attributes is created. Configuration list attributes are specified when a configuration list is created. The new instance of an attribute can be accessed with any Set attribute function using the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST and NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attributes.' + 'description': 'Deletes all configured de-embedding tables for the session.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1793,25 +1688,15 @@ 'type': 'ViSession', 'use_array': False, 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Sets this step as the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attribute list specified by the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute. NI recommends that you set this parameter to VI_TRUE when creating the list steps.' - }, - 'name': 'setAsActiveStep', - 'type': 'ViBoolean', - 'use_array': False, - 'use_in_python_api': True } ], 'returns': 'ViStatus', 'use_session_lock': True }, - 'CreateDeembeddingSparameterTableS2PFile': { + 'DeleteDeembeddingTable': { 'codegen_method': 'public', 'documentation': { - 'description': 'Creates an S-parameter de-embedding table for the port based on the specified S2P file.' + 'description': 'Deletes the selected de-embedding table for a given port.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1837,7 +1722,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'yet to be defined' + 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." }, 'name': 'port', 'type': 'ViConstString', @@ -1847,41 +1732,21 @@ { 'direction': 'in', 'documentation': { - 'description': 'yet to be defined' + 'description': 'Specifies the name of the table.' }, 'name': 'tableName', 'type': 'ViConstString', 'use_array': False, 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'yet to be defined' - }, - 'name': 's2pFilePath', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'yet to be defined' - }, - 'name': 'sparameterOrientation', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True } ], 'returns': 'ViStatus', 'use_session_lock': True }, - 'DeleteAllDeembeddingTables': { + 'Disable': { 'codegen_method': 'public', 'documentation': { - 'description': 'Deletes all configured de-embedding tables for the session.' + 'description': ' Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1908,10 +1773,10 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'DeleteConfigurationList': { + 'DisableScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': "Deletes a previously created configuration list and all the configuration list steps in the specified configuration list. When a configuration list step is deleted, all the instances of the attributes associated with the configuration list step are also removed. When you delete the active configuration list, NI-RFSG automatically resets the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST attribute to '' (empty string), which indicates no list is active, and the NIRFSG_ATTR_ACTIVE_CONFIGURATION_LIST_STEP attribute to 0." + 'description': ' Configures the device not to wait for the specified Script Trigger. Call this function only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this function.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1937,9 +1802,9 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the name of the configuration list. This string is case-insensitive and alphanumeric, and it cannot contain spaces or use reserved words.' + 'description': 'Specifies the Script trigger to configure.' }, - 'name': 'listName', + 'name': 'triggerId', 'type': 'ViConstString', 'use_array': False, 'use_in_python_api': True @@ -1948,10 +1813,10 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'DeleteDeembeddingTable': { + 'DisableStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Deletes the selected de-embedding table for a given port.' + 'description': ' Configures the device not to wait for a Start Trigger. This function is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this function.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1973,35 +1838,15 @@ 'type': 'ViSession', 'use_array': False, 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." - }, - 'name': 'port', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the name of the table.' - }, - 'name': 'tableName', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True } ], 'returns': 'ViStatus', 'use_session_lock': True }, - 'Disable': { + 'ExportSignal': { 'codegen_method': 'public', 'documentation': { - 'description': ' Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected.' + 'description': 'Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this function.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2023,15 +1868,45 @@ 'type': 'ViSession', 'use_array': False, 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': ' Specifies the type of signal to route.' + }, + 'name': 'signal', + 'type': 'ViInt32', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': "Specifies which instance of the selected signal to export. This parameter is useful when you set the NIRFSG_ATTR_SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the NIRFSG_ATTR_SIGNAL_IDENTIFIER parameter to '' (empty string)." + }, + 'name': 'signalIdentifier', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841.' + }, + 'name': 'outputTerminal', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True } ], 'returns': 'ViStatus', 'use_session_lock': True }, - 'DisableConfigurationListStepTrigger': { - 'codegen_method': 'public', + 'GetAttributeViBoolean': { + 'codegen_method': 'private', 'documentation': { - 'description': 'Configures the device not to receive triggers for the configuration list. The configuration list does not advance steps if this trigger is disabled. Call this function only if a previously configured trigger needs to be disabled. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': 'Queries the value of a ViBoolean attribute.Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2053,15 +1928,45 @@ 'type': 'ViSession', 'use_array': False, 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Specifies the waveform name and the marker name.' + }, + 'name': 'channelName', + 'type': 'ViConstString', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'in', + 'documentation': { + 'description': 'Pass the ID of an attribute.' + }, + 'name': 'attribute', + 'type': 'ViAttr', + 'use_array': False, + 'use_in_python_api': True + }, + { + 'direction': 'out', + 'documentation': { + 'description': 'Returns the current value of the attribute. Pass the address of a ViBoolean variable.' + }, + 'name': 'value', + 'type': 'ViBoolean', + 'use_array': False, + 'use_in_python_api': True } ], 'returns': 'ViStatus', 'use_session_lock': True }, - 'DisableScriptTrigger': { - 'codegen_method': 'public', + 'GetAttributeViInt32': { + 'codegen_method': 'private', 'documentation': { - 'description': ' Configures the device not to wait for the specified Script Trigger. Call this function only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': 'Queries the value of a ViInt32 attribute. Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2087,433 +1992,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the Script trigger to configure.' - }, - 'name': 'triggerId', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'DisableStartTrigger': { - 'codegen_method': 'public', - 'documentation': { - 'description': ' Configures the device not to wait for a Start Trigger. This function is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this function.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'ErrorMessage': { - 'codegen_method': 'private', - 'documentation': { - 'description': 'Converts an error code returned by an NI-RFSG function into a user-readable string.' - }, - 'included_in_proto': True, - 'is_error_handling': True, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'The ViSession handle that you obtain from niRFSG_Init or niRFSG_InitWithOptions. The handle identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Pass the status parameter that is returned from any NI-RFSG function.' - }, - 'name': 'errorCode', - 'type': 'ViStatus', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': ' Returns the user-readable message string that corresponds to the status code you specify.' - }, - 'name': 'errorMessage', - 'size': { - 'mechanism': 'fixed', - 'value': 256 - }, - 'type': 'ViChar[]', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': False - }, - 'ErrorQuery': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Reads an error code and an error message from the instrument error queue.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Returns the error code read from the instrument error queue.' - }, - 'name': 'errorCode', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': ' Returns the error message string read from the instrument error message queue.' - }, - 'name': 'errorMessage', - 'size': { - 'mechanism': 'fixed', - 'value': 256 - }, - 'type': 'ViChar[]', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'ExportSignal': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this function.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': ' Specifies the type of signal to route.' - }, - 'name': 'signal', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': "Specifies which instance of the selected signal to export. This parameter is useful when you set the NIRFSG_ATTR_SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the NIRFSG_ATTR_SIGNAL_IDENTIFIER parameter to '' (empty string)." - }, - 'name': 'signalIdentifier', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841.' - }, - 'name': 'outputTerminal', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'GetAllNamedWaveformNames': { - 'codegen_method': 'private', - 'documentation': { - 'description': ' Return names of the waveforms present in the memory.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Returns a string having waveform names separated by commas.' - }, - 'name': 'waveformNames', - 'size': { - 'mechanism': 'ivi-dance', - 'value': 'bufferSize' - }, - 'type': 'ViChar[]', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Pass the number of bytes in the ViChar buffer you specify for the NIRFSG_ATTR_WAVEFORM_NAMES parameter.' - }, - 'name': 'bufferSize', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Fetch the number of bytes needed to pass in the NIRFSG_ATTR_BUFFER_SIZE parameter.' - }, - 'name': 'actualBufferSize', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'GetAllScriptNames': { - 'codegen_method': 'private', - 'documentation': { - 'description': 'Return names of the scripts present in the memory.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Returns a string having script names separated by commas.' - }, - 'name': 'scriptNames', - 'size': { - 'mechanism': 'ivi-dance', - 'value': 'bufferSize' - }, - 'type': 'ViChar[]', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter.' - }, - 'name': 'bufferSize', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Fetch the number of bytes needed to pass in the NIRFSG_ATTR_BUFFER_SIZE parameter.It can be fetch by passing VI_NULL in the NIRFSG_ATTR_SCRIPT_NAMES parameter.' - }, - 'name': 'actualBufferSize', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'GetAttributeViBoolean': { - 'codegen_method': 'private', - 'documentation': { - 'description': 'Queries the value of a ViBoolean attribute.Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' - }, - 'name': 'channelName', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Pass the ID of an attribute.' - }, - 'name': 'attribute', - 'type': 'ViAttr', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Returns the current value of the attribute. Pass the address of a ViBoolean variable.' - }, - 'name': 'value', - 'type': 'ViBoolean', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'GetAttributeViInt32': { - 'codegen_method': 'private', - 'documentation': { - 'description': 'Queries the value of a ViInt32 attribute. Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': 'Specifies the waveform name and the marker name.' }, 'name': 'channelName', 'type': 'ViConstString', @@ -2781,7 +2260,7 @@ 'use_in_python_api': True }, { - 'direction': 'in', + 'direction': 'out', 'documentation': { 'description': 'The buffer in which the function returns the current value of the attribute. The buffer must be of type ViChar and have at least as many bytes as indicated in the **bufferSize** parameter.' }, @@ -2798,143 +2277,8 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'GetChannelName': { - 'codegen_method': 'private', - 'documentation': { - 'description': 'Returns the channel string that is in the channel table at an index you specify.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies a one-based index into the channel table.' - }, - 'name': 'index', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the size of the buffer for the channel string.' - }, - 'name': 'bufferSize', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'yet to be defined.' - }, - 'name': 'name', - 'size': { - 'mechanism': 'ivi-dance', - 'value': 'bufferSize' - }, - 'type': 'ViChar[]', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'GetDeembeddingSparameters': { - 'codegen_method': 'private', - 'documentation': { - 'description': 'Returns the S-parameters used for de-embedding a measurement on the selected port. This includes interpolation of the parameters based on the configured carrier frequency. This function returns an empty array if no de-embedding is done.', - 'note': 'The port orientation for the returned S-parameters is normalized to NIRFSG_VAL_PORT1_TOWARDS_DUT.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. NIRFSG_ATTR_VI is obtained from the niRFSG_Init or niRFSG_InitWithOptions function.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Returns an array of S-parameters. The S-parameters are returned in the following order: s11, s12, s21, s22.' - }, - 'name': 'sparameters', - 'type': 'ni complex number', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the size of the array that is returned by the NIRFSG_ATTR_SPARAMETERS output.' - }, - 'name': 'sparametersArraySize', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Returns the number of S-parameters.' - }, - 'name': 'numberOfSparameters', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Returns the number of S-parameter ports. The **sparameter** array is always *n* x *n*, where span *n* is the number of ports.' - }, - 'name': 'numberOfPorts', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, 'GetError': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Retrieves and then clears the IVI error information for the session or the current execution thread.', 'note': 'If the **bufferSize** parameter is 0, this function does not clear the error information. By passing 0 to the **bufferSize** parameter, you can determine the buffer size required to obtain the entire NIRFSG_ATTR_ERROR_DESCRIPTION string. You can then call this function again with a sufficiently large buffer. If you specify a valid IVI session for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the session. If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the current execution thread. If the NIRFSG_ATTR_VI parameter is an invalid session, this function does nothing and returns an error. Normally, the error information describes the first error that occurred since the user last called this function or the niRFSG_ClearError function.' @@ -3000,7 +2344,7 @@ 'use_session_lock': False }, 'GetExternalCalibrationLastDateAndTime': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' }, @@ -3090,7 +2434,7 @@ 'use_session_lock': True }, 'GetMaxSettablePower': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Returns the maximum settable output power level for the current configuration.' }, @@ -3130,7 +2474,7 @@ 'use_session_lock': True }, 'GetSelfCalibrationDateAndTime': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' }, @@ -3230,7 +2574,7 @@ 'use_session_lock': True }, 'GetSelfCalibrationTemperature': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration.' }, @@ -3280,7 +2624,7 @@ 'use_session_lock': True }, 'GetStreamEndpointHandle': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint.' }, @@ -3299,103 +2643,29 @@ 'direction': 'in', 'documentation': { 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the stream endpoint FIFO to configure.' - }, - 'name': 'streamEndpoint', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'out', - 'documentation': { - 'description': 'Returns the reader endpoint handle that is used with NI-P2P to create a stream with the NI-RFSG device as an endpoint.' - }, - 'name': 'readerHandle', - 'type': 'ViUInt32', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'GetTerminalName': { - 'codegen_method': 'private', - 'documentation': { - 'description': 'Returns the fully-qualified name of the specified signal. The fully-qualified name is helpful to automatically route signals in a multisegment chassis.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the signal to query.' - }, - 'name': 'signal', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': "Specifies which instance of the selected signal to query. This parameter is necessary when you set the NIRFSG_ATTR_SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT . Otherwise, set the NIRFSG_ATTR_SIGNAL_IDENTIFIER parameter to '' (empty string)." - }, - 'name': 'signalIdentifier', - 'type': 'ViConstString', + }, + 'name': 'vi', + 'type': 'ViSession', 'use_array': False, 'use_in_python_api': True }, { 'direction': 'in', 'documentation': { - 'description': 'Pass the number of bytes in the ViChar buffer you specify for the NIRFSG_ATTR_TERMINAL_NAME parameter.' + 'description': 'Specifies the stream endpoint FIFO to configure.' }, - 'name': 'bufferSize', - 'type': 'ViInt32', + 'name': 'streamEndpoint', + 'type': 'ViConstString', 'use_array': False, 'use_in_python_api': True }, { - 'direction': 'in', + 'direction': 'out', 'documentation': { - 'description': 'Returns the string to use as the source for other devices.' - }, - 'name': 'terminalName', - 'size': { - 'mechanism': 'ivi-dance', - 'value': 'bufferSize' + 'description': 'Returns the reader endpoint handle that is used with NI-P2P to create a stream with the NI-RFSG device as an endpoint.' }, - 'type': 'ViChar[]', + 'name': 'readerHandle', + 'type': 'ViUInt32', 'use_array': False, 'use_in_python_api': True } @@ -4132,104 +3402,6 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'ResetWithOptions': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Resets all properties to default values and specifies steps to omit during the reset process, such as signal routes.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies a list of steps to skip during the reset process. The default value is NIRFSG_VAL_RESET_WITH_OPTIONS_NONE, which specifies that no step is omitted during reset.' - }, - 'name': 'stepsToOmit', - 'type': 'ViUInt64', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'RevisionQuery': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Returns the revision numbers of the NI-RFSG driver and the instrument firmware.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Returns the value of the NIRFSG_ATTR_SPECIFIC_DRIVER_REVISION attribute in the form of a string.' - }, - 'name': 'instrumentDriverRevision', - 'size': { - 'mechanism': 'fixed', - 'value': 256 - }, - 'type': 'ViChar[]', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Returns the value of the NIRFSG_ATTR_INSTRUMENT_FIRMWARE_REVISION attribute in the form of a string.' - }, - 'name': 'firmwareRevision', - 'size': { - 'mechanism': 'fixed', - 'value': 256 - }, - 'type': 'ViChar[]', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, 'SaveConfigurationsToFile': { 'codegen_method': 'public', 'documentation': { @@ -4521,7 +3693,7 @@ 'use_session_lock': True }, 'SetArbWaveformNextWritePosition': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Configures the start position to use for writing a waveform before calling the niRFSG_WriteArbWaveform function. This function allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the niRFSG_AllocateArbWaveform function or the niRFSG_WriteArbWaveform function. Subsequent writes to that waveform begin where the last write ended, unless this function is called again.', 'note': 'If you use this function to write the waveform that is currently generating, an undefined output may result.' @@ -5207,188 +4379,6 @@ 'returns': 'ViStatus', 'use_session_lock': True }, - 'WriteArbWaveform': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Writes an arbitrary waveform to the NI-RFSG device. This function configures the I and Q vectors of a complex baseband signal. If the waveform to write is already allocated using the niRFSG_AllocateArbWaveform function, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this function. When streaming is enabled, you can call this function when the PXIe-5672/5673/5673E and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state.', - 'note': 'On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words.' - }, - 'name': 'waveformName', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the number of samples in both the NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays. The NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays must have the same length. If the NIRFSG_ATTR_ARB_WAVEFORM_QUANTUM attribute value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0.' - }, - 'name': 'numberOfSamples', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the in-phase (I) component of the complex baseband signal.' - }, - 'name': 'iData', - 'numpy': True, - 'size': { - 'mechanism': 'passed-in', - 'value': 'numberOfSamples' - }, - 'type': 'ViReal64[]', - 'use_array': True, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the quadrature (Q) component of the complex baseband signal.' - }, - 'name': 'qData', - 'numpy': True, - 'size': { - 'mechanism': 'passed-in', - 'value': 'numberOfSamples' - }, - 'type': 'ViReal64[]', - 'use_array': True, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies whether or not the data block contains the end of the waveform. Set this parameter to VI_TRUE to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set NIRFSG_ATTR_MORE_DATA_PENDING to VI_FALSE to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored.' - }, - 'name': 'moreDataPending', - 'type': 'ViBoolean', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, - 'WriteArbWaveformF32': { - 'codegen_method': 'public', - 'documentation': { - 'description': 'Writes an arbitrary waveform to the NI-RFSG device. This function configures the I and Q vectors of a complex single baseband signal. If the waveform to write is already allocated using the niRFSG_AllocateArbWaveform function, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this function. When streaming is enabled, you can call this function when the PXIe-5672/5673/5673E or PXIe-5820/5830/5831/5832/5840/5841/5842/5860 is in the Generation state.', - 'note': 'On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842/5860, the NIRFSG_ATTR_MORE_DATA_PENDING parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it.' - }, - 'included_in_proto': True, - 'is_error_handling': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'default_method', - 'method_python_name_suffix': '', - 'session_filename': 'default_method' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words.' - }, - 'name': 'waveformName', - 'type': 'ViConstString', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the number of samples in both the NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays. The NIRFSG_ATTR_I_DATA and NIRFSG_ATTR_Q_DATA arrays must have the same length. If the NIRFSG_ATTR_ARB_WAVEFORM_QUANTUM attribute value is *q*, then the number of samples should be a multiple of *q*. The specified number of samples cannot be 0.' - }, - 'name': 'numberOfSamples', - 'type': 'ViInt32', - 'use_array': False, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the in-phase (I) component of the complex baseband signal.' - }, - 'name': 'iData', - 'numpy': True, - 'size': { - 'mechanism': 'passed-in', - 'value': 'numberOfSamples' - }, - 'type': 'ViReal32[]', - 'use_array': True, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies the quadrature (Q) component of the complex baseband signal.' - }, - 'name': 'qData', - 'numpy': True, - 'size': { - 'mechanism': 'passed-in', - 'value': 'numberOfSamples' - }, - 'type': 'ViReal32[]', - 'use_array': True, - 'use_in_python_api': True - }, - { - 'direction': 'in', - 'documentation': { - 'description': 'Specifies whether or not the data block contains the end of the waveform. Set this parameter to VI_TRUE to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the **name** parameter. Set NIRFSG_ATTR_MORE_DATA_PENDING to VI_FALSE to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored.' - }, - 'name': 'moreDataPending', - 'type': 'ViBoolean', - 'use_array': False, - 'use_in_python_api': True - } - ], - 'returns': 'ViStatus', - 'use_session_lock': True - }, 'WriteP2PEndpointI16': { 'codegen_method': 'public', 'documentation': { From 5c4327b4e700d6d06d13736df2201ffd62ed07bb Mon Sep 17 00:00:00 2001 From: Vagupta Date: Mon, 7 Apr 2025 06:54:04 +0000 Subject: [PATCH 05/46] Resolved syntax warnings and self_test definition --- docs/nirfsg/class.rst | 88 ++++++++++++++++------------ docs/nirfsg/enums.rst | 16 ++--- generated/nirfsg/nirfsg/enums.py | 16 ++--- generated/nirfsg/nirfsg/session.py | 93 ++++++++++++++++++------------ src/nirfsg/metadata/attributes.py | 20 +++---- src/nirfsg/metadata/enums.py | 22 +++---- src/nirfsg/metadata/functions.py | 21 ++++++- 7 files changed, 161 insertions(+), 115 deletions(-) diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index 4490adfb5c..313266b32c 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -1989,9 +1989,25 @@ self_test .. py:method:: self_test() - TBD + Runs the instrument self-test routine and returns the test result(s). - + Raises `SelfTestError` on self test failure. Properties on exception object: + + - code - failure code from driver + - message - status message from driver + + +----------------+------------------+ + | Self-Test Code | Description | + +================+==================+ + | 0 | Passed self-test | + +----------------+------------------+ + | 1 | Self-test failed | + +----------------+------------------+ + + .. note:: When used on some signal generators, the device is reset after the + niFgen_self_test method runs. If you use the niFgen_self_test + method, your device may not be in its previously configured state + after the method runs. @@ -4758,7 +4774,7 @@ digital_equalization_enabled .. py:attribute:: digital_equalization_enabled - When this property is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (\>500 kHz), but it increases tuning times. + When this property is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (>500 kHz), but it increases tuning times. On the PXI-5670/5671, equalization is performed in the software, so tuning time is increased. On the PXIe-5672, equalization is performed in the hardware so that there is no compromise in performance. @@ -5254,13 +5270,13 @@ direct_download - 1\. Set the I/Q rate to less than or equal to 8.33MS/s with the :py:attr:`nirfsg.Session.iq_rate` property. + 1. Set the I/Q rate to less than or equal to 8.33MS/s with the :py:attr:`nirfsg.Session.iq_rate` property. - 2\. Set the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. + 2. Set the :py:attr:`nirfsg.Session.power_level_type` property to :py:data:`~nirfsg.PowerLevelType.PEAK`. - 3\. Disable the :py:attr:`nirfsg.Session.iq_swap_enabled` property. + 3. Disable the :py:attr:`nirfsg.Session.iq_swap_enabled` property. - 4\. Disable the :py:attr:`nirfsg.Session.digital_equalization_enabled` property. + 4. Disable the :py:attr:`nirfsg.Session.digital_equalization_enabled` property. **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 @@ -7132,15 +7148,15 @@ iq_out_port_level Refer to the specifications document for your device for allowable output levels. - **Units:** Volts, peak-to-peak (V\ :sub:`pk-pk`\ ) + **Units:** Volts, peak-to-peak (V :sub:`pk-pk` ) **Valid Values:** - PXIe-5645: 1V\ :sub:`pk-pk`\ maximum if you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL`, and 0.5V\ :sub:`pk-pk`\ + PXIe-5645: 1V :sub:`pk-pk` maximum if you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.DIFFERENTIAL`, and 0.5V :sub:`pk-pk` maximum if you set the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property to :py:data:`~nirfsg.IQOutPortTermCfg.SINGLE_ENDED`. - PXIe-5820: 3.4V\ :sub:`pk-pk`\ maximum for signal bandwidth less than 160MHz, and 2V\ :sub:`pk-pk`\ + PXIe-5820: 3.4V :sub:`pk-pk` maximum for signal bandwidth less than 160MHz, and 2V :sub:`pk-pk` maximum for signal bandwidth greater than 160MHz. @@ -7406,16 +7422,14 @@ iq_rate +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5646 | Up to 250 MS/s. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | PXI-5670 | 50 MS/s* | + | PXI-5670 | 50 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.) | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | | 100 MS/s* | + | | 100 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.) | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | PXI-5671 | 50 MS/s* | + | PXI-5671 | 50 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.) | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 100 MS/s | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | | \*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | - +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5672 | Up to 100 MS/s. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5673/5673E | Up to 200 MS/s. Note that - If an PXIe-5450 with module revisions A or B is used as part of your PXIe-5673/5673E, the NI-FGEN NIFGEN_ATTR_COMPENSATE_FOR_FILTER_GROUP_DELAY property is disabled if the requested I/Q rate is less than 1.5 MS/s. | @@ -7533,19 +7547,19 @@ load_configurations_from_file_load_options Specifies the configurations to skip while loading from a file. - **Default Value:** :py:data:`~nirfsg.LoadOptions.SKIP_NONE` + **Default Value:** :py:data:`~nirfsg.NIRFSG_VAL_SKIP_NONE` **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Defined Values**: - +----------------------------------------------+-------------------------------------------------------------------+ - | Value | Description | - +==============================================+===================================================================+ - | :py:data:`~nirfsg.LoadOptions.SKIP_NONE` | NI-RFSG loads all the configurations to the session. | - +----------------------------------------------+-------------------------------------------------------------------+ - | :py:data:`~nirfsg.LoadOptions.SKIP_WAVEFORM` | NI-RFSG skips loading the waveform configurations to the session. | - +----------------------------------------------+-------------------------------------------------------------------+ + +---------------------------------------------+-------------------------------------------------------------------+ + | Value | Description | + +=============================================+===================================================================+ + | :py:data:`~nirfsg.NIRFSG_VAL_SKIP_NONE` | NI-RFSG loads all the configurations to the session. | + +---------------------------------------------+-------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_SKIP_WAVEFORM` | NI-RFSG skips loading the waveform configurations to the session. | + +---------------------------------------------+-------------------------------------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -7574,22 +7588,22 @@ load_configurations_from_file_reset_options Specifies the configurations to skip to reset while loading configurations from a file. - **Default Value:** :py:data:`~nirfsg.ResetOptions.SKIP_NONE` + **Default Value:** :py:data:`~nirfsg.NIRFSG_VAL_SKIP_NONE` **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Defined Values**: - +---------------------------------------------------------+------------------------------------------------------+ - | Value | Description | - +=========================================================+======================================================+ - | :py:data:`~nirfsg.ResetOptions.SKIP_NONE` | NI-RFSG resets all configurations. | - +---------------------------------------------------------+------------------------------------------------------+ - | :py:data:`~nirfsg.ResetOptions.SKIP_WAVEFORMS` | NI-RFSG skips resetting the waveform configurations. | - +---------------------------------------------------------+------------------------------------------------------+ - | :py:data:`~nirfsg.ResetOptions.SKIP_SCRIPTS` | NI-RFSG skips resetting the scripts. | - +---------------------------------------------------------+------------------------------------------------------+ - | :py:data:`~nirfsg.ResetOptions.SKIP_DEEMBEDDING_TABLES` | NI-RFSG skips resetting the de-embedding tables. | - +---------------------------------------------------------+------------------------------------------------------+ + +-------------------------------------------------------+------------------------------------------------------+ + | Value | Description | + +=======================================================+======================================================+ + | :py:data:`~nirfsg.NIRFSG_VAL_SKIP_NONE` | NI-RFSG resets all configurations. | + +-------------------------------------------------------+------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_SKIP_WAVEFORMS` | NI-RFSG skips resetting the waveform configurations. | + +-------------------------------------------------------+------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_SKIP_SCRIPTS` | NI-RFSG skips resetting the scripts. | + +-------------------------------------------------------+------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_SKIP_DEEMBEDDING_TABLES` | NI-RFSG skips resetting the de-embedding tables. | + +-------------------------------------------------------+------------------------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -8586,7 +8600,7 @@ output_port You must write complex I and Q data for all options. The Q data has no effect if you set this property to I Only and set the :py:attr:`nirfsg.Session.iq_out_port_carrier_frequency` property to 0. If you set the :py:attr:`nirfsg.Session.iq_out_port_carrier_frequency` property to a value other than 0, the onboard signal processing (OSP) frequency shifts I and Q as a complex value and outputs the real portion of the result on the I connector(s) of the device. - If you set the :py:attr:`nirfsg.Session.output_port` property to :py:data:`~nirfsg.OutputPort.I_ONLY`\_ONLY or :py:data:`~nirfsg.OutputPort.IQ_OUT`, the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property applies. + If you set the :py:attr:`nirfsg.Session.output_port` property to :py:data:`~nirfsg.OutputPort.I_ONLY` or :py:data:`~nirfsg.OutputPort.IQ_OUT`, the :py:attr:`nirfsg.Session.iq_out_port_terminal_configuration` property applies. **Default Value:** @@ -10366,7 +10380,7 @@ signal_bandwidth Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× :py:attr:`nirfsg.Session.iq_rate`). - NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f*\ :sub:`max`\ - *f*\ :sub:`min`\ . + NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f* :sub:`max` - *f* :sub:`min` . This property applies only when the :py:attr:`nirfsg.Session.generation_mode` property is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` or :py:data:`~nirfsg.GenerationMode.SCRIPT`, except for when using the PXIe-5830/5831/5832/5840/5841, which supports setting this property in all supported generation modes. To set the :py:attr:`nirfsg.Session.signal_bandwidth` property, the NI-RFSG device must be in the Configuration state. diff --git a/docs/nirfsg/enums.rst b/docs/nirfsg/enums.rst index eb9683d430..772184a231 100644 --- a/docs/nirfsg/enums.rst +++ b/docs/nirfsg/enums.rst @@ -861,7 +861,7 @@ ConfigurationListRepeat .. py:class:: ConfigurationListRepeat - .. py:attribute:: ConfigurationListRepeat.CONTINUOUS + .. py:attribute:: ConfigurationListRepeat.CONFIGURATION_LIST_REPEAT_CONTINUOUS @@ -875,7 +875,7 @@ ConfigurationListRepeat - .. py:attribute:: ConfigurationListRepeat.SINGLE + .. py:attribute:: ConfigurationListRepeat.CONFIGURATION_LIST_REPEAT_SINGLE @@ -1812,7 +1812,7 @@ LoadOptions .. py:class:: LoadOptions - .. py:attribute:: LoadOptions.SKIP_NONE + .. py:attribute:: LoadOptions.RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS_SKIP_NONE @@ -1826,7 +1826,7 @@ LoadOptions - .. py:attribute:: LoadOptions.SKIP_WAVEFORM + .. py:attribute:: LoadOptions.RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS_SKIP_WAVEFORM @@ -2886,7 +2886,7 @@ ResetOptions .. py:class:: ResetOptions - .. py:attribute:: ResetOptions.SKIP_WAVEFORMS + .. py:attribute:: ResetOptions.RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_WAVEFORMS @@ -2900,7 +2900,7 @@ ResetOptions - .. py:attribute:: ResetOptions.SKIP_DEEMBEDDING_TABLES + .. py:attribute:: ResetOptions.RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_DEEMBEDDING_TABLES @@ -2914,7 +2914,7 @@ ResetOptions - .. py:attribute:: ResetOptions.SKIP_SCRIPTS + .. py:attribute:: ResetOptions.RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_SCRIPTS @@ -2928,7 +2928,7 @@ ResetOptions - .. py:attribute:: ResetOptions.SKIP_NONE + .. py:attribute:: ResetOptions.RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_NONE diff --git a/generated/nirfsg/nirfsg/enums.py b/generated/nirfsg/nirfsg/enums.py index aba281e1f2..03c424047a 100644 --- a/generated/nirfsg/nirfsg/enums.py +++ b/generated/nirfsg/nirfsg/enums.py @@ -361,12 +361,12 @@ class ConfigListTrigType(Enum): class ConfigurationListRepeat(Enum): - CONTINUOUS = 0 + CONFIGURATION_LIST_REPEAT_CONTINUOUS = 0 r''' NI-RFSG runs the configuration list continuously. ''' MANUAL = 0 - SINGLE = 1 + CONFIGURATION_LIST_REPEAT_SINGLE = 1 r''' NI-RFSG runs the configuration list only once. ''' @@ -755,12 +755,12 @@ class LoSource(Enum): class LoadOptions(Enum): - SKIP_NONE = 0 + RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS_SKIP_NONE = 0 r''' NI-RFSG loads all the configurations to the session. ''' MANUAL = 0 - SKIP_WAVEFORM = 1 + RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS_SKIP_WAVEFORM = 1 r''' NI-RFSG skips loading the waveform configurations to the session. ''' @@ -1207,22 +1207,22 @@ class RelativeTo(Enum): class ResetOptions(Enum): - SKIP_WAVEFORMS = 0 + RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_WAVEFORMS = 1 r''' NI-RFSG skips resetting the waveform configurations. ''' MANUAL = 0 - SKIP_DEEMBEDDING_TABLES = 1 + RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_DEEMBEDDING_TABLES = 8 r''' NI-RFSG skips resetting the de-embedding tables. ''' SCRIPT_TRIGGER = 1 - SKIP_SCRIPTS = 2 + RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_SCRIPTS = 2 r''' NI-RFSG skips resetting the scripts. ''' MARKER_EVENT = 2 - SKIP_NONE = 3 + RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_NONE = 0 r''' NI-RFSG resets all configurations. ''' diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index 94b34490db..b4030d92ef 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -1446,7 +1446,7 @@ class _SessionBase(object): digital_equalization_enabled = _attributes.AttributeEnum(_attributes.AttributeViInt32, enums.DigitalEqualizationEnabled, 1150012) '''Type: enums.DigitalEqualizationEnabled - When this property is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (\>500 kHz), but it increases tuning times. + When this property is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (>500 kHz), but it increases tuning times. On the PXI-5670/5671, equalization is performed in the software, so tuning time is increased. On the PXIe-5672, equalization is performed in the hardware so that there is no compromise in performance. @@ -1746,13 +1746,13 @@ class _SessionBase(object): - 1\. Set the I/Q rate to less than or equal to 8.33MS/s with the iq_rate property. + 1. Set the I/Q rate to less than or equal to 8.33MS/s with the iq_rate property. - 2\. Set the power_level_type property to PowerLevelType.PEAK. + 2. Set the power_level_type property to PowerLevelType.PEAK. - 3\. Disable the iq_swap_enabled property. + 3. Disable the iq_swap_enabled property. - 4\. Disable the digital_equalization_enabled property. + 4. Disable the digital_equalization_enabled property. **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 @@ -2822,15 +2822,15 @@ class _SessionBase(object): Refer to the specifications document for your device for allowable output levels. - **Units:** Volts, peak-to-peak (V\ :sub:`pk-pk`\ ) + **Units:** Volts, peak-to-peak (V :sub:`pk-pk` ) **Valid Values:** - PXIe-5645: 1V\ :sub:`pk-pk`\ maximum if you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.DIFFERENTIAL, and 0.5V\ :sub:`pk-pk`\ + PXIe-5645: 1V :sub:`pk-pk` maximum if you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.DIFFERENTIAL, and 0.5V :sub:`pk-pk` maximum if you set the iq_out_port_terminal_configuration property to IQOutPortTermCfg.SINGLE_ENDED. - PXIe-5820: 3.4V\ :sub:`pk-pk`\ maximum for signal bandwidth less than 160MHz, and 2V\ :sub:`pk-pk`\ + PXIe-5820: 3.4V :sub:`pk-pk` maximum for signal bandwidth less than 160MHz, and 2V :sub:`pk-pk` maximum for signal bandwidth greater than 160MHz. @@ -2968,16 +2968,14 @@ class _SessionBase(object): +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5646 | Up to 250 MS/s. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | PXI-5670 | 50 MS/s* | + | PXI-5670 | 50 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.) | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | | 100 MS/s* | + | | 100 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.) | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | PXI-5671 | 50 MS/s* | + | PXI-5671 | 50 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.) | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | | 100 MS/s | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | | \*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC. | - +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5672 | Up to 100 MS/s. | +--------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | PXIe-5673/5673E | Up to 200 MS/s. Note that - If an PXIe-5450 with module revisions A or B is used as part of your PXIe-5673/5673E, the NI-FGEN NIFGEN_ATTR_COMPENSATE_FOR_FILTER_GROUP_DELAY property is disabled if the requested I/Q rate is less than 1.5 MS/s. | @@ -3036,19 +3034,19 @@ class _SessionBase(object): Specifies the configurations to skip while loading from a file. - **Default Value:** LoadOptions.SKIP_NONE + **Default Value:** NIRFSG_VAL_SKIP_NONE **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Defined Values**: - +---------------------------+-------------------------------------------------------------------+ - | Value | Description | - +===========================+===================================================================+ - | LoadOptions.SKIP_NONE | NI-RFSG loads all the configurations to the session. | - +---------------------------+-------------------------------------------------------------------+ - | LoadOptions.SKIP_WAVEFORM | NI-RFSG skips loading the waveform configurations to the session. | - +---------------------------+-------------------------------------------------------------------+ + +--------------------------+-------------------------------------------------------------------+ + | Value | Description | + +==========================+===================================================================+ + | NIRFSG_VAL_SKIP_NONE | NI-RFSG loads all the configurations to the session. | + +--------------------------+-------------------------------------------------------------------+ + | NIRFSG_VAL_SKIP_WAVEFORM | NI-RFSG skips loading the waveform configurations to the session. | + +--------------------------+-------------------------------------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -3058,22 +3056,22 @@ class _SessionBase(object): Specifies the configurations to skip to reset while loading configurations from a file. - **Default Value:** ResetOptions.SKIP_NONE + **Default Value:** NIRFSG_VAL_SKIP_NONE **Supported Devices:** PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Defined Values**: - +--------------------------------------+------------------------------------------------------+ - | Value | Description | - +======================================+======================================================+ - | ResetOptions.SKIP_NONE | NI-RFSG resets all configurations. | - +--------------------------------------+------------------------------------------------------+ - | ResetOptions.SKIP_WAVEFORMS | NI-RFSG skips resetting the waveform configurations. | - +--------------------------------------+------------------------------------------------------+ - | ResetOptions.SKIP_SCRIPTS | NI-RFSG skips resetting the scripts. | - +--------------------------------------+------------------------------------------------------+ - | ResetOptions.SKIP_DEEMBEDDING_TABLES | NI-RFSG skips resetting the de-embedding tables. | - +--------------------------------------+------------------------------------------------------+ + +------------------------------------+------------------------------------------------------+ + | Value | Description | + +====================================+======================================================+ + | NIRFSG_VAL_SKIP_NONE | NI-RFSG resets all configurations. | + +------------------------------------+------------------------------------------------------+ + | NIRFSG_VAL_SKIP_WAVEFORMS | NI-RFSG skips resetting the waveform configurations. | + +------------------------------------+------------------------------------------------------+ + | NIRFSG_VAL_SKIP_SCRIPTS | NI-RFSG skips resetting the scripts. | + +------------------------------------+------------------------------------------------------+ + | NIRFSG_VAL_SKIP_DEEMBEDDING_TABLES | NI-RFSG skips resetting the de-embedding tables. | + +------------------------------------+------------------------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -3621,7 +3619,7 @@ class _SessionBase(object): You must write complex I and Q data for all options. The Q data has no effect if you set this property to I Only and set the iq_out_port_carrier_frequency property to 0. If you set the iq_out_port_carrier_frequency property to a value other than 0, the onboard signal processing (OSP) frequency shifts I and Q as a complex value and outputs the real portion of the result on the I connector(s) of the device. - If you set the output_port property to OutputPort.I_ONLY\_ONLY or OutputPort.IQ_OUT, the iq_out_port_terminal_configuration property applies. + If you set the output_port property to OutputPort.I_ONLY or OutputPort.IQ_OUT, the iq_out_port_terminal_configuration property applies. **Default Value:** @@ -4575,7 +4573,7 @@ class _SessionBase(object): Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× iq_rate). - NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f*\ :sub:`max`\ - *f*\ :sub:`min`\ . + NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f* :sub:`max` - *f* :sub:`min` . This property applies only when the generation_mode property is set to GenerationMode.ARB_WAVEFORM or GenerationMode.SCRIPT, except for when using the PXIe-5830/5831/5832/5840/5841, which supports setting this property in all supported generation modes. To set the signal_bandwidth property, the NI-RFSG device must be in the Configuration state. @@ -7088,8 +7086,8 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ self._interpreter.self_calibrate_range(steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) @ivi_synchronized - def self_test(self, self_test_message): - r'''self_test + def _self_test(self, self_test_message): + r'''_self_test Performs a self-test on the NI-RFSG device and returns the test results. This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. @@ -7186,7 +7184,26 @@ def _close(self): def self_test(self): '''self_test - TBD + Runs the instrument self-test routine and returns the test result(s). + + Raises `SelfTestError` on self test failure. Properties on exception object: + + - code - failure code from driver + - message - status message from driver + + +----------------+------------------+ + | Self-Test Code | Description | + +================+==================+ + | 0 | Passed self-test | + +----------------+------------------+ + | 1 | Self-test failed | + +----------------+------------------+ + + Note: + When used on some signal generators, the device is reset after the + niFgen_self_test method runs. If you use the niFgen_self_test + method, your device may not be in its previously configured state + after the method runs. ''' code, msg = self._self_test() if code: diff --git a/src/nirfsg/metadata/attributes.py b/src/nirfsg/metadata/attributes.py index b87dca55af..8adb7e9428 100644 --- a/src/nirfsg/metadata/attributes.py +++ b/src/nirfsg/metadata/attributes.py @@ -668,7 +668,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': " Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× NIRFSG_ATTR_IQ_RATE).\n\n NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f*\\ :sub:`max`\\ - *f*\\ :sub:`min`\\ .\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT, except for when using the PXIe-5830/5831/5832/5840/5841, which supports setting this attribute in all supported generation modes. To set the NIRFSG_ATTR_SIGNAL_BANDWIDTH attribute, the NI-RFSG device must be in the Configuration state.\n\n PXI-5670/5671, PXIe-5672: Based on your signal bandwidth, NI-RFSG determines whether to configure the upconverter center frequency in increments of 1MHz or 5MHz. Failure to configure this attribute may result in the signal being placed outside the upconverter passband.\n\n PXIe-5644/5645/5646, PXIe-5673/5673E: This attribute is used only for error-checking purposes. Otherwise, this attribute is ignored.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Based on your signal bandwidth, NI-RFSG decides the equalized bandwidth. If this attribute is not set, NI-RFSG uses the maximum available signal bandwidth. For the PXIe-5840/5841, the maximum allowed signal bandwidth depends on the upconverter center frequency. Refer to the specifications document for your device for more information about signal bandwidth. The device specifications depend on the signal bandwidth.\n\n **Units**: hertz (Hz)\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Phase-Locked Loop Bandwidth `_\n\n `Frequency Tuning Times `_\n\n `PXIe-5830 Frequency and Bandwidth Selection `_\n\n `PXIe-5831/5832 Frequency and Bandwidth Selection `_\n\n `PXIe-5841 Frequency and Bandwidth Selection `_\n " + 'description': " Specifies the bandwidth of the arbitrary signal. This value must be less than or equal to (0.8× NIRFSG_ATTR_IQ_RATE).\n\n NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0 Hz. In such cases, the signal bandwidth is simply the baseband signal's minimum frequency subtracted from its maximum frequency, or *f* :sub:`max` - *f* :sub:`min` .\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT, except for when using the PXIe-5830/5831/5832/5840/5841, which supports setting this attribute in all supported generation modes. To set the NIRFSG_ATTR_SIGNAL_BANDWIDTH attribute, the NI-RFSG device must be in the Configuration state.\n\n PXI-5670/5671, PXIe-5672: Based on your signal bandwidth, NI-RFSG determines whether to configure the upconverter center frequency in increments of 1MHz or 5MHz. Failure to configure this attribute may result in the signal being placed outside the upconverter passband.\n\n PXIe-5644/5645/5646, PXIe-5673/5673E: This attribute is used only for error-checking purposes. Otherwise, this attribute is ignored.\n\n PXIe-5820/5830/5831/5832/5840/5841/5842/5860: Based on your signal bandwidth, NI-RFSG decides the equalized bandwidth. If this attribute is not set, NI-RFSG uses the maximum available signal bandwidth. For the PXIe-5840/5841, the maximum allowed signal bandwidth depends on the upconverter center frequency. Refer to the specifications document for your device for more information about signal bandwidth. The device specifications depend on the signal bandwidth.\n\n **Units**: hertz (Hz)\n\n **Supported Devices:** PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Phase-Locked Loop Bandwidth `_\n\n `Frequency Tuning Times `_\n\n `PXIe-5830 Frequency and Bandwidth Selection `_\n\n `PXIe-5831/5832 Frequency and Bandwidth Selection `_\n\n `PXIe-5841 Frequency and Bandwidth Selection `_\n " }, 'lv_property': 'Arb:Signal Bandwidth (Hz)', 'name': 'SIGNAL_BANDWIDTH', @@ -752,7 +752,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' When this attribute is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (\\>500 kHz), but it increases tuning times.\n\n On the PXI-5670/5671, equalization is performed in the software, so tuning time is increased. On the PXIe-5672, equalization is performed in the hardware so that there is no compromise in performance.\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_ENABLE is the only supported value for this device.\n\n **Default Value:**\n\n PXI-5670/5671: NIRFSG_VAL_DISABLE\n\n PXIe-5644/5645/5646, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Response and Software Equalization `_—Refer to this topic for more information about equalization performed in software.\n\n `Frequency Tuning Times `_\n\n **Defined Values**:\n ', + 'description': ' When this attribute is enabled, NI-RFSG equalizes the waveform data to correct for variations in the response of the NI-RFSG device. Enabling digital equalization improves the modulation error rates (MER) and error vector magnitude (EVM) for signals with large bandwidths (>500 kHz), but it increases tuning times.\n\n On the PXI-5670/5671, equalization is performed in the software, so tuning time is increased. On the PXIe-5672, equalization is performed in the hardware so that there is no compromise in performance.\n\n This attribute applies only when the NIRFSG_ATTR_GENERATION_MODE attribute is set to NIRFSG_VAL_ARB_WAVEFORM or NIRFSG_VAL_SCRIPT. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_ENABLE is the only supported value for this device.\n\n **Default Value:**\n\n PXI-5670/5671: NIRFSG_VAL_DISABLE\n\n PXIe-5644/5645/5646, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_ENABLE\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Response and Software Equalization `_—Refer to this topic for more information about equalization performed in software.\n\n `Frequency Tuning Times `_\n\n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_DISABLE', @@ -1627,7 +1627,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies whether the nirfsg_WriteArbWaveform function immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this attribute when an arbitrary waveform is first allocated.\n\n For the PXI-5670, direct download is always disabled. For all other devices, direct download is always enabled.\n\n PXI-5671: To increase performance when using large waveforms, enable direct download. To maximize reconfigurability, disable direct download.\n\n Perform the following steps to enable direct download:\n\n\n\n 1\\. Set the I/Q rate to less than or equal to 8.33MS/s with the NIRFSG_ATTR_IQ_RATE attribute.\n\n 2\\. Set the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to NIRFSG_VAL_PEAK_POWER.\n\n 3\\. Disable the NIRFSG_ATTR_IQ_SWAP_ENABLED attribute.\n\n 4\\. Disable the NIRFSG_ATTR_DIGITAL_EQUALIZATION_ENABLED attribute.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n\n **Defined Values**:\n ', + 'description': ' Specifies whether the nirfsg_WriteArbWaveform function immediately writes waveforms to the device or copies the waveform to host memory for later download. NI-RFSG reads and validates this attribute when an arbitrary waveform is first allocated.\n\n For the PXI-5670, direct download is always disabled. For all other devices, direct download is always enabled.\n\n PXI-5671: To increase performance when using large waveforms, enable direct download. To maximize reconfigurability, disable direct download.\n\n Perform the following steps to enable direct download:\n\n\n\n 1. Set the I/Q rate to less than or equal to 8.33MS/s with the NIRFSG_ATTR_IQ_RATE attribute.\n\n 2. Set the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to NIRFSG_VAL_PEAK_POWER.\n\n 3. Disable the NIRFSG_ATTR_IQ_SWAP_ENABLED attribute.\n\n 4. Disable the NIRFSG_ATTR_DIGITAL_EQUALIZATION_ENABLED attribute.\n\n **Supported Devices:** PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n\n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_DISABLE', @@ -3088,7 +3088,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies the connector(s) to use to generate the signal. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n You must write complex I and Q data for all options. The Q data has no effect if you set this attribute to I Only and set the NIRFSG_ATTR_IQ_OUT_PORT_CARRIER_FREQUENCY attribute to 0. If you set the NIRFSG_ATTR_IQ_OUT_PORT_CARRIER_FREQUENCY attribute to a value other than 0, the onboard signal processing (OSP) frequency shifts I and Q as a complex value and outputs the real portion of the result on the I connector(s) of the device.\n\n If you set the NIRFSG_ATTR_OUTPUT_PORT attribute to NIRFSG_VAL_I_ONLY\\_ONLY or NIRFSG_VAL_IQ_OUT, the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute applies.\n\n **Default Value:**\n\n PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_RF_OUT\n\n PXIe-5820: NIRFSG_VAL_IQ_OUT\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', + 'description': ' Specifies the connector(s) to use to generate the signal. To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n You must write complex I and Q data for all options. The Q data has no effect if you set this attribute to I Only and set the NIRFSG_ATTR_IQ_OUT_PORT_CARRIER_FREQUENCY attribute to 0. If you set the NIRFSG_ATTR_IQ_OUT_PORT_CARRIER_FREQUENCY attribute to a value other than 0, the onboard signal processing (OSP) frequency shifts I and Q as a complex value and outputs the real portion of the result on the I connector(s) of the device.\n\n If you set the NIRFSG_ATTR_OUTPUT_PORT attribute to NIRFSG_VAL_I_ONLY or NIRFSG_VAL_IQ_OUT, the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute applies.\n\n **Default Value:**\n\n PXIe-5644/5645/5646, PXIe-5830/5831/5832/5840/5841/5842/5860: NIRFSG_VAL_RF_OUT\n\n PXIe-5820: NIRFSG_VAL_IQ_OUT\n\n **Supported Devices:** PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n \n **Defined Values**:\n ', 'table_body': [ [ 'NIRFSG_VAL_CAL_OUT', @@ -3166,7 +3166,7 @@ 'access': 'read-write', 'codegen_method': 'public', 'documentation': { - 'description': ' Specifies the amplitude of the generated signal in volts, peak-to-peak (V). For example, if you set this attribute to 1.0, the output signal ranges from -0.5 volts to 0.5 volts.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string).\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n Refer to the specifications document for your device for allowable output levels.\n\n **Units:** Volts, peak-to-peak (V\\ :sub:`pk-pk`\\ )\n\n **Valid Values:**\n\n PXIe-5645: 1V\\ :sub:`pk-pk`\\ maximum if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_DIFFERENTIAL, and 0.5V\\ :sub:`pk-pk`\\ \n\nmaximum if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_SINGLE_ENDED.\n\n PXIe-5820: 3.4V\\ :sub:`pk-pk`\\ maximum for signal bandwidth less than 160MHz, and 2V\\ :sub:`pk-pk`\\ \n\nmaximum for signal bandwidth greater than 160MHz.\n\n **Default Value:** 0.5volts\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', + 'description': ' Specifies the amplitude of the generated signal in volts, peak-to-peak (V). For example, if you set this attribute to 1.0, the output signal ranges from -0.5 volts to 0.5 volts.\n\n To use this attribute, you must use the channelName parameter of the nirfsg_SetAttributeViReal64 function to specify the name of the channel you are configuring. For the PXIe-5645, you can configure the I and Q channels by using I or Q as the channel string, or set the channel string to "" (empty string) to configure both channels. For the PXIe-5820, the only valid value for the channel string is "" (empty string).\n\n To set this attribute, the NI-RFSG device must be in the Configuration state.\n\n Refer to the specifications document for your device for allowable output levels.\n\n **Units:** Volts, peak-to-peak (V :sub:`pk-pk` )\n\n **Valid Values:**\n\n PXIe-5645: 1V :sub:`pk-pk` maximum if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_DIFFERENTIAL, and 0.5V :sub:`pk-pk` \n\nmaximum if you set the NIRFSG_ATTR_IQ_OUT_PORT_TERMINAL_CONFIGURATION attribute to NIRFSG_VAL_SINGLE_ENDED.\n\n PXIe-5820: 3.4V :sub:`pk-pk` maximum for signal bandwidth less than 160MHz, and 2V :sub:`pk-pk` \n\nmaximum for signal bandwidth greater than 160MHz.\n\n **Default Value:** 0.5volts\n\n **Supported Devices:** PXIe-5645, PXIe-5820\n ', 'note': '- For the PXIe-5645, this attribute is ignored if you are using the RF ports.\n\n - The valid values are only applicable when you set the NIRFSG_ATTR_IQ_OUT_PORT_LOAD_IMPEDANCE attribute to 50 Ω and when you set the NIRFSG_ATTR_IQ_OUT_PORT_OFFSET attribute to 0.' }, 'lv_property': 'Device Specific:Vector Signal Transceiver:IQ Out Port:Level', @@ -4938,24 +4938,20 @@ ], [ 'PXI-5670', - '50 MS/s*' + '50 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.)' ], [ '', - '100 MS/s*' + '100 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.)' ], [ 'PXI-5671', - '50 MS/s*' + '50 MS/s ((100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.)' ], [ '', '100 MS/s' ], - [ - '', - '\\*(100 MS/s)/n, where n is divisible by 2 between 12 to 512, and divisible by 4 between 512 to 1,024 (n = 12, 14, 16, ..., 512, 516, 520, ..., 1,024). Setting the I/Q rate to one of these value enables the DUC.' - ], [ 'PXIe-5672 ', 'Up to 100 MS/s.' diff --git a/src/nirfsg/metadata/enums.py b/src/nirfsg/metadata/enums.py index 46c079047d..1131139d6d 100644 --- a/src/nirfsg/metadata/enums.py +++ b/src/nirfsg/metadata/enums.py @@ -714,7 +714,7 @@ 'documentation': { 'description': 'NI-RFSG runs the configuration list continuously.' }, - 'name': 'NIRFSG_VAL_CONTINUOUS', + 'name': 'NIRFSG_VAL_CONFIGURATION_LIST_REPEAT_CONTINUOUS', 'value': 0 }, { @@ -725,7 +725,7 @@ 'documentation': { 'description': 'NI-RFSG runs the configuration list only once.' }, - 'name': 'NIRFSG_VAL_SINGLE', + 'name': 'NIRFSG_VAL_CONFIGURATION_LIST_REPEAT_SINGLE', 'value': 1 }, { @@ -1491,7 +1491,7 @@ 'documentation': { 'description': 'NI-RFSG loads all the configurations to the session.' }, - 'name': 'NIRFSG_VAL_SKIP_NONE', + 'name': 'RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS_SKIP_NONE', 'value': 0 }, { @@ -1502,7 +1502,7 @@ 'documentation': { 'description': 'NI-RFSG skips loading the waveform configurations to the session.' }, - 'name': 'NIRFSG_VAL_SKIP_WAVEFORM', + 'name': 'RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_LOAD_OPTIONS_SKIP_WAVEFORM', 'value': 1 }, { @@ -2341,8 +2341,8 @@ 'documentation': { 'description': 'NI-RFSG skips resetting the waveform configurations.' }, - 'name': 'NIRFSG_VAL_SKIP_WAVEFORMS', - 'value': 0 + 'name': 'RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_WAVEFORMS', + 'value': 1 }, { 'name': 'NIRFSG_VAL_MANUAL', @@ -2352,8 +2352,8 @@ 'documentation': { 'description': 'NI-RFSG skips resetting the de-embedding tables.' }, - 'name': 'NIRFSG_VAL_SKIP_DEEMBEDDING_TABLES', - 'value': 1 + 'name': 'RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_DEEMBEDDING_TABLES', + 'value': 8 }, { 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', @@ -2363,7 +2363,7 @@ 'documentation': { 'description': 'NI-RFSG skips resetting the scripts.' }, - 'name': 'NIRFSG_VAL_SKIP_SCRIPTS', + 'name': 'RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_SCRIPTS', 'value': 2 }, { @@ -2374,8 +2374,8 @@ 'documentation': { 'description': 'NI-RFSG resets all configurations.' }, - 'name': 'NIRFSG_VAL_SKIP_NONE', - 'value': 3 + 'name': 'RFSG_VAL_LOAD_CONFIGURATIONS_FROM_FILE_RESET_OPTIONS_SKIP_NONE', + 'value': 0 }, { 'name': 'NIRFSG_VAL_SELF_CAL_IMAGE_SUPPRESSION', diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index 0769a93c4c..05b456f66b 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -3605,6 +3605,7 @@ 'use_session_lock': True }, 'SelfTest': { + 'codegen_method': 'private', 'documentation': { 'description': 'Performs a self-test on the NI-RFSG device and returns the test results. This function performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding.' }, @@ -4512,7 +4513,22 @@ 'fancy_self_test': { 'codegen_method': 'python-only', 'documentation': { - 'description': 'TBD' + 'description': '\nRuns the instrument self-test routine and returns the test result(s).\n\nRaises `SelfTestError` on self test failure. Attributes on exception object:\n\n- code - failure code from driver\n- message - status message from driver\n', + 'note': '\nWhen used on some signal generators, the device is reset after the\nniFgen_self_test function runs. If you use the niFgen_self_test\nfunction, your device may not be in its previously configured state\nafter the function runs.\n', + 'table_body': [ + [ + '0', + 'Passed self-test' + ], + [ + '1', + 'Self-test failed' + ] + ], + 'table_header': [ + 'Self-Test Code', + 'Description' + ] }, 'grpc_name': 'FancySelfTest', 'included_in_proto': False, @@ -4527,6 +4543,9 @@ 'parameters': [ { 'direction': 'in', + 'documentation': { + 'description': 'Identifies your instrument session. **vi** is obtained from the niFgen_init, nifgen_InitWithOptions, or nifgen_InitializeWithChannels functions and identifies a particular instrument session.' + }, 'name': 'vi', 'type': 'ViSession' } From 5e2456ebdb3430baf484704267399ce653e0d351 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Mon, 7 Apr 2025 11:02:47 +0000 Subject: [PATCH 06/46] Added rfsg generation commands --- .github/workflows/check_latest_release.yml | 1 + .../github_actions_aws_rhel_python64.yml | 1 + .../github_actions_aws_windows_python32.yml | 1 + .../github_actions_aws_windows_python64.yml | 1 + README.rst | 3 + build/templates/conf.py.mako | 2 +- docs/_static/about.inc | 1 + docs/_static/documentation.inc | 1 + docs/_static/installation.inc | 1 + docs/nidcpower/conf.py | 1 + docs/nidigital/conf.py | 1 + docs/nidmm/conf.py | 1 + docs/nifgen/conf.py | 1 + docs/nimodinst/conf.py | 1 + docs/nirfsg/class.rst | 154 ++++-------------- docs/niscope/conf.py | 1 + docs/nise/conf.py | 1 + docs/niswitch/conf.py | 1 + docs/nitclk/conf.py | 1 + tox.ini | 1 + 20 files changed, 50 insertions(+), 126 deletions(-) diff --git a/.github/workflows/check_latest_release.yml b/.github/workflows/check_latest_release.yml index 22a9dae95f..58b17dc023 100644 --- a/.github/workflows/check_latest_release.yml +++ b/.github/workflows/check_latest_release.yml @@ -37,6 +37,7 @@ jobs: - nimodinst - nise - niswitch + - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_rhel_python64.yml b/.github/workflows/github_actions_aws_rhel_python64.yml index f602bb87d9..c8c75b094b 100644 --- a/.github/workflows/github_actions_aws_rhel_python64.yml +++ b/.github/workflows/github_actions_aws_rhel_python64.yml @@ -38,6 +38,7 @@ jobs: - niscope - niswitch - nitclk + - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python32.yml b/.github/workflows/github_actions_aws_windows_python32.yml index da695f4bd9..b40b86a958 100644 --- a/.github/workflows/github_actions_aws_windows_python32.yml +++ b/.github/workflows/github_actions_aws_windows_python32.yml @@ -41,6 +41,7 @@ jobs: - nimodinst - nise - niswitch + - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python64.yml b/.github/workflows/github_actions_aws_windows_python64.yml index 79faf63bf2..68cbb02dc9 100644 --- a/.github/workflows/github_actions_aws_windows_python64.yml +++ b/.github/workflows/github_actions_aws_windows_python64.yml @@ -55,6 +55,7 @@ jobs: - nimodinst - nise - niswitch + - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/README.rst b/README.rst index 6a16b5285f..e1eccb52e8 100644 --- a/README.rst +++ b/README.rst @@ -50,6 +50,7 @@ following drivers are supported: * NI Switch Executive (Python module: nise) * NI-SWITCH (Python module: niswitch) * NI-TClk (Python module: nitclk) +* NI-RFSG (Python module: nirfsg) It is implemented as a set of `Mako templates `_ and per-driver metafiles that produce a Python module for each driver. The driver is called through its public C API using the `ctypes `_ Python library. @@ -534,6 +535,7 @@ Driver specific installation instructions can be found on **Read the Docs**: * `nise `_ * `niswitch `_ * `nitclk `_ +* `nirfsg `_ Contributing @@ -591,6 +593,7 @@ Documentation is available on **Read the Docs**: - https://nise.readthedocs.io/en/stable - https://niswitch.readthedocs.io/en/stable - https://nitclk.readthedocs.io/en/stable +- https://nirfsg.readthedocs.io/en/stable .. _license-section: diff --git a/build/templates/conf.py.mako b/build/templates/conf.py.mako index 0d5764a82e..d2ed1d9724 100644 --- a/build/templates/conf.py.mako +++ b/build/templates/conf.py.mako @@ -10,7 +10,7 @@ api_name = f"{config['driver_name']} Python API" api_name_no_spaces_or_hyphens = api_name.replace(" ", "").replace("-", "") api_name_no_spaces_or_hyphens_lower = api_name_no_spaces_or_hyphens.lower() -all_modules = {'nidcpower', 'nidigital', 'nidmm', 'nifgen', 'nimodinst', 'niscope', 'niswitch', 'nise', 'nitclk'} +all_modules = {'nidcpower', 'nidigital', 'nidmm', 'nifgen', 'nimodinst', 'niscope', 'niswitch', 'nise', 'nitclk', 'nirfsg'} module_name = config['module_name'] external_modules = all_modules - {module_name} %>\ diff --git a/docs/_static/about.inc b/docs/_static/about.inc index 6ac3e735b7..ea93439342 100644 --- a/docs/_static/about.inc +++ b/docs/_static/about.inc @@ -15,6 +15,7 @@ following drivers are supported: * NI Switch Executive (Python module: nise) * NI-SWITCH (Python module: niswitch) * NI-TClk (Python module: nitclk) +* NI-RFSG (Python module: nirfsg) It is implemented as a set of `Mako templates `_ and per-driver metafiles that produce a Python module for each driver. The driver is called through its public C API using the `ctypes `_ Python library. diff --git a/docs/_static/documentation.inc b/docs/_static/documentation.inc index 96000dc3f5..ffcdd2536d 100644 --- a/docs/_static/documentation.inc +++ b/docs/_static/documentation.inc @@ -14,5 +14,6 @@ Documentation is available on **Read the Docs**: - https://nise.readthedocs.io/en/stable - https://niswitch.readthedocs.io/en/stable - https://nitclk.readthedocs.io/en/stable +- https://nirfsg.readthedocs.io/en/stable diff --git a/docs/_static/installation.inc b/docs/_static/installation.inc index a7935e37a2..a6cea821a3 100644 --- a/docs/_static/installation.inc +++ b/docs/_static/installation.inc @@ -14,5 +14,6 @@ Driver specific installation instructions can be found on **Read the Docs**: * `nise `_ * `niswitch `_ * `nitclk `_ +* `nirfsg `_ diff --git a/docs/nidcpower/conf.py b/docs/nidcpower/conf.py index 3752ec6427..0b7249f142 100644 --- a/docs/nidcpower/conf.py +++ b/docs/nidcpower/conf.py @@ -189,6 +189,7 @@ def setup(app): 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), diff --git a/docs/nidigital/conf.py b/docs/nidigital/conf.py index e8349a12f9..e1b672b8cb 100644 --- a/docs/nidigital/conf.py +++ b/docs/nidigital/conf.py @@ -189,6 +189,7 @@ def setup(app): 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), diff --git a/docs/nidmm/conf.py b/docs/nidmm/conf.py index b430971503..93937de57f 100644 --- a/docs/nidmm/conf.py +++ b/docs/nidmm/conf.py @@ -189,6 +189,7 @@ def setup(app): 'nidigital': ('https://nidigital.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), diff --git a/docs/nifgen/conf.py b/docs/nifgen/conf.py index 9356862335..7b5206f3e9 100644 --- a/docs/nifgen/conf.py +++ b/docs/nifgen/conf.py @@ -189,6 +189,7 @@ def setup(app): 'nidigital': ('https://nidigital.readthedocs.io/en/latest/', None), 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), diff --git a/docs/nimodinst/conf.py b/docs/nimodinst/conf.py index 7c56f2d9b0..c71891cdb0 100644 --- a/docs/nimodinst/conf.py +++ b/docs/nimodinst/conf.py @@ -189,6 +189,7 @@ def setup(app): 'nidigital': ('https://nidigital.readthedocs.io/en/latest/', None), 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index 313266b32c..faf81f9cb3 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -1333,60 +1333,15 @@ get_external_calibration_last_date_and_time .. py:method:: get_external_calibration_last_date_and_time() - Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. + TBD - :rtype: tuple (year, month, day, hour, minute, second) - - WHERE - - year (int): - - - Returns the year of the last successful calibration. - - - - - month (int): - - - Returns the month of the last successful calibration. - - - - - day (int): - - - Returns the day of the last successful calibration. - - - - - hour (int): - - - Returns the hour of the last successful calibration. - - - - - minute (int): - - - Returns the minute of the last successful calibration. - - - - - second (int): - + :rtype: hightime.datetime + :return: - Returns the second of the last successful calibration. @@ -1415,77 +1370,22 @@ get_max_settable_power -get_self_calibration_date_and_time ----------------------------------- +get_self_calibration_last_date_and_time +--------------------------------------- .. py:currentmodule:: nirfsg.Session - .. py:method:: get_self_calibration_date_and_time(module) + .. py:method:: get_self_calibration_last_date_and_time() - Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. + TBD - :param module: - - - Specifies from which stand-alone module to retrieve the last successful self-calibration date and time. - - - - - :type module: int - - :rtype: tuple (year, month, day, hour, minute, second) - - WHERE - - year (int): - - - Returns the year of the last successful calibration. - - - - - month (int): - - - Returns the month of the last successful calibration. - - - - - day (int): - - - Returns the day of the last successful calibration. - - - - - hour (int): - - - Returns the hour of the last successful calibration. - - - - - minute (int): - - - Returns the minute of the last successful calibration. - - - - - second (int): - + :rtype: hightime.datetime + :return: - Returns the second of the last successful calibration. @@ -1987,27 +1887,31 @@ self_test .. py:currentmodule:: nirfsg.Session - .. py:method:: self_test() + .. py:method:: self_test(self_test_message) + + Performs a self-test on the NI-RFSG device and returns the test results. This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. + + - Runs the instrument self-test routine and returns the test result(s). - Raises `SelfTestError` on self test failure. Properties on exception object: - - code - failure code from driver - - message - status message from driver + :param self_test_message: - +----------------+------------------+ - | Self-Test Code | Description | - +================+==================+ - | 0 | Passed self-test | - +----------------+------------------+ - | 1 | Self-test failed | - +----------------+------------------+ - .. note:: When used on some signal generators, the device is reset after the - niFgen_self_test method runs. If you use the niFgen_self_test - method, your device may not be in its previously configured state - after the method runs. + Returns the self-test response string from the NI-RFSG device. For an explanation of the string contents, refer to the **status** parameter of this method. + + + + + :type self_test_message: str + + :rtype: int + :return: + + + This parameter contains the value returned from the NI-RFSG device self test. + + diff --git a/docs/niscope/conf.py b/docs/niscope/conf.py index 808ffd70c8..dda6faecd0 100644 --- a/docs/niscope/conf.py +++ b/docs/niscope/conf.py @@ -190,6 +190,7 @@ def setup(app): 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), 'nitclk': ('https://nitclk.readthedocs.io/en/latest/', None), diff --git a/docs/nise/conf.py b/docs/nise/conf.py index c7d9b7c3fc..8229bdb46f 100644 --- a/docs/nise/conf.py +++ b/docs/nise/conf.py @@ -190,6 +190,7 @@ def setup(app): 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), 'nitclk': ('https://nitclk.readthedocs.io/en/latest/', None), diff --git a/docs/niswitch/conf.py b/docs/niswitch/conf.py index ce62e4feda..e60b9e40d8 100644 --- a/docs/niswitch/conf.py +++ b/docs/niswitch/conf.py @@ -190,6 +190,7 @@ def setup(app): 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'nitclk': ('https://nitclk.readthedocs.io/en/latest/', None), diff --git a/docs/nitclk/conf.py b/docs/nitclk/conf.py index c3c7c169df..4de8f9e334 100644 --- a/docs/nitclk/conf.py +++ b/docs/nitclk/conf.py @@ -190,6 +190,7 @@ def setup(app): 'nidmm': ('https://nidmm.readthedocs.io/en/latest/', None), 'nifgen': ('https://nifgen.readthedocs.io/en/latest/', None), 'nimodinst': ('https://nimodinst.readthedocs.io/en/latest/', None), + 'nirfsg': ('https://nirfsg.readthedocs.io/en/latest/', None), 'niscope': ('https://niscope.readthedocs.io/en/latest/', None), 'nise': ('https://nise.readthedocs.io/en/latest/', None), 'niswitch': ('https://niswitch.readthedocs.io/en/latest/', None), diff --git a/tox.ini b/tox.ini index a4ab560918..7551702270 100644 --- a/tox.ini +++ b/tox.ini @@ -128,6 +128,7 @@ commands = pkg: python -m twine check generated/niscope/dist/* pkg: python -m twine check generated/nise/dist/* pkg: python -m twine check generated/niswitch/dist/* + pkg: python -m twine check generated/nirfsg/dist/* # pkg: check-manifest --ignore tox.ini,tests*,.github,.github/*,CONTRIBUTING.rst,docs,docs/* deps = From c35ee8ebc34278c423b3e58cd4d04297b81f2543 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Mon, 7 Apr 2025 11:03:51 +0000 Subject: [PATCH 07/46] Enabled hightime functions for rfsg --- generated/nirfsg/nirfsg/session.py | 68 +++++++++--------- src/nirfsg/metadata/functions.py | 111 +++++++++++++++++------------ 2 files changed, 97 insertions(+), 82 deletions(-) diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index b4030d92ef..1b086b0666 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -6826,8 +6826,8 @@ def export_signal(self, signal, signal_identifier, output_terminal): self._interpreter.export_signal(signal, signal_identifier, output_terminal) @ivi_synchronized - def get_external_calibration_last_date_and_time(self): - r'''get_external_calibration_last_date_and_time + def _get_external_calibration_last_date_and_time(self): + r'''_get_external_calibration_last_date_and_time Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. @@ -6848,6 +6848,32 @@ def get_external_calibration_last_date_and_time(self): year, month, day, hour, minute, second = self._interpreter.get_external_calibration_last_date_and_time() return year, month, day, hour, minute, second + @ivi_synchronized + def get_external_calibration_last_date_and_time(self): + '''get_external_calibration_last_date_and_time + + TBD + + Returns: + last_cal_datetime (hightime.datetime): + + ''' + year, month, day, hour, minute, second = self._get_external_calibration_last_date_and_time() + return hightime.datetime(year, month, day, hour, minute) + + @ivi_synchronized + def get_self_calibration_last_date_and_time(self): + '''get_self_calibration_last_date_and_time + + TBD + + Returns: + last_cal_datetime (hightime.datetime): + + ''' + year, month, day, hour, minute, second = self._get_self_calibration_date_and_time() + return hightime.datetime(year, month, day, hour, minute) + @ivi_synchronized def get_max_settable_power(self): r'''get_max_settable_power @@ -6862,8 +6888,8 @@ def get_max_settable_power(self): return value @ivi_synchronized - def get_self_calibration_date_and_time(self, module): - r'''get_self_calibration_date_and_time + def _get_self_calibration_date_and_time(self, module): + r'''_get_self_calibration_date_and_time Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. @@ -7086,8 +7112,8 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ self._interpreter.self_calibrate_range(steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) @ivi_synchronized - def _self_test(self, self_test_message): - r'''_self_test + def self_test(self, self_test_message): + r'''self_test Performs a self-test on the NI-RFSG device and returns the test results. This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. @@ -7179,33 +7205,3 @@ def _close(self): One or more of the referenced methods are not in the Python API for this driver. ''' self._interpreter.close() - - @ivi_synchronized - def self_test(self): - '''self_test - - Runs the instrument self-test routine and returns the test result(s). - - Raises `SelfTestError` on self test failure. Properties on exception object: - - - code - failure code from driver - - message - status message from driver - - +----------------+------------------+ - | Self-Test Code | Description | - +================+==================+ - | 0 | Passed self-test | - +----------------+------------------+ - | 1 | Self-test failed | - +----------------+------------------+ - - Note: - When used on some signal generators, the device is reset after the - niFgen_self_test method runs. If you use the niFgen_self_test - method, your device may not be in its previously configured state - after the method runs. - ''' - code, msg = self._self_test() - if code: - raise errors.SelfTestError(code, msg) - return None diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index 05b456f66b..cd644395b0 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -2344,12 +2344,13 @@ 'use_session_lock': False }, 'GetExternalCalibrationLastDateAndTime': { - 'codegen_method': 'public', + 'codegen_method': 'private', 'documentation': { 'description': 'Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' }, 'included_in_proto': True, 'is_error_handling': False, + 'method_name_for_documentation': 'get_external_calibration_last_date_and_time', 'method_templates': [ { 'documentation_filename': 'default_method', @@ -2433,6 +2434,66 @@ 'returns': 'ViStatus', 'use_session_lock': True }, + 'GetLastExtCalLastDateAndTime': { + 'codegen_method': 'python-only', + 'documentation': { + 'description': 'TBD' + }, + 'included_in_proto': True, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'none', + 'method_python_name_suffix': '', + 'session_filename': 'datetime_wrappers' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'name': 'vi', + 'type': 'ViSession' + }, + { + 'direction': 'out', + 'name': 'lastCalDatetime', + 'type': 'hightime.datetime' + } + ], + 'python_name': 'get_external_calibration_last_date_and_time', + 'real_datetime_call': 'GetExternalCalibrationLastDateAndTime', + 'returns': 'ViStatus' + }, + 'GetLastSelfCalLastDateAndTime': { + 'codegen_method': 'python-only', + 'documentation': { + 'description': 'TBD' + }, + 'included_in_proto': True, + 'method_templates': [ + { + 'documentation_filename': 'default_method', + 'library_interpreter_filename': 'none', + 'method_python_name_suffix': '', + 'session_filename': 'datetime_wrappers' + } + ], + 'parameters': [ + { + 'direction': 'in', + 'name': 'vi', + 'type': 'ViSession' + }, + { + 'direction': 'out', + 'name': 'lastCalDatetime', + 'type': 'hightime.datetime' + } + ], + 'python_name': 'get_self_calibration_last_date_and_time', + 'real_datetime_call': 'GetSelfCalibrationDateAndTime', + 'returns': 'ViStatus' + }, 'GetMaxSettablePower': { 'codegen_method': 'public', 'documentation': { @@ -2474,12 +2535,13 @@ 'use_session_lock': True }, 'GetSelfCalibrationDateAndTime': { - 'codegen_method': 'public', + 'codegen_method': 'private', 'documentation': { 'description': 'Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' }, 'included_in_proto': True, 'is_error_handling': False, + 'method_name_for_documentation': 'get_self_calibration_date_and_time', 'method_templates': [ { 'documentation_filename': 'default_method', @@ -3605,7 +3667,7 @@ 'use_session_lock': True }, 'SelfTest': { - 'codegen_method': 'private', + 'codegen_method': 'public', 'documentation': { 'description': 'Performs a self-test on the NI-RFSG device and returns the test results. This function performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding.' }, @@ -4509,48 +4571,5 @@ 'python_name': '_close', 'returns': 'ViStatus', 'use_session_lock': False - }, - 'fancy_self_test': { - 'codegen_method': 'python-only', - 'documentation': { - 'description': '\nRuns the instrument self-test routine and returns the test result(s).\n\nRaises `SelfTestError` on self test failure. Attributes on exception object:\n\n- code - failure code from driver\n- message - status message from driver\n', - 'note': '\nWhen used on some signal generators, the device is reset after the\nniFgen_self_test function runs. If you use the niFgen_self_test\nfunction, your device may not be in its previously configured state\nafter the function runs.\n', - 'table_body': [ - [ - '0', - 'Passed self-test' - ], - [ - '1', - 'Self-test failed' - ] - ], - 'table_header': [ - 'Self-Test Code', - 'Description' - ] - }, - 'grpc_name': 'FancySelfTest', - 'included_in_proto': False, - 'method_templates': [ - { - 'documentation_filename': 'default_method', - 'library_interpreter_filename': 'none', - 'method_python_name_suffix': '', - 'session_filename': 'fancy_self_test' - } - ], - 'parameters': [ - { - 'direction': 'in', - 'documentation': { - 'description': 'Identifies your instrument session. **vi** is obtained from the niFgen_init, nifgen_InitWithOptions, or nifgen_InitializeWithChannels functions and identifies a particular instrument session.' - }, - 'name': 'vi', - 'type': 'ViSession' - } - ], - 'python_name': 'self_test', - 'returns': 'ViStatus' } } From 3c37d71cf940c0aaf9db427ae5758e0ad4e28c26 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 11:48:09 +0000 Subject: [PATCH 08/46] Added basic system test for nirfsg --- src/nirfsg/system_tests/test_system_nirfsg.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/nirfsg/system_tests/test_system_nirfsg.py diff --git a/src/nirfsg/system_tests/test_system_nirfsg.py b/src/nirfsg/system_tests/test_system_nirfsg.py new file mode 100644 index 0000000000..52b1b13c12 --- /dev/null +++ b/src/nirfsg/system_tests/test_system_nirfsg.py @@ -0,0 +1,23 @@ +import nirfsg +import numpy as np +import nirfsg.enums + +# RFSG session create +options = "Simulate=0, DriverSetup=Model:5841" +session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) +# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) + +# configure frequency to 1Ghz, power level to -10db and iq rate to 1M +session.configure_rf( + 1e9, # frequency + -10 # powerLevel + ) +#session.iq_rate = 1e6 +session.generation_mode = nirfsg.GenerationMode.CW + +# Start generation +with session.initiate(): + # Generation context + input("Press Enter to stop generation") + +session.close() \ No newline at end of file From 8864160e150179edb331de7eeece150b48511f83 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 11:52:04 +0000 Subject: [PATCH 09/46] Modified CHANGELOG.md --- CHANGELOG.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7cebcb3e75..b67ee79e0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,15 @@ All notable changes to this project will be documented in this file. ## Unreleased * ### ALL * #### Added + * Supported array versions of ViRsrc and ViAttr + * #### Changed + * Updated conf.py to include RTD link for nirfsg + * #### Removed +* ### `nirfsg` (NI-RFSG) + * #### Added + * Enabled nirfsg module support and added metadata for public APIs + * Documentation for APIs + * Added basic system test for nirfsg * #### Changed * #### Removed * ### `nidcpower` (NI-DCPower) From 57a7b4a581b5d775e91dd2f824872c0b0bae6589 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 13:44:00 +0000 Subject: [PATCH 10/46] Added basic nirfsg example --- src/nirfsg/examples/nirfsg_cw.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/nirfsg/examples/nirfsg_cw.py diff --git a/src/nirfsg/examples/nirfsg_cw.py b/src/nirfsg/examples/nirfsg_cw.py new file mode 100644 index 0000000000..e36fa43272 --- /dev/null +++ b/src/nirfsg/examples/nirfsg_cw.py @@ -0,0 +1,22 @@ +import nirfsg +import numpy as np + +# RFSG session create +options = "Simulate=1, DriverSetup=Model:5841" +session = nirfsg.Session(resource_name='PXI1Slot2', id_query=False, reset_device=False, options=options) +# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) + +# configure frequency to 1Ghz, power level to -10db and iq rate to 1M +session.configure_rf( + 1e9, # frequency + -10 # powerLevel + ) +#session.iq_rate = 1e6 +#session.generation_mode = nirfsg.GenerationMode.CW + +# Start generation +with session.initiate(): + # Generation context + input("Press Enter to stop generation") + +session.close() \ No newline at end of file From b8e5b2d758b3d9d6b438717fd777522e07d59bdd Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 17:51:06 +0000 Subject: [PATCH 11/46] Corrected resource name in example --- src/nirfsg/examples/nirfsg_cw.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/nirfsg/examples/nirfsg_cw.py b/src/nirfsg/examples/nirfsg_cw.py index e36fa43272..ee30d138d2 100644 --- a/src/nirfsg/examples/nirfsg_cw.py +++ b/src/nirfsg/examples/nirfsg_cw.py @@ -2,8 +2,8 @@ import numpy as np # RFSG session create -options = "Simulate=1, DriverSetup=Model:5841" -session = nirfsg.Session(resource_name='PXI1Slot2', id_query=False, reset_device=False, options=options) +options = "Simulate=0, DriverSetup=Model:5841" +session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) # session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) # configure frequency to 1Ghz, power level to -10db and iq rate to 1M @@ -12,8 +12,8 @@ -10 # powerLevel ) #session.iq_rate = 1e6 -#session.generation_mode = nirfsg.GenerationMode.CW - +session.generation_mode = nirfsg.GenerationMode.CW + # Start generation with session.initiate(): # Generation context From c77a429f8b6e4f6402f25bc920c4746700839ac4 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 17:52:09 +0000 Subject: [PATCH 12/46] Removed system test for nirfsg --- src/nirfsg/system_tests/test_system_nirfsg.py | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 src/nirfsg/system_tests/test_system_nirfsg.py diff --git a/src/nirfsg/system_tests/test_system_nirfsg.py b/src/nirfsg/system_tests/test_system_nirfsg.py deleted file mode 100644 index 52b1b13c12..0000000000 --- a/src/nirfsg/system_tests/test_system_nirfsg.py +++ /dev/null @@ -1,23 +0,0 @@ -import nirfsg -import numpy as np -import nirfsg.enums - -# RFSG session create -options = "Simulate=0, DriverSetup=Model:5841" -session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) -# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) - -# configure frequency to 1Ghz, power level to -10db and iq rate to 1M -session.configure_rf( - 1e9, # frequency - -10 # powerLevel - ) -#session.iq_rate = 1e6 -session.generation_mode = nirfsg.GenerationMode.CW - -# Start generation -with session.initiate(): - # Generation context - input("Press Enter to stop generation") - -session.close() \ No newline at end of file From 988a42e038b785f8d30b4a0f9e87457167080ae1 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 18:11:36 +0000 Subject: [PATCH 13/46] Removed example --- src/nirfsg/examples/nirfsg_cw.py | 22 ---------------------- 1 file changed, 22 deletions(-) delete mode 100644 src/nirfsg/examples/nirfsg_cw.py diff --git a/src/nirfsg/examples/nirfsg_cw.py b/src/nirfsg/examples/nirfsg_cw.py deleted file mode 100644 index ee30d138d2..0000000000 --- a/src/nirfsg/examples/nirfsg_cw.py +++ /dev/null @@ -1,22 +0,0 @@ -import nirfsg -import numpy as np - -# RFSG session create -options = "Simulate=0, DriverSetup=Model:5841" -session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) -# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) - -# configure frequency to 1Ghz, power level to -10db and iq rate to 1M -session.configure_rf( - 1e9, # frequency - -10 # powerLevel - ) -#session.iq_rate = 1e6 -session.generation_mode = nirfsg.GenerationMode.CW - -# Start generation -with session.initiate(): - # Generation context - input("Press Enter to stop generation") - -session.close() \ No newline at end of file From 5f543a040ae97096b0a5272b23aab697b3a2562c Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 18:27:32 +0000 Subject: [PATCH 14/46] Added example --- src/nirfsg/examples/nirfsg_cw.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/nirfsg/examples/nirfsg_cw.py diff --git a/src/nirfsg/examples/nirfsg_cw.py b/src/nirfsg/examples/nirfsg_cw.py new file mode 100644 index 0000000000..ee30d138d2 --- /dev/null +++ b/src/nirfsg/examples/nirfsg_cw.py @@ -0,0 +1,22 @@ +import nirfsg +import numpy as np + +# RFSG session create +options = "Simulate=0, DriverSetup=Model:5841" +session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) +# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) + +# configure frequency to 1Ghz, power level to -10db and iq rate to 1M +session.configure_rf( + 1e9, # frequency + -10 # powerLevel + ) +#session.iq_rate = 1e6 +session.generation_mode = nirfsg.GenerationMode.CW + +# Start generation +with session.initiate(): + # Generation context + input("Press Enter to stop generation") + +session.close() \ No newline at end of file From f0da80023adc63e3be5d273e6d4daaad3b2b10cb Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 18:42:42 +0000 Subject: [PATCH 15/46] Added system test for nirfsg --- src/nirfsg/system_tests/test_system_nirfsg.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/nirfsg/system_tests/test_system_nirfsg.py diff --git a/src/nirfsg/system_tests/test_system_nirfsg.py b/src/nirfsg/system_tests/test_system_nirfsg.py new file mode 100644 index 0000000000..52b1b13c12 --- /dev/null +++ b/src/nirfsg/system_tests/test_system_nirfsg.py @@ -0,0 +1,23 @@ +import nirfsg +import numpy as np +import nirfsg.enums + +# RFSG session create +options = "Simulate=0, DriverSetup=Model:5841" +session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) +# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) + +# configure frequency to 1Ghz, power level to -10db and iq rate to 1M +session.configure_rf( + 1e9, # frequency + -10 # powerLevel + ) +#session.iq_rate = 1e6 +session.generation_mode = nirfsg.GenerationMode.CW + +# Start generation +with session.initiate(): + # Generation context + input("Press Enter to stop generation") + +session.close() \ No newline at end of file From 356d12f94dbf3f71cc684f4851febb609b378399 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 19:07:44 +0000 Subject: [PATCH 16/46] generated examples.rst --- docs/nirfsg/examples.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/nirfsg/examples.rst b/docs/nirfsg/examples.rst index 4aec20a517..c00ea5aa92 100644 --- a/docs/nirfsg/examples.rst +++ b/docs/nirfsg/examples.rst @@ -3,3 +3,12 @@ Examples `You can download all nirfsg examples for latest version here `_ +nirfsg_cw.py +------------ + +.. literalinclude:: ../../src/nirfsg/examples/nirfsg_cw.py + :language: python + :linenos: + :encoding: utf8 + :caption: `(nirfsg_cw.py) `_ + From 9a94d2e09cb97fec1ba1b9a038111d61d8b81878 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 19:08:50 +0000 Subject: [PATCH 17/46] Updated tox.ini and tox-travis.ini with correct envlist --- tox-travis.ini | 2 +- tox.ini | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tox-travis.ini b/tox-travis.ini index abfd7da105..fb63f6d086 100644 --- a/tox-travis.ini +++ b/tox-travis.ini @@ -9,7 +9,7 @@ # Uncomment this line for tox.ini # envlist = py312-build_test,py312-codegen,py312-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg # Uncomment this line for tox-travis.ini -envlist = py312-clean,py312-build_test,py312-codegen,py{38,39,310,311,312}-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg +envlist = py312-clean,py312-build_test,py312-codegen,py{39,310,311,312,313}-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg skip_missing_interpreters=True ignore_basepython_conflict=True skipsdist = true diff --git a/tox.ini b/tox.ini index 7551702270..0b6d468be3 100644 --- a/tox.ini +++ b/tox.ini @@ -7,7 +7,7 @@ # tox-travis.ini will have pyXX-clean and all pyXX-installers in the default envlist, while the developer tox.ini # does not have clean and only has one pyXX-installers # Uncomment this line for tox.ini -envlist = py312-build_test,py312-codegen,py312-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg +envlist = py312-build_test,py312-codegen,py312-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg # Uncomment this line for tox-travis.ini # envlist = py312-clean,py312-build_test,py312-codegen,py{38,39,310,311,312}-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg skip_missing_interpreters=True From 82d360c598f77169b6591f247407009290caf401 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 19:17:43 +0000 Subject: [PATCH 18/46] Removed nirfsg from workflow files --- .github/workflows/check_latest_release.yml | 1 - .github/workflows/github_actions_aws_rhel_python64.yml | 1 - .github/workflows/github_actions_aws_windows_python32.yml | 1 - .github/workflows/github_actions_aws_windows_python64.yml | 1 - 4 files changed, 4 deletions(-) diff --git a/.github/workflows/check_latest_release.yml b/.github/workflows/check_latest_release.yml index 58b17dc023..22a9dae95f 100644 --- a/.github/workflows/check_latest_release.yml +++ b/.github/workflows/check_latest_release.yml @@ -37,7 +37,6 @@ jobs: - nimodinst - nise - niswitch - - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_rhel_python64.yml b/.github/workflows/github_actions_aws_rhel_python64.yml index c8c75b094b..f602bb87d9 100644 --- a/.github/workflows/github_actions_aws_rhel_python64.yml +++ b/.github/workflows/github_actions_aws_rhel_python64.yml @@ -38,7 +38,6 @@ jobs: - niscope - niswitch - nitclk - - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python32.yml b/.github/workflows/github_actions_aws_windows_python32.yml index b40b86a958..da695f4bd9 100644 --- a/.github/workflows/github_actions_aws_windows_python32.yml +++ b/.github/workflows/github_actions_aws_windows_python32.yml @@ -41,7 +41,6 @@ jobs: - nimodinst - nise - niswitch - - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python64.yml b/.github/workflows/github_actions_aws_windows_python64.yml index 68cbb02dc9..79faf63bf2 100644 --- a/.github/workflows/github_actions_aws_windows_python64.yml +++ b/.github/workflows/github_actions_aws_windows_python64.yml @@ -55,7 +55,6 @@ jobs: - nimodinst - nise - niswitch - - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 From 0b201887de39b3ee627c401396e29211aa24cc63 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 8 Apr 2025 19:39:14 +0000 Subject: [PATCH 19/46] Addition of nirfsg to yaml files for running the system tests --- .github/workflows/github_actions_aws_rhel_python64.yml | 1 + .github/workflows/github_actions_aws_windows_python32.yml | 1 + .github/workflows/github_actions_aws_windows_python64.yml | 1 + 3 files changed, 3 insertions(+) diff --git a/.github/workflows/github_actions_aws_rhel_python64.yml b/.github/workflows/github_actions_aws_rhel_python64.yml index f602bb87d9..c8c75b094b 100644 --- a/.github/workflows/github_actions_aws_rhel_python64.yml +++ b/.github/workflows/github_actions_aws_rhel_python64.yml @@ -38,6 +38,7 @@ jobs: - niscope - niswitch - nitclk + - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python32.yml b/.github/workflows/github_actions_aws_windows_python32.yml index da695f4bd9..b40b86a958 100644 --- a/.github/workflows/github_actions_aws_windows_python32.yml +++ b/.github/workflows/github_actions_aws_windows_python32.yml @@ -41,6 +41,7 @@ jobs: - nimodinst - nise - niswitch + - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python64.yml b/.github/workflows/github_actions_aws_windows_python64.yml index 79faf63bf2..68cbb02dc9 100644 --- a/.github/workflows/github_actions_aws_windows_python64.yml +++ b/.github/workflows/github_actions_aws_windows_python64.yml @@ -55,6 +55,7 @@ jobs: - nimodinst - nise - niswitch + - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 From 3f90d2c7e0bcecf2bf96c7ce5dcd3a85938645df Mon Sep 17 00:00:00 2001 From: Vagupta Date: Thu, 10 Apr 2025 05:22:14 +0000 Subject: [PATCH 20/46] Added enums related to functions --- docs/nirfsg/class.rst | 186 ++++++++-- .../nirfsg/nirfsg/_library_interpreter.py | 20 +- generated/nirfsg/nirfsg/session.py | 188 +++++++++- src/nirfsg/metadata/functions.py | 348 +++++++++++++++++- 4 files changed, 672 insertions(+), 70 deletions(-) diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index faf81f9cb3..e64eb446e3 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -632,9 +632,17 @@ configure_deembedding_table_interpolation_linear :param format: - Specifies the format of parameters to interpolate. + Specifies the format of parameters to interpolate. **Defined Values** : - + +--------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==================================================+================+=========================================================================================================================================+ + | :py:data:`~nirfsg.Format.REAL_AND_IMAGINARY` | 26000 (0x6590) | Results in a linear interpolation of the real portion of the complex number and a separate linear interpolation of the complex portion. | + +--------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.Format.MAGNITUDE_AND_PHASE` | 26001 (0x6591) | Results in a linear interpolation of the magnitude and a separate linear interpolation of the phase. | + +--------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.Format.MAGNITUDE_DB_AND_PHASE` | 26002 (0x6592) | Results in a linear interpolation of the magnitude, in decibels, and a separate linear interpolation of the phase. | + +--------------------------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ :type format: :py:data:`nirfsg.Format` @@ -869,12 +877,20 @@ configure_generation_mode :param generation_mode: - Specifies the mode used by NI-RFSG for generating an RF output signal. + Specifies the mode used by NI-RFSG for generating an RF output signal. **Defined Values** : - + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +================================================+==============+==================================================================================================================================================+ + | :py:data:`~nirfsg.GenerationMode.CW` | 1000 (0x3e8) | Configures the RF signal generator to generate a CW signal. | + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM` | 1001 (0x3e9) | Configures the RF signal generator to generate the arbitrary waveform specified by the :py:attr:`nirfsg.Session.arb_selected_waveform` property. | + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.GenerationMode.SCRIPT` | 1002 (0x3ea) | Configures the RF signal generator to generate arbitrary waveforms as directed by the :py:attr:`nirfsg.Session.selected_script` property. | + +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ - :type generation_mode: int + :type generation_mode: :py:data:`nirfsg.GenerationMode` configure_output_enabled ------------------------ @@ -1140,12 +1156,18 @@ create_deembedding_sparameter_table_s2_p_file :param sparameter_orientation: - yet to be defined + yet to be defined **Defined Values** : - + +------------------------------------------------+----------------+-----------------------------------------------------+ + | Name | Value | Description | + +================================================+================+=====================================================+ + | :py:data:`~nirfsg.SparameterOrientation.PORT1` | 24000 (0x5dc0) | Port 1 of the S2P is oriented towards the DUT port. | + +------------------------------------------------+----------------+-----------------------------------------------------+ + | :py:data:`~nirfsg.SparameterOrientation.PORT2` | 24001 (0x5dc1) | Port 2 of the S2P is oriented towards the DUT port. | + +------------------------------------------------+----------------+-----------------------------------------------------+ - :type sparameter_orientation: int + :type sparameter_orientation: :py:data:`nirfsg.SparameterOrientation` delete_all_deembedding_tables ----------------------------- @@ -1257,34 +1279,84 @@ export_signal :param signal: - Specifies the type of signal to route. + Specifies the type of signal to route. **Defined Values** : + + +-------------------------------------------------------------+---------+--------------------------------------------+ + | Name | Value | Description | + +=============================================================+=========+============================================+ + | :py:data:`~nirfsg.LoFilter.START_TRIGGER` | 0 (0x0) | Exports a Start Trigger. | + +-------------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.LoFilter.SCRIPT_TRIGGER` | 1 (0x1) | Exports a Script Trigger. | + +-------------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.LoFilter.MARKER_EVENT` | 2 (0x2) | Exports a Marker Event. | + +-------------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.LoFilter.REF_CLOCK` | 3 (0x3) | Exports the Reference Clock. | + +-------------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.LoFilter.STARTED_EVENT` | 4 (0x4) | Exports a Started Event. | + +-------------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.LoFilter.DONE_EVENT` | 5 (0x5) | Exports a Done Event. | + +-------------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.LoFilter.CONFIGURATION_LIST_STEP_TRIGGER` | 6 (0x6) | Exports a Configuration List Step Trigger. | + +-------------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.LoFilter.CONFIGURATION_SETTLED_EVENT` | 7 (0x7) | Exports a Configuration Settled Event. | + +-------------------------------------------------------------+---------+--------------------------------------------+ - + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type signal: int + :type signal: :py:data:`nirfsg.LoFilter` :param signal_identifier: - Specifies which instance of the selected signal to export. This parameter is useful when you set the :py:attr:`nirfsg.Session.SIGNAL` parameter to :py:data:`~nirfsg.NIRFSG_VAL_SCRIPT_TRIGGER` or :py:data:`~nirfsg.NIRFSG_VAL_MARKER_EVENT`. Otherwise, set the :py:attr:`nirfsg.Session.SIGNAL_IDENTIFIER` parameter to '' (empty string). - - + Specifies which instance of the selected signal to export. This parameter is useful when you set the :py:attr:`nirfsg.Session.SIGNAL` parameter to :py:data:`~nirfsg.NIRFSG_VAL_SCRIPT_TRIGGER` or :py:data:`~nirfsg.NIRFSG_VAL_MARKER_EVENT`. Otherwise, set the :py:attr:`nirfsg.Session.SIGNAL_IDENTIFIER` parameter to '' (empty string). **Defined Values** : + + +-----------------------------------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +=====================================================+================+=============================+ + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT0` | | Specifies Marker 0. | + +-----------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT1` | | Specifies Marker 1. | + +-----------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT2` | | Specifies Marker 2. | + +-----------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT3` | | Specifies Marker 3. | + +-----------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.SignalIdentifier.SCRIPT_TRIGGER0` | scriptTrigger0 | Specifies Script Trigger 0. | + +-----------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.SignalIdentifier.SCRIPT_TRIGGER1` | scriptTrigger1 | Specifies Script Trigger 1. | + +-----------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.SignalIdentifier.SCRIPT_TRIGGER2` | scriptTrigger2 | Specifies Script Trigger 2. | + +-----------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.SignalIdentifier.SCRIPT_TRIGGER3` | scriptTrigger3 | Specifies Script Trigger 3. | + +-----------------------------------------------------+----------------+-----------------------------+ .. note:: One or more of the referenced properties are not in the Python API for this driver. .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type signal_identifier: str + :type signal_identifier: :py:data:`nirfsg.SignalIdentifier` :param output_terminal: - Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841. + Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841. **Defined Values** : - + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | | + +=====================================================================+=========+============================================================================================+=======================================================================================================================================================================+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.CLK_OUT` | ClkOut | Exports the Reference Clock signal to the CLK OUT connector of the device. | Supported on PXIe-5673, 5673E | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.DO_NOT_EXPORT` | | The Reference Clock signal is not exported. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5652, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5652 (See Note) | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.REF_OUT` | RefOut | Exports the Reference Clock signal to the REF OUT connector of the device. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5653, 5653, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5653, | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportOutputTerminal.REF_OUT2` | RefOut2 | Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. | Supported on PXIe-5650/5651/5652, 5654, 5673E, PXIe-5654 with PXIe-5696 | + +---------------------------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type output_terminal: str + + :type output_terminal: :py:data:`nirfsg.ReferenceClockExportOutputTerminal` get_error --------- @@ -1407,12 +1479,20 @@ get_self_calibration_temperature :param module: - Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. + Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. **Defined Values** : - + +------------------------------------------+----------------+---------------------------------------------------------------------+ + | Name | Value | Description | + +==========================================+================+=====================================================================+ + | :py:data:`~nirfsg.Module.PRIMARY_MODULE` | 13000 (0x32c8) | The stand-alone device or the main module in a multi-module device. | + +------------------------------------------+----------------+---------------------------------------------------------------------+ + | :py:data:`~nirfsg.Module.AWG` | 13001 (0x32c9) | The AWG associated with the primary module. | + +------------------------------------------+----------------+---------------------------------------------------------------------+ + | :py:data:`~nirfsg.Module.LO` | 13002 (0x32ca) | The LO associated with the primary module. | + +------------------------------------------+----------------+---------------------------------------------------------------------+ - :type module: int + :type module: :py:data:`nirfsg.Module` :rtype: float :return: @@ -1839,12 +1919,28 @@ self_calibrate_range :param steps_to_omit: - Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. + Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** : + + +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=============================================================+===========+=====================================================================================================================+ + | :py:data:`~nirfsg.SelfCalibrateRange.OMIT_NONE` | 0 (0x0) | No calibration steps are omitted. | + +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRange.LO_SELF_CAL` | 1 (0x1) | Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. | + +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRange.POWER_LEVEL_ACCURACY` | 2 (0x2) | Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. | + +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRange.RESIDUAL_LO_POWER` | 4 (0x4) | Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. | + +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRange.IMAGE_SUPPRESSION` | 8 (0x8) | Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. | + +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRange.SYNTHESIZER_ALIGNMENT` | 16 (0x10) | Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. | + +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type steps_to_omit: int + :type steps_to_omit: :py:data:`nirfsg.SelfCalibrateRange` :param min_frequency: @@ -1931,25 +2027,43 @@ send_software_edge_trigger :param trigger: - Specifies the trigger to send. + Specifies the trigger to send. **Defined Values** : - + +-----------------------------------+---------+-------------------------------+ + | Name | Value | Description | + +===================================+=========+===============================+ + | :py:data:`~nirfsg.Trigger.START` | 0 (0x0) | Specifies the Start Trigger. | + +-----------------------------------+---------+-------------------------------+ + | :py:data:`~nirfsg.Trigger.SCRIPT` | 1 (0x1) | Specifies the Script Trigger. | + +-----------------------------------+---------+-------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type trigger: int + :type trigger: :py:data:`nirfsg.Trigger` :param trigger_identifier: - Specifies the Script Trigger to configure. This parameter is valid only when you set the :py:attr:`nirfsg.Session.TRIGGER` parameter to :py:data:`~nirfsg.NIRFSG_VAL_START_TRIGGER`. Otherwise, set the :py:attr:`nirfsg.Session.TRIGGER_IDENTIFIER` parameter to '' (empty string). + Specifies the Script Trigger to configure. This parameter is valid only when you set the :py:attr:`nirfsg.Session.TRIGGER` parameter to :py:data:`~nirfsg.NIRFSG_VAL_START_TRIGGER`. Otherwise, set the :py:attr:`nirfsg.Session.TRIGGER_IDENTIFIER` parameter to '' (empty string). **Defined Values** : - + +-----------------------------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +===============================================+================+=============================+ + | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER0` | scriptTrigger0 | Specifies Script Trigger 0. | + +-----------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER1` | scriptTrigger1 | Specifies Script Trigger 1. | + +-----------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER2` | scriptTrigger2 | Specifies Script Trigger 2. | + +-----------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER3` | scriptTrigger3 | Specifies Script Trigger 3. | + +-----------------------------------------------+----------------+-----------------------------+ .. note:: One or more of the referenced properties are not in the Python API for this driver. .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type trigger_identifier: str + :type trigger_identifier: :py:data:`nirfsg.TriggerIdentifier` set_arb_waveform_next_write_position ------------------------------------ @@ -1980,14 +2094,20 @@ set_arb_waveform_next_write_position :param relative_to: - Specifies the reference position in the waveform. The position and :py:attr:`nirfsg.Session.OFFSET` together determine where to start loading data into the waveform. + Specifies the reference position in the waveform. The position and :py:attr:`nirfsg.Session.OFFSET` together determine where to start loading data into the waveform. **Defined Values** : - + +-------------------------------------------------+---------------+------------------------------------------------------------------+ + | Name | Value | Description | + +=================================================+===============+==================================================================+ + | :py:data:`~nirfsg.RelativeTo.START_OF_WAVEFORM` | 8000 (0x1f40) | The reference position is relative to the start of the waveform. | + +-------------------------------------------------+---------------+------------------------------------------------------------------+ + | :py:data:`~nirfsg.RelativeTo.CURRENT_POSITION` | 8001 (0x1f41) | The reference position is relative to the current position. | + +-------------------------------------------------+---------------+------------------------------------------------------------------+ .. note:: One or more of the referenced properties are not in the Python API for this driver. - :type relative_to: int + :type relative_to: :py:data:`nirfsg.RelativeTo` :param offset: diff --git a/generated/nirfsg/nirfsg/_library_interpreter.py b/generated/nirfsg/nirfsg/_library_interpreter.py index 85f6a1f596..0646b26fd7 100644 --- a/generated/nirfsg/nirfsg/_library_interpreter.py +++ b/generated/nirfsg/nirfsg/_library_interpreter.py @@ -271,7 +271,7 @@ def configure_digital_modulation_user_defined_waveform(self, number_of_samples, def configure_generation_mode(self, generation_mode): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 - generation_mode_ctype = _visatype.ViInt32(generation_mode) # case S150 + generation_mode_ctype = _visatype.ViInt32(generation_mode.value) # case S130 error_code = self._library.niRFSG_ConfigureGenerationMode(vi_ctype, generation_mode_ctype) errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return @@ -345,7 +345,7 @@ def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_fi port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020 table_name_ctype = ctypes.create_string_buffer(table_name.encode(self._encoding)) # case C020 s2p_file_path_ctype = ctypes.create_string_buffer(s2p_file_path.encode(self._encoding)) # case C020 - sparameter_orientation_ctype = _visatype.ViInt32(sparameter_orientation) # case S150 + sparameter_orientation_ctype = _visatype.ViInt32(sparameter_orientation.value) # case S130 error_code = self._library.niRFSG_CreateDeembeddingSparameterTableS2PFile(vi_ctype, port_ctype, table_name_ctype, s2p_file_path_ctype, sparameter_orientation_ctype) errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return @@ -385,9 +385,9 @@ def disable_start_trigger(self): # noqa: N802 def export_signal(self, signal, signal_identifier, output_terminal): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 - signal_ctype = _visatype.ViInt32(signal) # case S150 - signal_identifier_ctype = ctypes.create_string_buffer(signal_identifier.encode(self._encoding)) # case C020 - output_terminal_ctype = ctypes.create_string_buffer(output_terminal.encode(self._encoding)) # case C020 + signal_ctype = _visatype.ViInt32(signal.value) # case S130 + signal_identifier_ctype = ctypes.create_string_buffer(signal_identifier.value.encode(self._encoding)) # case C030 + output_terminal_ctype = ctypes.create_string_buffer(output_terminal.value.encode(self._encoding)) # case C030 error_code = self._library.niRFSG_ExportSignal(vi_ctype, signal_ctype, signal_identifier_ctype, output_terminal_ctype) errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return @@ -498,7 +498,7 @@ def get_self_calibration_date_and_time(self, module): # noqa: N802 def get_self_calibration_temperature(self, module): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 - module_ctype = _visatype.ViInt32(module) # case S150 + module_ctype = _visatype.ViInt32(module.value) # case S130 temperature_ctype = _visatype.ViReal64() # case S220 error_code = self._library.niRFSG_GetSelfCalibrationTemperature(vi_ctype, module_ctype, None if temperature_ctype is None else (ctypes.pointer(temperature_ctype))) errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) @@ -652,7 +652,7 @@ def self_cal(self): # noqa: N802 def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 - steps_to_omit_ctype = _visatype.ViInt64(steps_to_omit) # case S150 + steps_to_omit_ctype = _visatype.ViInt64(steps_to_omit.value) # case S130 min_frequency_ctype = _visatype.ViReal64(min_frequency) # case S150 max_frequency_ctype = _visatype.ViReal64(max_frequency) # case S150 min_power_level_ctype = _visatype.ViReal64(min_power_level) # case S150 @@ -671,8 +671,8 @@ def self_test(self, self_test_message): # noqa: N802 def send_software_edge_trigger(self, trigger, trigger_identifier): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 - trigger_ctype = _visatype.ViInt32(trigger) # case S150 - trigger_identifier_ctype = ctypes.create_string_buffer(trigger_identifier.encode(self._encoding)) # case C020 + trigger_ctype = _visatype.ViInt32(trigger.value) # case S130 + trigger_identifier_ctype = ctypes.create_string_buffer(trigger_identifier.value.encode(self._encoding)) # case C030 error_code = self._library.niRFSG_SendSoftwareEdgeTrigger(vi_ctype, trigger_ctype, trigger_identifier_ctype) errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) return @@ -680,7 +680,7 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): # noqa: N802 def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offset): # noqa: N802 vi_ctype = _visatype.ViSession(self._vi) # case S110 waveform_name_ctype = ctypes.create_string_buffer(waveform_name.encode(self._encoding)) # case C020 - relative_to_ctype = _visatype.ViInt32(relative_to) # case S150 + relative_to_ctype = _visatype.ViInt32(relative_to.value) # case S130 offset_ctype = _visatype.ViInt32(offset) # case S150 error_code = self._library.niRFSG_SetArbWaveformNextWritePosition(vi_ctype, waveform_name_ctype, relative_to_ctype, offset_ctype) errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False) diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index 1b086b0666..4f2ba96772 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -5966,9 +5966,32 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger. Args: - trigger (int): Specifies the trigger to send. + trigger (enums.Trigger): Specifies the trigger to send. **Defined Values** : - trigger_identifier (str): Specifies the Script Trigger to configure. This parameter is valid only when you set the TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the TRIGGER_IDENTIFIER parameter to '' (empty string). + +----------------+---------+-------------------------------+ + | Name | Value | Description | + +================+=========+===============================+ + | Trigger.START | 0 (0x0) | Specifies the Start Trigger. | + +----------------+---------+-------------------------------+ + | Trigger.SCRIPT | 1 (0x1) | Specifies the Script Trigger. | + +----------------+---------+-------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + trigger_identifier (enums.TriggerIdentifier): Specifies the Script Trigger to configure. This parameter is valid only when you set the TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the TRIGGER_IDENTIFIER parameter to '' (empty string). **Defined Values** : + + +----------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +============================+================+=============================+ + | TriggerIdentifier.TRIGGER0 | scriptTrigger0 | Specifies Script Trigger 0. | + +----------------------------+----------------+-----------------------------+ + | TriggerIdentifier.TRIGGER1 | scriptTrigger1 | Specifies Script Trigger 1. | + +----------------------------+----------------+-----------------------------+ + | TriggerIdentifier.TRIGGER2 | scriptTrigger2 | Specifies Script Trigger 2. | + +----------------------------+----------------+-----------------------------+ + | TriggerIdentifier.TRIGGER3 | scriptTrigger3 | Specifies Script Trigger 3. | + +----------------------------+----------------+-----------------------------+ Note: One or more of the referenced properties are not in the Python API for this driver. @@ -5977,6 +6000,10 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. ''' + if type(trigger) is not enums.Trigger: + raise TypeError('Parameter trigger must be of type ' + str(enums.Trigger)) + if type(trigger_identifier) is not enums.TriggerIdentifier: + raise TypeError('Parameter trigger_identifier must be of type ' + str(enums.TriggerIdentifier)) self._interpreter.send_software_edge_trigger(trigger, trigger_identifier) @ivi_synchronized @@ -6507,7 +6534,17 @@ def configure_deembedding_table_interpolation_linear(self, port, table_name, for table_name (str): Specifies the name of the table. - format (enums.Format): Specifies the format of parameters to interpolate. + format (enums.Format): Specifies the format of parameters to interpolate. **Defined Values** : + + +-------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +===============================+================+=========================================================================================================================================+ + | Format.REAL_AND_IMAGINARY | 26000 (0x6590) | Results in a linear interpolation of the real portion of the complex number and a separate linear interpolation of the complex portion. | + +-------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Format.MAGNITUDE_AND_PHASE | 26001 (0x6591) | Results in a linear interpolation of the magnitude and a separate linear interpolation of the phase. | + +-------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ + | Format.MAGNITUDE_DB_AND_PHASE | 26002 (0x6592) | Results in a linear interpolation of the magnitude, in decibels, and a separate linear interpolation of the phase. | + +-------------------------------+----------------+-----------------------------------------------------------------------------------------------------------------------------------------+ ''' if type(format) is not enums.Format: @@ -6614,9 +6651,21 @@ def configure_generation_mode(self, generation_mode): Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. The NI-RFSG device must be in the Configuration state before you call this method. Args: - generation_mode (int): Specifies the mode used by NI-RFSG for generating an RF output signal. + generation_mode (enums.GenerationMode): Specifies the mode used by NI-RFSG for generating an RF output signal. **Defined Values** : + + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=============================+==============+========================================================================================================================+ + | GenerationMode.CW | 1000 (0x3e8) | Configures the RF signal generator to generate a CW signal. | + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + | GenerationMode.ARB_WAVEFORM | 1001 (0x3e9) | Configures the RF signal generator to generate the arbitrary waveform specified by the arb_selected_waveform property. | + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + | GenerationMode.SCRIPT | 1002 (0x3ea) | Configures the RF signal generator to generate arbitrary waveforms as directed by the selected_script property. | + +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ ''' + if type(generation_mode) is not enums.GenerationMode: + raise TypeError('Parameter generation_mode must be of type ' + str(enums.GenerationMode)) self._interpreter.configure_generation_mode(generation_mode) @ivi_synchronized @@ -6748,9 +6797,19 @@ def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_fi s2p_file_path (str): yet to be defined - sparameter_orientation (int): yet to be defined + sparameter_orientation (enums.SparameterOrientation): yet to be defined **Defined Values** : + + +-----------------------------+----------------+-----------------------------------------------------+ + | Name | Value | Description | + +=============================+================+=====================================================+ + | SparameterOrientation.PORT1 | 24000 (0x5dc0) | Port 1 of the S2P is oriented towards the DUT port. | + +-----------------------------+----------------+-----------------------------------------------------+ + | SparameterOrientation.PORT2 | 24001 (0x5dc1) | Port 2 of the S2P is oriented towards the DUT port. | + +-----------------------------+----------------+-----------------------------------------------------+ ''' + if type(sparameter_orientation) is not enums.SparameterOrientation: + raise TypeError('Parameter sparameter_orientation must be of type ' + str(enums.SparameterOrientation)) self._interpreter.create_deembedding_sparameter_table_s2_p_file(port, table_name, s2p_file_path, sparameter_orientation) @ivi_synchronized @@ -6810,9 +6869,52 @@ def export_signal(self, signal, signal_identifier, output_terminal): Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this method. Args: - signal (int): Specifies the type of signal to route. + signal (enums.LoFilter): Specifies the type of signal to route. **Defined Values** : + + +------------------------------------------+---------+--------------------------------------------+ + | Name | Value | Description | + +==========================================+=========+============================================+ + | LoFilter.START_TRIGGER | 0 (0x0) | Exports a Start Trigger. | + +------------------------------------------+---------+--------------------------------------------+ + | LoFilter.SCRIPT_TRIGGER | 1 (0x1) | Exports a Script Trigger. | + +------------------------------------------+---------+--------------------------------------------+ + | LoFilter.MARKER_EVENT | 2 (0x2) | Exports a Marker Event. | + +------------------------------------------+---------+--------------------------------------------+ + | LoFilter.REF_CLOCK | 3 (0x3) | Exports the Reference Clock. | + +------------------------------------------+---------+--------------------------------------------+ + | LoFilter.STARTED_EVENT | 4 (0x4) | Exports a Started Event. | + +------------------------------------------+---------+--------------------------------------------+ + | LoFilter.DONE_EVENT | 5 (0x5) | Exports a Done Event. | + +------------------------------------------+---------+--------------------------------------------+ + | LoFilter.CONFIGURATION_LIST_STEP_TRIGGER | 6 (0x6) | Exports a Configuration List Step Trigger. | + +------------------------------------------+---------+--------------------------------------------+ + | LoFilter.CONFIGURATION_SETTLED_EVENT | 7 (0x7) | Exports a Configuration Settled Event. | + +------------------------------------------+---------+--------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - signal_identifier (str): Specifies which instance of the selected signal to export. This parameter is useful when you set the SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the SIGNAL_IDENTIFIER parameter to '' (empty string). + signal_identifier (enums.SignalIdentifier): Specifies which instance of the selected signal to export. This parameter is useful when you set the SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the SIGNAL_IDENTIFIER parameter to '' (empty string). **Defined Values** : + + +----------------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +==================================+================+=============================+ + | SignalIdentifier.MARKER_EVENT0 | | Specifies Marker 0. | + +----------------------------------+----------------+-----------------------------+ + | SignalIdentifier.MARKER_EVENT1 | | Specifies Marker 1. | + +----------------------------------+----------------+-----------------------------+ + | SignalIdentifier.MARKER_EVENT2 | | Specifies Marker 2. | + +----------------------------------+----------------+-----------------------------+ + | SignalIdentifier.MARKER_EVENT3 | | Specifies Marker 3. | + +----------------------------------+----------------+-----------------------------+ + | SignalIdentifier.SCRIPT_TRIGGER0 | scriptTrigger0 | Specifies Script Trigger 0. | + +----------------------------------+----------------+-----------------------------+ + | SignalIdentifier.SCRIPT_TRIGGER1 | scriptTrigger1 | Specifies Script Trigger 1. | + +----------------------------------+----------------+-----------------------------+ + | SignalIdentifier.SCRIPT_TRIGGER2 | scriptTrigger2 | Specifies Script Trigger 2. | + +----------------------------------+----------------+-----------------------------+ + | SignalIdentifier.SCRIPT_TRIGGER3 | scriptTrigger3 | Specifies Script Trigger 3. | + +----------------------------------+----------------+-----------------------------+ Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6820,9 +6922,30 @@ def export_signal(self, signal, signal_identifier, output_terminal): Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - output_terminal (str): Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841. + output_terminal (enums.ReferenceClockExportOutputTerminal): Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841. **Defined Values** : + + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | | + +==================================================+=========+============================================================================================+=======================================================================================================================================================================+ + | ReferenceClockExportOutputTerminal.CLK_OUT | ClkOut | Exports the Reference Clock signal to the CLK OUT connector of the device. | Supported on PXIe-5673, 5673E | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockExportOutputTerminal.DO_NOT_EXPORT | | The Reference Clock signal is not exported. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5652, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5652 (See Note) | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockExportOutputTerminal.REF_OUT | RefOut | Exports the Reference Clock signal to the REF OUT connector of the device. | Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5653, 5653, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5653, | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockExportOutputTerminal.REF_OUT2 | RefOut2 | Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable. | Supported on PXIe-5650/5651/5652, 5654, 5673E, PXIe-5654 with PXIe-5696 | + +--------------------------------------------------+---------+--------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. ''' + if type(signal) is not enums.LoFilter: + raise TypeError('Parameter signal must be of type ' + str(enums.LoFilter)) + if type(signal_identifier) is not enums.SignalIdentifier: + raise TypeError('Parameter signal_identifier must be of type ' + str(enums.SignalIdentifier)) + if type(output_terminal) is not enums.ReferenceClockExportOutputTerminal: + raise TypeError('Parameter output_terminal must be of type ' + str(enums.ReferenceClockExportOutputTerminal)) self._interpreter.export_signal(signal, signal_identifier, output_terminal) @ivi_synchronized @@ -6921,13 +7044,25 @@ def get_self_calibration_temperature(self, module): Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. Args: - module (int): Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. + module (enums.Module): Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. **Defined Values** : + + +-----------------------+----------------+---------------------------------------------------------------------+ + | Name | Value | Description | + +=======================+================+=====================================================================+ + | Module.PRIMARY_MODULE | 13000 (0x32c8) | The stand-alone device or the main module in a multi-module device. | + +-----------------------+----------------+---------------------------------------------------------------------+ + | Module.AWG | 13001 (0x32c9) | The AWG associated with the primary module. | + +-----------------------+----------------+---------------------------------------------------------------------+ + | Module.LO | 13002 (0x32ca) | The LO associated with the primary module. | + +-----------------------+----------------+---------------------------------------------------------------------+ Returns: temperature (float): Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. ''' + if type(module) is not enums.Module: + raise TypeError('Parameter module must be of type ' + str(enums.Module)) temperature = self._interpreter.get_self_calibration_temperature(module) return temperature @@ -7098,7 +7233,26 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ Note: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. Args: - steps_to_omit (int): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. + steps_to_omit (enums.SelfCalibrateRange): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** : + + +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +==========================================+===========+=====================================================================================================================+ + | SelfCalibrateRange.OMIT_NONE | 0 (0x0) | No calibration steps are omitted. | + +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRange.LO_SELF_CAL | 1 (0x1) | Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. | + +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRange.POWER_LEVEL_ACCURACY | 2 (0x2) | Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. | + +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRange.RESIDUAL_LO_POWER | 4 (0x4) | Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. | + +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRange.IMAGE_SUPPRESSION | 8 (0x8) | Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. | + +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRange.SYNTHESIZER_ALIGNMENT | 16 (0x10) | Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. | + +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. min_frequency (float): Specifies the minimum frequency to calibrate. @@ -7109,6 +7263,8 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ max_power_level (float): Specifies the maximum power level to calibrate. ''' + if type(steps_to_omit) is not enums.SelfCalibrateRange: + raise TypeError('Parameter steps_to_omit must be of type ' + str(enums.SelfCalibrateRange)) self._interpreter.self_calibrate_range(steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) @ivi_synchronized @@ -7142,7 +7298,15 @@ def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offse Args: waveform_name (str): Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ - relative_to (int): Specifies the reference position in the waveform. The position and OFFSET together determine where to start loading data into the waveform. + relative_to (enums.RelativeTo): Specifies the reference position in the waveform. The position and OFFSET together determine where to start loading data into the waveform. **Defined Values** : + + +------------------------------+---------------+------------------------------------------------------------------+ + | Name | Value | Description | + +==============================+===============+==================================================================+ + | RelativeTo.START_OF_WAVEFORM | 8000 (0x1f40) | The reference position is relative to the start of the waveform. | + +------------------------------+---------------+------------------------------------------------------------------+ + | RelativeTo.CURRENT_POSITION | 8001 (0x1f41) | The reference position is relative to the current position. | + +------------------------------+---------------+------------------------------------------------------------------+ Note: One or more of the referenced properties are not in the Python API for this driver. @@ -7150,6 +7314,8 @@ def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offse offset (int): Specifies the offset from the **relative to** parameter at which to start loading the data into the waveform. ''' + if type(relative_to) is not enums.RelativeTo: + raise TypeError('Parameter relative_to must be of type ' + str(enums.RelativeTo)) self._interpreter.set_arb_waveform_next_write_position(waveform_name, relative_to, offset) @ivi_synchronized diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index cd644395b0..bc0e491f72 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -845,7 +845,29 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the format of parameters to interpolate.' + 'description': 'Specifies the format of parameters to interpolate. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_LINEAR_INTERPOLATION_FORMAT_REAL_AND_IMAGINARY', + '26000 (0x6590)', + 'Results in a linear interpolation of the real portion of the complex number and a separate linear interpolation of the complex portion.' + ], + [ + 'NIRFSG_VAL_LINEAR_INTERPOLATION_FORMAT_MAGNITUDE_AND_PHASE', + '26001 (0x6591)', + 'Results in a linear interpolation of the magnitude and a separate linear interpolation of the phase.' + ], + [ + 'NIRFSG_VAL_LINEAR_INTERPOLATION_FORMAT_MAGNITUDE_DB_AND_PHASE', + '26002 (0x6592)', + 'Results in a linear interpolation of the magnitude, in decibels, and a separate linear interpolation of the phase.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] }, 'enum': 'Format', 'name': 'format', @@ -1211,8 +1233,31 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the mode used by NI-RFSG for generating an RF output signal.' + 'description': 'Specifies the mode used by NI-RFSG for generating an RF output signal. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_CW', + '1000 (0x3e8)', + 'Configures the RF signal generator to generate a CW signal.' + ], + [ + 'NIRFSG_VAL_ARB_WAVEFORM', + '1001 (0x3e9)', + 'Configures the RF signal generator to generate the arbitrary waveform specified by the NIRFSG_ATTR_ARB_SELECTED_WAVEFORM attribute.' + ], + [ + 'NIRFSG_VAL_SCRIPT', + '1002 (0x3ea)', + 'Configures the RF signal generator to generate arbitrary waveforms as directed by the NIRFSG_ATTR_SELECTED_SCRIPT attribute.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] }, + 'enum': 'GenerationMode', 'name': 'generationMode', 'type': 'ViInt32', 'use_array': False, @@ -1652,8 +1697,26 @@ { 'direction': 'in', 'documentation': { - 'description': 'yet to be defined' + 'description': 'yet to be defined **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_PORT1_TOWARDS_DUT', + '24000 (0x5dc0)', + 'Port 1 of the S2P is oriented towards the DUT port.' + ], + [ + 'NIRFSG_VAL_PORT2_TOWARDS_DUT', + '24001 (0x5dc1)', + 'Port 2 of the S2P is oriented towards the DUT port.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] }, + 'enum': 'SparameterOrientation', 'name': 'sparameterOrientation', 'type': 'ViInt32', 'use_array': False, @@ -1872,8 +1935,56 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies the type of signal to route.' - }, + 'description': ' Specifies the type of signal to route. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_START_TRIGGER', + '0 (0x0)', + 'Exports a Start Trigger.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER', + '1 (0x1)', + 'Exports a Script Trigger.' + ], + [ + 'NIRFSG_VAL_MARKER_EVENT', + '2 (0x2)', + 'Exports a Marker Event.' + ], + [ + 'NIRFSG_VAL_REF_CLOCK', + '3 (0x3)', + 'Exports the Reference Clock.' + ], + [ + 'NIRFSG_VAL_STARTED_EVENT', + '4 (0x4)', + 'Exports a Started Event.' + ], + [ + 'NIRFSG_VAL_DONE_EVENT', + '5 (0x5)', + 'Exports a Done Event.' + ], + [ + 'NIRFSG_VAL_CONFIGURATION_LIST_STEP_TRIGGER', + '6 (0x6)', + 'Exports a Configuration List Step Trigger.' + ], + [ + 'NIRFSG_VAL_CONFIGURATION_SETTLED_EVENT', + '7 (0x7)', + 'Exports a Configuration Settled Event.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'LoFilter', 'name': 'signal', 'type': 'ViInt32', 'use_array': False, @@ -1882,8 +1993,56 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies which instance of the selected signal to export. This parameter is useful when you set the NIRFSG_ATTR_SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the NIRFSG_ATTR_SIGNAL_IDENTIFIER parameter to '' (empty string)." - }, + 'description': "Specifies which instance of the selected signal to export. This parameter is useful when you set the NIRFSG_ATTR_SIGNAL parameter to NIRFSG_VAL_SCRIPT_TRIGGER or NIRFSG_VAL_MARKER_EVENT. Otherwise, set the NIRFSG_ATTR_SIGNAL_IDENTIFIER parameter to '' (empty string). **Defined Values** :", + 'table_body': [ + [ + 'NIRFSG_VAL_MARKER_EVENT0', + '', + 'Specifies Marker 0.' + ], + [ + 'NIRFSG_VAL_MARKER_EVENT1', + '', + 'Specifies Marker 1.' + ], + [ + 'NIRFSG_VAL_MARKER_EVENT2', + '', + 'Specifies Marker 2.' + ], + [ + 'NIRFSG_VAL_MARKER_EVENT3', + '', + 'Specifies Marker 3.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER0', + 'scriptTrigger0', + 'Specifies Script Trigger 0.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER1', + 'scriptTrigger1', + 'Specifies Script Trigger 1.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER2', + 'scriptTrigger2', + 'Specifies Script Trigger 2.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER3', + 'scriptTrigger3', + 'Specifies Script Trigger 3.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'SignalIdentifier', 'name': 'signalIdentifier', 'type': 'ViConstString', 'use_array': False, @@ -1892,8 +2051,40 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841.' - }, + 'description': 'Specifies the terminal where the signal is exported. You can choose not to export any signal. For the PXIe-5841 with PXIe-5655, the signal is exported to the terminal on the PXIe-5841. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_CLK_OUT_STR', + 'ClkOut', + 'Exports the Reference Clock signal to the CLK OUT connector of the device.', + 'Supported on PXIe-5673, 5673E' + ], + [ + 'NIRFSG_VAL_DO_NOT_EXPORT_STR', + '', + 'The Reference Clock signal is not exported.', + 'Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5652, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5652 (See Note)' + ], + [ + 'NIRFSG_VAL_REF_OUT_STR', + 'RefOut', + 'Exports the Reference Clock signal to the REF OUT connector of the device.', + 'Supported on PXIe-5644/5645/5646, 5820/5830/5831/5832/5840/5841/5842/5860, 5650/5651/5653, 5653, 5654, 5673, 5673E, PXIe-5654 with PXIe-5696, PXI-5650/5651/5653, ' + ], + [ + 'NIRFSG_VAL_REF_OUT2_STR', + 'RefOut2', + 'Exports the Reference Clock signal to the REF OUT2 connector of the device, if applicable.', + 'Supported on PXIe-5650/5651/5652, 5654, 5673E, PXIe-5654 with PXIe-5696' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'ReferenceClockExportOutputTerminal', 'name': 'outputTerminal', 'type': 'ViConstString', 'use_array': False, @@ -2664,8 +2855,31 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration temperature.' + 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_PRIMARY_MODULE', + '13000 (0x32c8)', + 'The stand-alone device or the main module in a multi-module device.' + ], + [ + 'NIRFSG_VAL_AWG', + '13001 (0x32c9)', + 'The AWG associated with the primary module.' + ], + [ + 'NIRFSG_VAL_LO', + '13002 (0x32ca)', + 'The LO associated with the primary module.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] }, + 'enum': 'Module', 'name': 'module', 'type': 'ViInt32', 'use_array': False, @@ -3615,8 +3829,46 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted.' - }, + 'description': 'Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_SELF_CAL_OMIT_NONE', + '0 (0x0)', + 'No calibration steps are omitted.' + ], + [ + 'NIRFSG_VAL_SELF_CAL_LO_SELF_CAL', + '1 (0x1)', + 'Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted.' + ], + [ + 'NIRFSG_VAL_SELF_CAL_POWER_LEVEL_ACCURACY', + '2 (0x2)', + 'Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted.' + ], + [ + 'NIRFSG_VAL_SELF_CAL_RESIDUAL_LO_POWER', + '4 (0x4)', + 'Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted.' + ], + [ + 'NIRFSG_VAL_SELF_CAL_IMAGE_SUPPRESSION', + '8 (0x8)', + 'Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted.' + ], + [ + 'NIRFSG_VAL_SELF_CAL_SYNTHESIZER_ALIGNMENT', + '16 (0x10)', + 'Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'SelfCalibrateRange', 'name': 'stepsToOmit', 'type': 'ViInt64', 'use_array': False, @@ -3733,8 +3985,26 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the trigger to send.' + 'description': 'Specifies the trigger to send. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_START_TRIGGER', + '0 (0x0)', + 'Specifies the Start Trigger.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER', + '1 (0x1)', + 'Specifies the Script Trigger.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] }, + 'enum': 'Trigger', 'name': 'trigger', 'type': 'ViInt32', 'use_array': False, @@ -3743,8 +4013,36 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the Script Trigger to configure. This parameter is valid only when you set the NIRFSG_ATTR_TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the NIRFSG_ATTR_TRIGGER_IDENTIFIER parameter to '' (empty string)." - }, + 'description': "Specifies the Script Trigger to configure. This parameter is valid only when you set the NIRFSG_ATTR_TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the NIRFSG_ATTR_TRIGGER_IDENTIFIER parameter to '' (empty string). **Defined Values** :", + 'table_body': [ + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER0', + 'scriptTrigger0', + 'Specifies Script Trigger 0.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER1', + 'scriptTrigger1', + 'Specifies Script Trigger 1.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER2', + 'scriptTrigger2', + 'Specifies Script Trigger 2.' + ], + [ + 'NIRFSG_VAL_SCRIPT_TRIGGER3', + 'scriptTrigger3', + 'Specifies Script Trigger 3.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] + }, + 'enum': 'TriggerIdentifier', 'name': 'triggerIdentifier', 'type': 'ViConstString', 'use_array': False, @@ -3795,8 +4093,26 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the reference position in the waveform. The position and NIRFSG_ATTR_OFFSET together determine where to start loading data into the waveform.' + 'description': 'Specifies the reference position in the waveform. The position and NIRFSG_ATTR_OFFSET together determine where to start loading data into the waveform. **Defined Values** :', + 'table_body': [ + [ + 'NIRFSG_VAL_START_OF_WAVEFORM', + '8000 (0x1f40)', + 'The reference position is relative to the start of the waveform.' + ], + [ + 'NIRFSG_VAL_CURRENT_POSITION', + '8001 (0x1f41)', + 'The reference position is relative to the current position.' + ] + ], + 'table_header': [ + 'Name', + 'Value', + 'Description' + ] }, + 'enum': 'RelativeTo', 'name': 'relativeTo', 'type': 'ViInt32', 'use_array': False, From 017a78b85bd88787ee2844885038f5c2d910227f Mon Sep 17 00:00:00 2001 From: Vagupta Date: Thu, 10 Apr 2025 08:37:20 +0000 Subject: [PATCH 21/46] Related enums to functionas and renamed some enums --- docs/nirfsg/class.rst | 88 ++++---- docs/nirfsg/enums.rst | 348 ++++++++++++++--------------- generated/nirfsg/nirfsg/enums.py | 140 ++++++------ generated/nirfsg/nirfsg/session.py | 104 ++++----- src/nirfsg/metadata/enums.py | 242 ++++++++++---------- src/nirfsg/metadata/functions.py | 6 +- 6 files changed, 464 insertions(+), 464 deletions(-) diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index e64eb446e3..5a0f37f921 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -1281,30 +1281,30 @@ export_signal Specifies the type of signal to route. **Defined Values** : - +-------------------------------------------------------------+---------+--------------------------------------------+ - | Name | Value | Description | - +=============================================================+=========+============================================+ - | :py:data:`~nirfsg.LoFilter.START_TRIGGER` | 0 (0x0) | Exports a Start Trigger. | - +-------------------------------------------------------------+---------+--------------------------------------------+ - | :py:data:`~nirfsg.LoFilter.SCRIPT_TRIGGER` | 1 (0x1) | Exports a Script Trigger. | - +-------------------------------------------------------------+---------+--------------------------------------------+ - | :py:data:`~nirfsg.LoFilter.MARKER_EVENT` | 2 (0x2) | Exports a Marker Event. | - +-------------------------------------------------------------+---------+--------------------------------------------+ - | :py:data:`~nirfsg.LoFilter.REF_CLOCK` | 3 (0x3) | Exports the Reference Clock. | - +-------------------------------------------------------------+---------+--------------------------------------------+ - | :py:data:`~nirfsg.LoFilter.STARTED_EVENT` | 4 (0x4) | Exports a Started Event. | - +-------------------------------------------------------------+---------+--------------------------------------------+ - | :py:data:`~nirfsg.LoFilter.DONE_EVENT` | 5 (0x5) | Exports a Done Event. | - +-------------------------------------------------------------+---------+--------------------------------------------+ - | :py:data:`~nirfsg.LoFilter.CONFIGURATION_LIST_STEP_TRIGGER` | 6 (0x6) | Exports a Configuration List Step Trigger. | - +-------------------------------------------------------------+---------+--------------------------------------------+ - | :py:data:`~nirfsg.LoFilter.CONFIGURATION_SETTLED_EVENT` | 7 (0x7) | Exports a Configuration Settled Event. | - +-------------------------------------------------------------+---------+--------------------------------------------+ + +-----------------------------------------------------------+---------+--------------------------------------------+ + | Name | Value | Description | + +===========================================================+=========+============================================+ + | :py:data:`~nirfsg.Signal.START_TRIGGER` | 0 (0x0) | Exports a Start Trigger. | + +-----------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.Signal.SCRIPT_TRIGGER` | 1 (0x1) | Exports a Script Trigger. | + +-----------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.Signal.MARKER_EVENT` | 2 (0x2) | Exports a Marker Event. | + +-----------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.Signal.REF_CLOCK` | 3 (0x3) | Exports the Reference Clock. | + +-----------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.Signal.STARTED_EVENT` | 4 (0x4) | Exports a Started Event. | + +-----------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.Signal.DONE_EVENT` | 5 (0x5) | Exports a Done Event. | + +-----------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.Signal.CONFIGURATION_LIST_STEP_TRIGGER` | 6 (0x6) | Exports a Configuration List Step Trigger. | + +-----------------------------------------------------------+---------+--------------------------------------------+ + | :py:data:`~nirfsg.Signal.CONFIGURATION_SETTLED_EVENT` | 7 (0x7) | Exports a Configuration Settled Event. | + +-----------------------------------------------------------+---------+--------------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type signal: :py:data:`nirfsg.LoFilter` + :type signal: :py:data:`nirfsg.Signal` :param signal_identifier: @@ -1921,26 +1921,26 @@ self_calibrate_range Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** : - +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +=============================================================+===========+=====================================================================================================================+ - | :py:data:`~nirfsg.SelfCalibrateRange.OMIT_NONE` | 0 (0x0) | No calibration steps are omitted. | - +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.SelfCalibrateRange.LO_SELF_CAL` | 1 (0x1) | Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. | - +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.SelfCalibrateRange.POWER_LEVEL_ACCURACY` | 2 (0x2) | Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. | - +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.SelfCalibrateRange.RESIDUAL_LO_POWER` | 4 (0x4) | Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. | - +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.SelfCalibrateRange.IMAGE_SUPPRESSION` | 8 (0x8) | Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. | - +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.SelfCalibrateRange.SYNTHESIZER_ALIGNMENT` | 16 (0x10) | Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. | - +-------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +========================================================================+===========+=====================================================================================================================+ + | :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.OMIT_NONE` | 0 (0x0) | No calibration steps are omitted. | + +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.LO_SELF_CAL` | 1 (0x1) | Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. | + +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.POWER_LEVEL_ACCURACY` | 2 (0x2) | Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. | + +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.RESIDUAL_LO_POWER` | 4 (0x4) | Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. | + +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.IMAGE_SUPPRESSION` | 8 (0x8) | Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. | + +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.SYNTHESIZER_ALIGNMENT` | 16 (0x10) | Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. | + +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type steps_to_omit: :py:data:`nirfsg.SelfCalibrateRange` + :type steps_to_omit: :py:data:`nirfsg.SelfCalibrateRangeStepsToOmit` :param min_frequency: @@ -2029,18 +2029,18 @@ send_software_edge_trigger Specifies the trigger to send. **Defined Values** : - +-----------------------------------+---------+-------------------------------+ - | Name | Value | Description | - +===================================+=========+===============================+ - | :py:data:`~nirfsg.Trigger.START` | 0 (0x0) | Specifies the Start Trigger. | - +-----------------------------------+---------+-------------------------------+ - | :py:data:`~nirfsg.Trigger.SCRIPT` | 1 (0x1) | Specifies the Script Trigger. | - +-----------------------------------+---------+-------------------------------+ + +-----------------------------------------------+---------+-------------------------------+ + | Name | Value | Description | + +===============================================+=========+===============================+ + | :py:data:`~nirfsg.SoftwareTriggerType.START` | 0 (0x0) | Specifies the Start Trigger. | + +-----------------------------------------------+---------+-------------------------------+ + | :py:data:`~nirfsg.SoftwareTriggerType.SCRIPT` | 1 (0x1) | Specifies the Script Trigger. | + +-----------------------------------------------+---------+-------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - :type trigger: :py:data:`nirfsg.Trigger` + :type trigger: :py:data:`nirfsg.SoftwareTriggerType` :param trigger_identifier: diff --git a/docs/nirfsg/enums.rst b/docs/nirfsg/enums.rst index 772184a231..a506858c36 100644 --- a/docs/nirfsg/enums.rst +++ b/docs/nirfsg/enums.rst @@ -1568,91 +1568,6 @@ Lo1OutputFilter -LoFilter --------- - -.. py:class:: LoFilter - - .. py:attribute:: LoFilter.CONFIGURATION_SETTLED_EVENT - - - - Exports a Configuration Settled Event. - - - - - - .. py:attribute:: LoFilter.CONFIGURATION_LIST_STEP_TRIGGER - - - - Exports a Configuration List Step Trigger. - - - - - - .. py:attribute:: LoFilter.DONE_EVENT - - - - Exports a Done Event. - - - - - - .. py:attribute:: LoFilter.MARKER_EVENT - - - - Exports a Marker Event. - - - - - - .. py:attribute:: LoFilter.REF_CLOCK - - - - Exports the Reference Clock. - - - - - - .. py:attribute:: LoFilter.SCRIPT_TRIGGER - - - - Exports a Script Trigger. - - - - - - .. py:attribute:: LoFilter.START_TRIGGER - - - - Exports a Start Trigger. - - - - - - .. py:attribute:: LoFilter.STARTED_EVENT - - - - Exports a Started Event. - - - - - LoOutEnabled ------------ @@ -2942,6 +2857,61 @@ ResetOptions +ResetWithOptionsStepsToOmit +--------------------------- + +.. py:class:: ResetWithOptionsStepsToOmit + + .. py:attribute:: ResetWithOptionsStepsToOmit.DEEMBEDDING_TABLES + + + + Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840. + + + + + + .. py:attribute:: ResetWithOptionsStepsToOmit.NONE + + + + No step is omitted during reset. + + + + + + .. py:attribute:: ResetWithOptionsStepsToOmit.ROUTES + + + + Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset. + + + + + + .. py:attribute:: ResetWithOptionsStepsToOmit.SCRIPTS + + + + Omits clearing scripts. + + + + + + .. py:attribute:: ResetWithOptionsStepsToOmit.WAVEFORMS + + + + Omits clearing waveforms. + + + + + ScriptTrigDigEdgeEdge --------------------- @@ -3732,12 +3702,12 @@ ScriptTrigType -SelfCalibrateRange ------------------- +SelfCalibrateRangeStepsToOmit +----------------------------- -.. py:class:: SelfCalibrateRange +.. py:class:: SelfCalibrateRangeStepsToOmit - .. py:attribute:: SelfCalibrateRange.IMAGE_SUPPRESSION + .. py:attribute:: SelfCalibrateRangeStepsToOmit.IMAGE_SUPPRESSION @@ -3747,7 +3717,7 @@ SelfCalibrateRange - .. py:attribute:: SelfCalibrateRange.LO_SELF_CAL + .. py:attribute:: SelfCalibrateRangeStepsToOmit.LO_SELF_CAL @@ -3757,7 +3727,7 @@ SelfCalibrateRange - .. py:attribute:: SelfCalibrateRange.OMIT_NONE + .. py:attribute:: SelfCalibrateRangeStepsToOmit.OMIT_NONE @@ -3767,7 +3737,7 @@ SelfCalibrateRange - .. py:attribute:: SelfCalibrateRange.POWER_LEVEL_ACCURACY + .. py:attribute:: SelfCalibrateRangeStepsToOmit.POWER_LEVEL_ACCURACY @@ -3777,7 +3747,7 @@ SelfCalibrateRange - .. py:attribute:: SelfCalibrateRange.RESIDUAL_LO_POWER + .. py:attribute:: SelfCalibrateRangeStepsToOmit.RESIDUAL_LO_POWER @@ -3787,7 +3757,7 @@ SelfCalibrateRange - .. py:attribute:: SelfCalibrateRange.SYNTHESIZER_ALIGNMENT + .. py:attribute:: SelfCalibrateRangeStepsToOmit.SYNTHESIZER_ALIGNMENT @@ -3797,6 +3767,91 @@ SelfCalibrateRange +Signal +------ + +.. py:class:: Signal + + .. py:attribute:: Signal.CONFIGURATION_SETTLED_EVENT + + + + Exports a Configuration Settled Event. + + + + + + .. py:attribute:: Signal.START_TRIGGER + + + + Exports a Start Trigger. + + + + + + .. py:attribute:: Signal.SCRIPT_TRIGGER + + + + Exports a Script Trigger. + + + + + + .. py:attribute:: Signal.MARKER_EVENT + + + + Exports a Marker Event. + + + + + + .. py:attribute:: Signal.REF_CLOCK + + + + Exports the Reference Clock. + + + + + + .. py:attribute:: Signal.STARTED_EVENT + + + + Exports a Started Event. + + + + + + .. py:attribute:: Signal.DONE_EVENT + + + + Exports a Done Event. + + + + + + .. py:attribute:: Signal.CONFIGURATION_LIST_STEP_TRIGGER + + + + Exports a Configuration List Step Trigger. + + + + + SignalIdentifier ---------------- @@ -3882,6 +3937,31 @@ SignalIdentifier +SoftwareTriggerType +------------------- + +.. py:class:: SoftwareTriggerType + + .. py:attribute:: SoftwareTriggerType.SCRIPT + + + + Specifies the Script Trigger. + + + + + + .. py:attribute:: SoftwareTriggerType.START + + + + Specifies the Start Trigger. + + + + + SparameterOrientation --------------------- @@ -4662,86 +4742,6 @@ StartedEventExportOutputTerm -StepsToOmit ------------ - -.. py:class:: StepsToOmit - - .. py:attribute:: StepsToOmit.DEEMBEDDING_TABLES - - - - Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840. - - - - - - .. py:attribute:: StepsToOmit.NONE - - - - No step is omitted during reset. - - - - - - .. py:attribute:: StepsToOmit.ROUTES - - - - Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset. - - - - - - .. py:attribute:: StepsToOmit.SCRIPTS - - - - Omits clearing scripts. - - - - - - .. py:attribute:: StepsToOmit.WAVEFORMS - - - - Omits clearing waveforms. - - - - - -Trigger -------- - -.. py:class:: Trigger - - .. py:attribute:: Trigger.SCRIPT - - - - Specifies the Script Trigger. - - - - - - .. py:attribute:: Trigger.START - - - - Specifies the Start Trigger. - - - - - TriggerIdentifier ----------------- diff --git a/generated/nirfsg/nirfsg/enums.py b/generated/nirfsg/nirfsg/enums.py index 03c424047a..adcfadcf49 100644 --- a/generated/nirfsg/nirfsg/enums.py +++ b/generated/nirfsg/nirfsg/enums.py @@ -657,41 +657,6 @@ class Lo1OutputFilter(Enum): ''' -class LoFilter(Enum): - CONFIGURATION_SETTLED_EVENT = 7 - r''' - Exports a Configuration Settled Event. - ''' - CONFIGURATION_LIST_STEP_TRIGGER = 6 - r''' - Exports a Configuration List Step Trigger. - ''' - DONE_EVENT = 5 - r''' - Exports a Done Event. - ''' - MARKER_EVENT = 2 - r''' - Exports a Marker Event. - ''' - REF_CLOCK = 3 - r''' - Exports the Reference Clock. - ''' - SCRIPT_TRIGGER = 1 - r''' - Exports a Script Trigger. - ''' - START_TRIGGER = 0 - r''' - Exports a Start Trigger. - ''' - STARTED_EVENT = 4 - r''' - Exports a Started Event. - ''' - - class LoOutEnabled(Enum): DISABLE = 0 r''' @@ -1229,6 +1194,29 @@ class ResetOptions(Enum): SELF_CAL_IMAGE_SUPPRESSION = 8 +class ResetWithOptionsStepsToOmit(Enum): + DEEMBEDDING_TABLES = 8 + r''' + Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840. + ''' + NONE = 0 + r''' + No step is omitted during reset. + ''' + ROUTES = 4 + r''' + Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset. + ''' + SCRIPTS = 2 + r''' + Omits clearing scripts. + ''' + WAVEFORMS = 1 + r''' + Omits clearing waveforms. + ''' + + class ScriptTrigDigEdgeEdge(Enum): RISING = 0 r''' @@ -1551,7 +1539,7 @@ class ScriptTrigType(Enum): ''' -class SelfCalibrateRange(Enum): +class SelfCalibrateRangeStepsToOmit(Enum): IMAGE_SUPPRESSION = 8 r''' Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. @@ -1578,6 +1566,41 @@ class SelfCalibrateRange(Enum): ''' +class Signal(Enum): + CONFIGURATION_SETTLED_EVENT = 7 + r''' + Exports a Configuration Settled Event. + ''' + START_TRIGGER = 0 + r''' + Exports a Start Trigger. + ''' + SCRIPT_TRIGGER = 1 + r''' + Exports a Script Trigger. + ''' + MARKER_EVENT = 2 + r''' + Exports a Marker Event. + ''' + REF_CLOCK = 3 + r''' + Exports the Reference Clock. + ''' + STARTED_EVENT = 4 + r''' + Exports a Started Event. + ''' + DONE_EVENT = 5 + r''' + Exports a Done Event. + ''' + CONFIGURATION_LIST_STEP_TRIGGER = 6 + r''' + Exports a Configuration List Step Trigger. + ''' + + class SignalIdentifier(Enum): MARKER_EVENT0 = 'marker0' r''' @@ -1613,6 +1636,17 @@ class SignalIdentifier(Enum): ''' +class SoftwareTriggerType(Enum): + SCRIPT = 1 + r''' + Specifies the Script Trigger. + ''' + START = 0 + r''' + Specifies the Start Trigger. + ''' + + class SparameterOrientation(Enum): PORT1 = 24000 r''' @@ -1931,40 +1965,6 @@ class StartedEventExportOutputTerm(Enum): ''' -class StepsToOmit(Enum): - DEEMBEDDING_TABLES = 8 - r''' - Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840. - ''' - NONE = 0 - r''' - No step is omitted during reset. - ''' - ROUTES = 4 - r''' - Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset. - ''' - SCRIPTS = 2 - r''' - Omits clearing scripts. - ''' - WAVEFORMS = 1 - r''' - Omits clearing waveforms. - ''' - - -class Trigger(Enum): - SCRIPT = 1 - r''' - Specifies the Script Trigger. - ''' - START = 0 - r''' - Specifies the Start Trigger. - ''' - - class TriggerIdentifier(Enum): TRIGGER0 = 'scriptTrigger0' r''' diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index 4f2ba96772..6b97f57faa 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -5966,15 +5966,15 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger. Args: - trigger (enums.Trigger): Specifies the trigger to send. **Defined Values** : + trigger (enums.SoftwareTriggerType): Specifies the trigger to send. **Defined Values** : - +----------------+---------+-------------------------------+ - | Name | Value | Description | - +================+=========+===============================+ - | Trigger.START | 0 (0x0) | Specifies the Start Trigger. | - +----------------+---------+-------------------------------+ - | Trigger.SCRIPT | 1 (0x1) | Specifies the Script Trigger. | - +----------------+---------+-------------------------------+ + +----------------------------+---------+-------------------------------+ + | Name | Value | Description | + +============================+=========+===============================+ + | SoftwareTriggerType.START | 0 (0x0) | Specifies the Start Trigger. | + +----------------------------+---------+-------------------------------+ + | SoftwareTriggerType.SCRIPT | 1 (0x1) | Specifies the Script Trigger. | + +----------------------------+---------+-------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -6000,8 +6000,8 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. ''' - if type(trigger) is not enums.Trigger: - raise TypeError('Parameter trigger must be of type ' + str(enums.Trigger)) + if type(trigger) is not enums.SoftwareTriggerType: + raise TypeError('Parameter trigger must be of type ' + str(enums.SoftwareTriggerType)) if type(trigger_identifier) is not enums.TriggerIdentifier: raise TypeError('Parameter trigger_identifier must be of type ' + str(enums.TriggerIdentifier)) self._interpreter.send_software_edge_trigger(trigger, trigger_identifier) @@ -6869,27 +6869,27 @@ def export_signal(self, signal, signal_identifier, output_terminal): Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this method. Args: - signal (enums.LoFilter): Specifies the type of signal to route. **Defined Values** : - - +------------------------------------------+---------+--------------------------------------------+ - | Name | Value | Description | - +==========================================+=========+============================================+ - | LoFilter.START_TRIGGER | 0 (0x0) | Exports a Start Trigger. | - +------------------------------------------+---------+--------------------------------------------+ - | LoFilter.SCRIPT_TRIGGER | 1 (0x1) | Exports a Script Trigger. | - +------------------------------------------+---------+--------------------------------------------+ - | LoFilter.MARKER_EVENT | 2 (0x2) | Exports a Marker Event. | - +------------------------------------------+---------+--------------------------------------------+ - | LoFilter.REF_CLOCK | 3 (0x3) | Exports the Reference Clock. | - +------------------------------------------+---------+--------------------------------------------+ - | LoFilter.STARTED_EVENT | 4 (0x4) | Exports a Started Event. | - +------------------------------------------+---------+--------------------------------------------+ - | LoFilter.DONE_EVENT | 5 (0x5) | Exports a Done Event. | - +------------------------------------------+---------+--------------------------------------------+ - | LoFilter.CONFIGURATION_LIST_STEP_TRIGGER | 6 (0x6) | Exports a Configuration List Step Trigger. | - +------------------------------------------+---------+--------------------------------------------+ - | LoFilter.CONFIGURATION_SETTLED_EVENT | 7 (0x7) | Exports a Configuration Settled Event. | - +------------------------------------------+---------+--------------------------------------------+ + signal (enums.Signal): Specifies the type of signal to route. **Defined Values** : + + +----------------------------------------+---------+--------------------------------------------+ + | Name | Value | Description | + +========================================+=========+============================================+ + | Signal.START_TRIGGER | 0 (0x0) | Exports a Start Trigger. | + +----------------------------------------+---------+--------------------------------------------+ + | Signal.SCRIPT_TRIGGER | 1 (0x1) | Exports a Script Trigger. | + +----------------------------------------+---------+--------------------------------------------+ + | Signal.MARKER_EVENT | 2 (0x2) | Exports a Marker Event. | + +----------------------------------------+---------+--------------------------------------------+ + | Signal.REF_CLOCK | 3 (0x3) | Exports the Reference Clock. | + +----------------------------------------+---------+--------------------------------------------+ + | Signal.STARTED_EVENT | 4 (0x4) | Exports a Started Event. | + +----------------------------------------+---------+--------------------------------------------+ + | Signal.DONE_EVENT | 5 (0x5) | Exports a Done Event. | + +----------------------------------------+---------+--------------------------------------------+ + | Signal.CONFIGURATION_LIST_STEP_TRIGGER | 6 (0x6) | Exports a Configuration List Step Trigger. | + +----------------------------------------+---------+--------------------------------------------+ + | Signal.CONFIGURATION_SETTLED_EVENT | 7 (0x7) | Exports a Configuration Settled Event. | + +----------------------------------------+---------+--------------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -6940,8 +6940,8 @@ def export_signal(self, signal, signal_identifier, output_terminal): One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. ''' - if type(signal) is not enums.LoFilter: - raise TypeError('Parameter signal must be of type ' + str(enums.LoFilter)) + if type(signal) is not enums.Signal: + raise TypeError('Parameter signal must be of type ' + str(enums.Signal)) if type(signal_identifier) is not enums.SignalIdentifier: raise TypeError('Parameter signal_identifier must be of type ' + str(enums.SignalIdentifier)) if type(output_terminal) is not enums.ReferenceClockExportOutputTerminal: @@ -7233,23 +7233,23 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ Note: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. Args: - steps_to_omit (enums.SelfCalibrateRange): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** : - - +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | Name | Value | Description | - +==========================================+===========+=====================================================================================================================+ - | SelfCalibrateRange.OMIT_NONE | 0 (0x0) | No calibration steps are omitted. | - +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | SelfCalibrateRange.LO_SELF_CAL | 1 (0x1) | Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. | - +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | SelfCalibrateRange.POWER_LEVEL_ACCURACY | 2 (0x2) | Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. | - +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | SelfCalibrateRange.RESIDUAL_LO_POWER | 4 (0x4) | Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. | - +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | SelfCalibrateRange.IMAGE_SUPPRESSION | 8 (0x8) | Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. | - +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ - | SelfCalibrateRange.SYNTHESIZER_ALIGNMENT | 16 (0x10) | Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. | - +------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + steps_to_omit (enums.SelfCalibrateRangeStepsToOmit): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** : + + +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=====================================================+===========+=====================================================================================================================+ + | SelfCalibrateRangeStepsToOmit.OMIT_NONE | 0 (0x0) | No calibration steps are omitted. | + +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRangeStepsToOmit.LO_SELF_CAL | 1 (0x1) | Omits the LO Self Cal step. If you omit this step, the power level of the LO is not adjusted. | + +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRangeStepsToOmit.POWER_LEVEL_ACCURACY | 2 (0x2) | Omits the Power Level Accuracy step. If you omit this step, the power level accuracy of the device is not adjusted. | + +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRangeStepsToOmit.RESIDUAL_LO_POWER | 4 (0x4) | Omits the Residual LO Power step. If you omit this step, the Residual LO Power performance is not adjusted. | + +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRangeStepsToOmit.IMAGE_SUPPRESSION | 8 (0x8) | Omits the Image Suppression step. If you omit this step, the Residual Sideband Image performance is not adjusted. | + +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ + | SelfCalibrateRangeStepsToOmit.SYNTHESIZER_ALIGNMENT | 16 (0x10) | Omits the Voltage Controlled Oscillator (VCO) Alignment step. If you omit this step, the LO PLL is not adjusted. | + +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -7263,8 +7263,8 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ max_power_level (float): Specifies the maximum power level to calibrate. ''' - if type(steps_to_omit) is not enums.SelfCalibrateRange: - raise TypeError('Parameter steps_to_omit must be of type ' + str(enums.SelfCalibrateRange)) + if type(steps_to_omit) is not enums.SelfCalibrateRangeStepsToOmit: + raise TypeError('Parameter steps_to_omit must be of type ' + str(enums.SelfCalibrateRangeStepsToOmit)) self._interpreter.self_calibrate_range(steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) @ivi_synchronized diff --git a/src/nirfsg/metadata/enums.py b/src/nirfsg/metadata/enums.py index 1131139d6d..ed21e806b5 100644 --- a/src/nirfsg/metadata/enums.py +++ b/src/nirfsg/metadata/enums.py @@ -1290,67 +1290,6 @@ } ] }, - 'LoFilter': { - 'codegen_method': 'public', - 'values': [ - { - 'documentation': { - 'description': 'Exports a Configuration Settled Event.' - }, - 'name': 'NIRFSG_VAL_CONFIGURATION_SETTLED_EVENT', - 'value': 7 - }, - { - 'documentation': { - 'description': 'Exports a Configuration List Step Trigger.' - }, - 'name': 'NIRFSG_VAL_CONFIGURATION_LIST_STEP_TRIGGER', - 'value': 6 - }, - { - 'documentation': { - 'description': 'Exports a Done Event.' - }, - 'name': 'NIRFSG_VAL_DONE_EVENT', - 'value': 5 - }, - { - 'documentation': { - 'description': 'Exports a Marker Event.' - }, - 'name': 'NIRFSG_VAL_MARKER_EVENT', - 'value': 2 - }, - { - 'documentation': { - 'description': 'Exports the Reference Clock.' - }, - 'name': 'NIRFSG_VAL_REF_CLOCK', - 'value': 3 - }, - { - 'documentation': { - 'description': 'Exports a Script Trigger.' - }, - 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', - 'value': 1 - }, - { - 'documentation': { - 'description': 'Exports a Start Trigger.' - }, - 'name': 'NIRFSG_VAL_START_TRIGGER', - 'value': 0 - }, - { - 'documentation': { - 'description': 'Exports a Started Event.' - }, - 'name': 'NIRFSG_VAL_STARTED_EVENT', - 'value': 4 - } - ] - }, 'LoOutEnabled': { 'codegen_method': 'public', 'values': [ @@ -2383,6 +2322,46 @@ } ] }, + 'ResetWithOptionsStepsToOmit': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_DEEMBEDDING_TABLES', + 'value': 8 + }, + { + 'documentation': { + 'description': 'No step is omitted during reset.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_NONE', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_ROUTES', + 'value': 4 + }, + { + 'documentation': { + 'description': 'Omits clearing scripts.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_SCRIPTS', + 'value': 2 + }, + { + 'documentation': { + 'description': 'Omits clearing waveforms.' + }, + 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_WAVEFORMS', + 'value': 1 + } + ] + }, 'ScriptTrigDigEdgeEdge': { 'codegen_method': 'public', 'values': [ @@ -2945,7 +2924,7 @@ } ] }, - 'SelfCalibrateRange': { + 'SelfCalibrateRangeStepsToOmit': { 'codegen_method': 'public', 'values': [ { @@ -2992,6 +2971,67 @@ } ] }, + 'Signal': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Exports a Configuration Settled Event.' + }, + 'name': 'NIRFSG_VAL_CONFIGURATION_SETTLED_EVENT', + 'value': 7 + }, + { + 'documentation': { + 'description': 'Exports a Start Trigger.' + }, + 'name': 'NIRFSG_VAL_START_TRIGGER', + 'value': 0 + }, + { + 'documentation': { + 'description': 'Exports a Script Trigger.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + }, + { + 'documentation': { + 'description': 'Exports a Marker Event.' + }, + 'name': 'NIRFSG_VAL_MARKER_EVENT', + 'value': 2 + }, + { + 'documentation': { + 'description': 'Exports the Reference Clock.' + }, + 'name': 'NIRFSG_VAL_REF_CLOCK', + 'value': 3 + }, + { + 'documentation': { + 'description': 'Exports a Started Event.' + }, + 'name': 'NIRFSG_VAL_STARTED_EVENT', + 'value': 4 + }, + { + 'documentation': { + 'description': 'Exports a Done Event.' + }, + 'name': 'NIRFSG_VAL_DONE_EVENT', + 'value': 5 + }, + { + 'documentation': { + 'description': 'Exports a Configuration List Step Trigger.' + }, + 'name': 'NIRFSG_VAL_CONFIGURATION_LIST_STEP_TRIGGER', + 'value': 6 + } + ] + }, 'SignalIdentifier': { 'codegen_method': 'public', 'values': [ @@ -3053,6 +3093,25 @@ } ] }, + 'SoftwareTriggerType': { + 'codegen_method': 'public', + 'values': [ + { + 'documentation': { + 'description': 'Specifies the Script Trigger.' + }, + 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', + 'value': 1 + }, + { + 'documentation': { + 'description': 'Specifies the Start Trigger.' + }, + 'name': 'NIRFSG_VAL_START_TRIGGER', + 'value': 0 + } + ] + }, 'SparameterOrientation': { 'codegen_method': 'public', 'values': [ @@ -3632,46 +3691,6 @@ } ] }, - 'StepsToOmit': { - 'codegen_method': 'public', - 'values': [ - { - 'documentation': { - 'description': 'Omits deleting de-embedding tables. This step is valid only for the PXIe-5830/5831/5832/5840.' - }, - 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_DEEMBEDDING_TABLES', - 'value': 8 - }, - { - 'documentation': { - 'description': 'No step is omitted during reset.' - }, - 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_NONE', - 'value': 0 - }, - { - 'documentation': { - 'description': 'Omits the routing reset step. Routing is preserved after a reset. However, routing related properties are reset to default, and routing is released if the default properties are committed after a reset.' - }, - 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_ROUTES', - 'value': 4 - }, - { - 'documentation': { - 'description': 'Omits clearing scripts.' - }, - 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_SCRIPTS', - 'value': 2 - }, - { - 'documentation': { - 'description': 'Omits clearing waveforms.' - }, - 'name': 'NIRFSG_VAL_RESET_WITH_OPTIONS_WAVEFORMS', - 'value': 1 - } - ] - }, 'Sts5532SignalPath': { 'values': [ { @@ -3704,25 +3723,6 @@ } ] }, - 'Trigger': { - 'codegen_method': 'public', - 'values': [ - { - 'documentation': { - 'description': 'Specifies the Script Trigger.' - }, - 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER', - 'value': 1 - }, - { - 'documentation': { - 'description': 'Specifies the Start Trigger.' - }, - 'name': 'NIRFSG_VAL_START_TRIGGER', - 'value': 0 - } - ] - }, 'TriggerIdentifier': { 'codegen_method': 'public', 'values': [ diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index bc0e491f72..c058b4caf0 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -1984,7 +1984,7 @@ 'Description' ] }, - 'enum': 'LoFilter', + 'enum': 'Signal', 'name': 'signal', 'type': 'ViInt32', 'use_array': False, @@ -3868,7 +3868,7 @@ 'Description' ] }, - 'enum': 'SelfCalibrateRange', + 'enum': 'SelfCalibrateRangeStepsToOmit', 'name': 'stepsToOmit', 'type': 'ViInt64', 'use_array': False, @@ -4004,7 +4004,7 @@ 'Description' ] }, - 'enum': 'Trigger', + 'enum': 'SoftwareTriggerType', 'name': 'trigger', 'type': 'ViInt32', 'use_array': False, From 0371509fef974a7ffd1f5146e8718ffa497d54ea Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 11 Apr 2025 05:09:26 +0000 Subject: [PATCH 22/46] Fixed tox.ini and travis.ini --- tox-travis.ini | 19 ++++++++++++------- tox.ini | 19 ++++++++++++------- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/tox-travis.ini b/tox-travis.ini index fb63f6d086..c7b847edd8 100644 --- a/tox-travis.ini +++ b/tox-travis.ini @@ -6,8 +6,13 @@ # tox.ini and tox-travis.ini are copies of the same content with different envlist commented out # tox-travis.ini will have pyXX-clean and all pyXX-installers in the default envlist, while the developer tox.ini # does not have clean and only has one pyXX-installers +# Historically we've used the latest Python for environments that we only list one Python for. For now, we're using Python 3.12 +# to avoid updating our pb2 files, which could possibly cause incompatibilities with other NI Python packages. +# When other NI Python packages bump the version that they use for generating pb2 files, we can bump this Python version to match. +# We may also bump it sooner, if we agree with team members who own other NI Python packages that it's okay to do so. +# At the latest, we'll bump it when we drop support for Python 3.12. # Uncomment this line for tox.ini -# envlist = py312-build_test,py312-codegen,py312-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg +# envlist = py312-build_test,py312-codegen,py312-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg # Uncomment this line for tox-travis.ini envlist = py312-clean,py312-build_test,py312-codegen,py{39,310,311,312,313}-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg skip_missing_interpreters=True @@ -112,11 +117,11 @@ commands = docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nidmm ../generated/docs/nidmm/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nifgen ../generated/docs/nifgen/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nimodinst ../generated/docs/nimodinst/html {posargs} + docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nirfsg ../generated/docs/nirfsg/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./niscope ../generated/docs/niscope/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nise ../generated/docs/nise/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./niswitch ../generated/docs/niswitch/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nitclk ../generated/docs/nitclk/html {posargs} - docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nirfsg ../generated/docs/nirfsg/html {posargs} pkg: python --version pkg: python -c "import platform; print(platform.architecture())" pkg: python -m twine --version @@ -125,10 +130,10 @@ commands = pkg: python -m twine check generated/nidigital/dist/* pkg: python -m twine check generated/nidmm/dist/* pkg: python -m twine check generated/nifgen/dist/* + pkg: python -m twine check generated/nirfsg/dist/* pkg: python -m twine check generated/niscope/dist/* pkg: python -m twine check generated/nise/dist/* pkg: python -m twine check generated/niswitch/dist/* - pkg: python -m twine check generated/nirfsg/dist/* # pkg: check-manifest --ignore tox.ini,tests*,.github,.github/*,CONTRIBUTING.rst,docs,docs/* deps = @@ -138,8 +143,8 @@ deps = test: mako test: numpy test: hightime - test: grpcio == 1.59.0 # Compatible with grpcio-tools 1.59.0 - test: protobuf == 4.21.6 # Compatible with grpcio-tools 1.59.0 + test: grpcio == 1.67.0 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 + test: protobuf == 5.27.2 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 build_test: pytest build_test: coverage build_test: mako @@ -147,7 +152,7 @@ deps = build_test: pep8-naming codegen: mako codegen: packaging - codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 + codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 installers: build flake8: hacking flake8: pep8-naming @@ -189,4 +194,4 @@ addopts = --verbose --doctest-modules --ignore=setup.py norecursedirs = system_tests examples .* build dist CVS _darcs {arch} *.egg venv junit_suite_name = nimi-python python_files = *.py -junit_family = xunit1 +junit_family = xunit1 \ No newline at end of file diff --git a/tox.ini b/tox.ini index 0b6d468be3..517c919d94 100644 --- a/tox.ini +++ b/tox.ini @@ -6,10 +6,15 @@ # tox.ini and tox-travis.ini are copies of the same content with different envlist commented out # tox-travis.ini will have pyXX-clean and all pyXX-installers in the default envlist, while the developer tox.ini # does not have clean and only has one pyXX-installers +# Historically we've used the latest Python for environments that we only list one Python for. For now, we're using Python 3.12 +# to avoid updating our pb2 files, which could possibly cause incompatibilities with other NI Python packages. +# When other NI Python packages bump the version that they use for generating pb2 files, we can bump this Python version to match. +# We may also bump it sooner, if we agree with team members who own other NI Python packages that it's okay to do so. +# At the latest, we'll bump it when we drop support for Python 3.12. # Uncomment this line for tox.ini envlist = py312-build_test,py312-codegen,py312-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg # Uncomment this line for tox-travis.ini -# envlist = py312-clean,py312-build_test,py312-codegen,py{38,39,310,311,312}-installers,py{38,39,310,311,312}-test,py312-flake8,py312-docs,py312-pkg +# envlist = py312-clean,py312-build_test,py312-codegen,py{39,310,311,312,313}-installers,py{39,310,311,312,313}-test,py312-flake8,py312-docs,py312-pkg skip_missing_interpreters=True ignore_basepython_conflict=True skipsdist = true @@ -112,11 +117,11 @@ commands = docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nidmm ../generated/docs/nidmm/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nifgen ../generated/docs/nifgen/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nimodinst ../generated/docs/nimodinst/html {posargs} + docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nirfsg ../generated/docs/nirfsg/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./niscope ../generated/docs/niscope/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nise ../generated/docs/nise/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./niswitch ../generated/docs/niswitch/html {posargs} docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nitclk ../generated/docs/nitclk/html {posargs} - docs: sphinx-build -b html -d {envtmpdir}/doctrees ./nirfsg ../generated/docs/nirfsg/html {posargs} pkg: python --version pkg: python -c "import platform; print(platform.architecture())" pkg: python -m twine --version @@ -125,10 +130,10 @@ commands = pkg: python -m twine check generated/nidigital/dist/* pkg: python -m twine check generated/nidmm/dist/* pkg: python -m twine check generated/nifgen/dist/* + pkg: python -m twine check generated/nirfsg/dist/* pkg: python -m twine check generated/niscope/dist/* pkg: python -m twine check generated/nise/dist/* pkg: python -m twine check generated/niswitch/dist/* - pkg: python -m twine check generated/nirfsg/dist/* # pkg: check-manifest --ignore tox.ini,tests*,.github,.github/*,CONTRIBUTING.rst,docs,docs/* deps = @@ -138,8 +143,8 @@ deps = test: mako test: numpy test: hightime - test: grpcio == 1.59.0 # Compatible with grpcio-tools 1.59.0 - test: protobuf == 4.21.6 # Compatible with grpcio-tools 1.59.0 + test: grpcio == 1.67.0 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 + test: protobuf == 5.27.2 # Compatible with Python 3.13; should be backwards compatible with grpcio-tools 1.59.0 build_test: pytest build_test: coverage build_test: mako @@ -147,7 +152,7 @@ deps = build_test: pep8-naming codegen: mako codegen: packaging - codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 + codegen: grpcio-tools == 1.59.0 # First version to support Python 3.12 installers: build flake8: hacking flake8: pep8-naming @@ -189,4 +194,4 @@ addopts = --verbose --doctest-modules --ignore=setup.py norecursedirs = system_tests examples .* build dist CVS _darcs {arch} *.egg venv junit_suite_name = nimi-python python_files = *.py -junit_family = xunit1 +junit_family = xunit1 \ No newline at end of file From 353a9ae17712c664e0abff4e69e82264e247736f Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 11 Apr 2025 05:15:48 +0000 Subject: [PATCH 23/46] Updated the list to be alphabetical --- docs/_static/about.inc | 2 +- docs/_static/documentation.inc | 3 ++- docs/_static/installation.inc | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/_static/about.inc b/docs/_static/about.inc index ea93439342..9f73e947af 100644 --- a/docs/_static/about.inc +++ b/docs/_static/about.inc @@ -11,11 +11,11 @@ following drivers are supported: * NI-DMM (Python module: nidmm) * NI-FGEN (Python module: nifgen) * NI-ModInst (Python module: nimodinst) +* NI-RFSG (Python module: nirfsg) * NI-SCOPE (Python module: niscope) * NI Switch Executive (Python module: nise) * NI-SWITCH (Python module: niswitch) * NI-TClk (Python module: nitclk) -* NI-RFSG (Python module: nirfsg) It is implemented as a set of `Mako templates `_ and per-driver metafiles that produce a Python module for each driver. The driver is called through its public C API using the `ctypes `_ Python library. diff --git a/docs/_static/documentation.inc b/docs/_static/documentation.inc index ffcdd2536d..c80fef0b9b 100644 --- a/docs/_static/documentation.inc +++ b/docs/_static/documentation.inc @@ -10,10 +10,11 @@ Documentation is available on **Read the Docs**: - https://nidmm.readthedocs.io/en/stable - https://nifgen.readthedocs.io/en/stable - https://nimodinst.readthedocs.io/en/stable +- https://nirfsg.readthedocs.io/en/stable - https://niscope.readthedocs.io/en/stable - https://nise.readthedocs.io/en/stable - https://niswitch.readthedocs.io/en/stable - https://nitclk.readthedocs.io/en/stable -- https://nirfsg.readthedocs.io/en/stable + diff --git a/docs/_static/installation.inc b/docs/_static/installation.inc index a6cea821a3..8660aa7a19 100644 --- a/docs/_static/installation.inc +++ b/docs/_static/installation.inc @@ -10,10 +10,10 @@ Driver specific installation instructions can be found on **Read the Docs**: * `nidmm `_ * `nifgen `_ * `nimodinst `_ +* `nirfsg `_ * `niscope `_ * `nise `_ * `niswitch `_ * `nitclk `_ -* `nirfsg `_ From 8abaa83af2f759b7cfb800a77549fec8e50ff895 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 11 Apr 2025 05:17:34 +0000 Subject: [PATCH 24/46] Reverting the tooling changes --- tools/build_release.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/build_release.py b/tools/build_release.py index e5fa58ca05..ba2c5d90ab 100644 --- a/tools/build_release.py +++ b/tools/build_release.py @@ -9,7 +9,7 @@ pp = pprint.PrettyPrinter(indent=4, width=100) default_python_cmd = ['python'] -drivers_to_upload = ['nirfsg', 'nidcpower', 'nidigital', 'nidmm', 'niswitch', 'nimodinst', 'nifgen', 'niscope', 'nise', 'nitclk'] +drivers_to_upload = ['nidcpower', 'nidigital', 'nidmm', 'niswitch', 'nimodinst', 'nifgen', 'niscope', 'nise', 'nitclk'] drivers_to_update = ['nifake'] + drivers_to_upload From 04a01becb6af17586b6f5daee1a701b2180f72af Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 11 Apr 2025 05:54:55 +0000 Subject: [PATCH 25/46] Reverted helper.py changes --- build/helper/helper.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/helper/helper.py b/build/helper/helper.py index c8bbdf996f..83c3f005b6 100644 --- a/build/helper/helper.py +++ b/build/helper/helper.py @@ -21,11 +21,11 @@ 'ViReal64': { 'array_type': 'd', 'python_type': 'float', 'numpy_type': 'float64', }, # noqa: E201, E202, E241 'ViStatus': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 'ViSession': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 - 'ViAttr': { 'array_type': 'Q', 'python_type': 'int', 'numpy_type': 'uint64', }, # noqa: E201, E202, E241 + 'ViAttr': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 'ViChar': { 'array_type': None, 'python_type': 'int', 'numpy_type': None, }, # noqa: E201, E202, E241 'ViChar[]': { 'array_type': None, 'python_type': 'str', 'numpy_type': None, }, # noqa: E201, E202, E241 'ViBoolean': { 'array_type': None, 'python_type': 'bool', 'numpy_type': None, }, # noqa: E201, E202, E241 - 'ViRsrc': { 'array_type': 's', 'python_type': 'str', 'numpy_type': 'bool_', }, # noqa: E201, E202, E241 + 'ViRsrc': { 'array_type': None, 'python_type': 'str', 'numpy_type': 'bool_', }, # noqa: E201, E202, E241 } From ab61a58cc33e187514da364ff4ef29d83ff0317c Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 11 Apr 2025 10:22:25 +0000 Subject: [PATCH 26/46] Removed system test for nirfsg --- src/nirfsg/system_tests/test_system_nirfsg.py | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 src/nirfsg/system_tests/test_system_nirfsg.py diff --git a/src/nirfsg/system_tests/test_system_nirfsg.py b/src/nirfsg/system_tests/test_system_nirfsg.py deleted file mode 100644 index 52b1b13c12..0000000000 --- a/src/nirfsg/system_tests/test_system_nirfsg.py +++ /dev/null @@ -1,23 +0,0 @@ -import nirfsg -import numpy as np -import nirfsg.enums - -# RFSG session create -options = "Simulate=0, DriverSetup=Model:5841" -session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) -# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) - -# configure frequency to 1Ghz, power level to -10db and iq rate to 1M -session.configure_rf( - 1e9, # frequency - -10 # powerLevel - ) -#session.iq_rate = 1e6 -session.generation_mode = nirfsg.GenerationMode.CW - -# Start generation -with session.initiate(): - # Generation context - input("Press Enter to stop generation") - -session.close() \ No newline at end of file From b8e0ff5ead40e735e21f73449fdf438053f790d1 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 11 Apr 2025 11:36:40 +0000 Subject: [PATCH 27/46] Restructured nirfsg example --- src/nirfsg/examples/nirfsg_cw.py | 65 +++++++++++++++++++++----------- 1 file changed, 44 insertions(+), 21 deletions(-) diff --git a/src/nirfsg/examples/nirfsg_cw.py b/src/nirfsg/examples/nirfsg_cw.py index ee30d138d2..1fa5560db8 100644 --- a/src/nirfsg/examples/nirfsg_cw.py +++ b/src/nirfsg/examples/nirfsg_cw.py @@ -1,22 +1,45 @@ +import argparse import nirfsg -import numpy as np - -# RFSG session create -options = "Simulate=0, DriverSetup=Model:5841" -session = nirfsg.Session('5841', id_query=False, reset_device=False, options=options) -# session = nirfsg.Session("5841", id_query=False, reset_device=False, options=options) - -# configure frequency to 1Ghz, power level to -10db and iq rate to 1M -session.configure_rf( - 1e9, # frequency - -10 # powerLevel - ) -#session.iq_rate = 1e6 -session.generation_mode = nirfsg.GenerationMode.CW - -# Start generation -with session.initiate(): - # Generation context - input("Press Enter to stop generation") - -session.close() \ No newline at end of file +import sys + + +def example(resource_name, options, frequency, power_level): + with nirfsg.Session(resource_name=resource_name, id_query=False, reset_device=False, options=options) as session: + # Configure RF settings + session.configure_rf( + frequency, # Frequency in Hz + power_level # Power level in dBm + ) + session.generation_mode = nirfsg.GenerationMode.CW + + # Start generation + with session.initiate(): + input("Press Enter to stop generation") + + +def _main(argsv): + parser = argparse.ArgumentParser(description='Generates a continuous wave (CW) signal using NI-RFSG.', formatter_class=argparse.ArgumentDefaultsHelpFormatter) + parser.add_argument('-n', '--resource-name', default='5841', help='Resource name of the NI RF signal generator.') + parser.add_argument('-f', '--frequency', default=1e9, type=float, help='Frequency in Hz.') + parser.add_argument('-p', '--power-level', default=-10.0, type=float, help='Power level in dBm.') + parser.add_argument('-op', '--option-string', default='Simulate=1, DriverSetup=Model:5841', type=str, help='Option string for the session.') + args = parser.parse_args(argsv) + example(args.resource_name, args.option_string, args.frequency, args.power_level) + + +def main(): + _main(sys.argv[1:]) + + +def test_example(): + options = "Simulate=1, DriverSetup=Model:5841" + example('5841', options, 1e9, -10.0) + + +def test_main(): + cmd_line = ['--resource-name', '5841', '--frequency', '1e9', '--power-level', '-10', '--option-string', 'Simulate=1, DriverSetup=Model:5841'] + _main(cmd_line) + + +if __name__ == '__main__': + main() \ No newline at end of file From 217fad02f5cd9921972b07d61816031a6ab5e99b Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 11 Apr 2025 12:01:31 +0000 Subject: [PATCH 28/46] Modified nirfsg_usage.inc --- docs/_static/nirfsg_usage.inc | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/docs/_static/nirfsg_usage.inc b/docs/_static/nirfsg_usage.inc index f1a1b16e70..edad6fe812 100644 --- a/docs/_static/nirfsg_usage.inc +++ b/docs/_static/nirfsg_usage.inc @@ -1,13 +1,23 @@ Usage ------ -The following is a basic example of using the **nirfsg** module to open a session to a Function Generator and generate a sine wave for 5 seconds. +The following is a basic example of using the **nirfsg** module to open a session to an RF Signal Generator and generate a continuous wave (CW) signal. .. code-block:: python import nirfsg - with nirfsg.Session('SwitchExecutiveExample') as session: - session.connect('DIOToUUT') -`Other usage examples can be found on GitHub. `_ + # Configure the session + with nirfsg.Session(resource_name='5841', id_query=False, reset_device=False, options='Simulate=1, DriverSetup=Model:5841') as session: + # Configure RF settings + session.configure_rf( + frequency=1e9, # Frequency in Hz + power_level=-10.0 # Power level in dBm + ) + session.generation_mode = nirfsg.GenerationMode.CW + # Start signal generation + with session.initiate(): + input("Press Enter to stop generation") + +`Other usage examples can be found on GitHub. `_ \ No newline at end of file From 71f92e33c17051d640c54e24da91142e5656bc5a Mon Sep 17 00:00:00 2001 From: Vagupta Date: Mon, 14 Apr 2025 08:27:58 +0000 Subject: [PATCH 29/46] Updated RFSG feed info --- src/nirfsg/metadata/config_addon.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nirfsg/metadata/config_addon.py b/src/nirfsg/metadata/config_addon.py index 221d4616b1..623a2bd07c 100644 --- a/src/nirfsg/metadata/config_addon.py +++ b/src/nirfsg/metadata/config_addon.py @@ -1,8 +1,8 @@ # We need to maintain the version here since it needs to be updated by the build process on GitHub config_additional_config = { - 'module_version': '1.4.8.dev0', - 'latest_runtime_version_tested_against': '2023 Q1.1', - 'initial_release_year': '2017', + 'module_version': '0.2.0', + 'latest_runtime_version_tested_against': '2025 Q1', + 'initial_release_year': '2025', 'custom_types': [ ] } From 7de65afa676882a0177b3b50fa3ebaf5ebbf31f2 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 06:55:20 +0000 Subject: [PATCH 30/46] Updated rfsg module version --- docs/nirfsg/conf.py | 4 ++-- docs/nirfsg/examples.rst | 4 ++-- docs/nirfsg/installation.inc | 2 +- docs/nirfsg/status.inc | 2 +- generated/nirfsg/nirfsg/VERSION | 2 +- generated/nirfsg/nirfsg/__init__.py | 4 ++-- generated/nirfsg/setup.py | 2 +- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/nirfsg/conf.py b/docs/nirfsg/conf.py index a9f3b4cd65..f45b151670 100644 --- a/docs/nirfsg/conf.py +++ b/docs/nirfsg/conf.py @@ -55,7 +55,7 @@ # General information about the project. project = 'NI-RFSG Python API' -copyright = '2017-2025, National Instruments Corporation' +copyright = '2025-2025, National Instruments Corporation' author = 'NI' # The version info for the project you're documenting, acts as replacement for @@ -63,7 +63,7 @@ # built documents. # # The full version, including alpha/beta/rc tags. -release = '1.4.8.dev0' +release = '0.2.0' # The short X.Y version. version = release[:3] diff --git a/docs/nirfsg/examples.rst b/docs/nirfsg/examples.rst index c00ea5aa92..3700766e04 100644 --- a/docs/nirfsg/examples.rst +++ b/docs/nirfsg/examples.rst @@ -1,7 +1,7 @@ Examples ======== -`You can download all nirfsg examples for latest version here `_ +`You can download all nirfsg examples here `_ nirfsg_cw.py ------------ @@ -10,5 +10,5 @@ nirfsg_cw.py :language: python :linenos: :encoding: utf8 - :caption: `(nirfsg_cw.py) `_ + :caption: `(nirfsg_cw.py) `_ diff --git a/docs/nirfsg/installation.inc b/docs/nirfsg/installation.inc index d0a7acbbf3..008308268f 100644 --- a/docs/nirfsg/installation.inc +++ b/docs/nirfsg/installation.inc @@ -8,6 +8,6 @@ As a prerequisite to using the **nirfsg** module, you must install the NI-RFSG r The nimi-python modules (i.e. for **NI-RFSG**) can be installed with `pip `_:: - $ python -m pip install nirfsg + $ python -m pip install nirfsg~=0.2.0 diff --git a/docs/nirfsg/status.inc b/docs/nirfsg/status.inc index 6a65381d63..cf12cefcb4 100644 --- a/docs/nirfsg/status.inc +++ b/docs/nirfsg/status.inc @@ -5,7 +5,7 @@ NI-RFSG Python API Status +-------------------------------+-----------------------+ | NI-RFSG (nirfsg) | | +===============================+=======================+ -| Driver Version Tested Against | 2023 Q1.1 | +| Driver Version Tested Against | 2025 Q1 | +-------------------------------+-----------------------+ | PyPI Version | |nirfsgLatestVersion| | +-------------------------------+-----------------------+ diff --git a/generated/nirfsg/nirfsg/VERSION b/generated/nirfsg/nirfsg/VERSION index 2524fcf42a..5faa42c8a8 100644 --- a/generated/nirfsg/nirfsg/VERSION +++ b/generated/nirfsg/nirfsg/VERSION @@ -1,2 +1,2 @@ -1.4.8.dev0 +0.2.0 diff --git a/generated/nirfsg/nirfsg/__init__.py b/generated/nirfsg/nirfsg/__init__.py index b46ee49fc9..b2b74cf894 100644 --- a/generated/nirfsg/nirfsg/__init__.py +++ b/generated/nirfsg/nirfsg/__init__.py @@ -2,7 +2,7 @@ # This file was generated -__version__ = '1.4.8.dev0' +__version__ = '0.2.0' from nirfsg.enums import * # noqa: F403,F401,H303 from nirfsg.errors import DriverWarning # noqa: F401 @@ -77,7 +77,7 @@ def is_venv(): info['driver']['name'] = "NI-RFSG" info['driver']['version'] = driver_version info['module']['name'] = 'nirfsg' - info['module']['version'] = "1.4.8.dev0" + info['module']['version'] = "0.2.0" info['python']['version'] = sys.version info['python']['bits'] = '64' if is_python_64bit() else '32' info['python']['is_venv'] = is_venv() diff --git a/generated/nirfsg/setup.py b/generated/nirfsg/setup.py index c063b0222f..1f9639e0f8 100644 --- a/generated/nirfsg/setup.py +++ b/generated/nirfsg/setup.py @@ -16,7 +16,7 @@ def read_contents(file_to_read): setup( name=pypi_name, zip_safe=True, - version='1.4.8.dev0', + version='0.2.0', description='NI-RFSG Python API', long_description=read_contents('README.rst'), long_description_content_type='text/x-rst', From bc2af9211a5c636dfd03e7fe1495ed117e7ebf79 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 06:57:27 +0000 Subject: [PATCH 31/46] generated README.rst with updated vesion --- generated/nirfsg/README.rst | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/generated/nirfsg/README.rst b/generated/nirfsg/README.rst index d2209f5eb8..98b3136f52 100644 --- a/generated/nirfsg/README.rst +++ b/generated/nirfsg/README.rst @@ -53,7 +53,7 @@ NI-RFSG Python API Status +-------------------------------+-----------------------+ | NI-RFSG (nirfsg) | | +===============================+=======================+ -| Driver Version Tested Against | 2023 Q1.1 | +| Driver Version Tested Against | 2025 Q1 | +-------------------------------+-----------------------+ | PyPI Version | |nirfsgLatestVersion| | +-------------------------------+-----------------------+ @@ -102,7 +102,7 @@ As a prerequisite to using the **nirfsg** module, you must install the NI-RFSG r The nimi-python modules (i.e. for **NI-RFSG**) can be installed with `pip `_:: - $ python -m pip install nirfsg + $ python -m pip install nirfsg~=0.2.0 Contributing @@ -113,17 +113,26 @@ We welcome contributions! You can clone the project repository, build it, and in Usage ------ -The following is a basic example of using the **nirfsg** module to open a session to a Function Generator and generate a sine wave for 5 seconds. +The following is a basic example of using the **nirfsg** module to open a session to an RF Signal Generator and generate a continuous wave (CW) signal. .. code-block:: python import nirfsg - with nirfsg.Session('SwitchExecutiveExample') as session: - session.connect('DIOToUUT') -`Other usage examples can be found on GitHub. `_ + # Configure the session + with nirfsg.Session(resource_name='5841', id_query=False, reset_device=False, options='Simulate=1, DriverSetup=Model:5841') as session: + # Configure RF settings + session.configure_rf( + frequency=1e9, # Frequency in Hz + power_level=-10.0 # Power level in dBm + ) + session.generation_mode = nirfsg.GenerationMode.CW -.. _support-section: + # Start signal generation + with session.initiate(): + input("Press Enter to stop generation") + +`Other usage examples can be found on GitHub. `_.. _support-section: Support / Feedback ================== From a20176967c2df9357422309978deac06ab58d0c3 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 06:59:58 +0000 Subject: [PATCH 32/46] Updated enum description and disabled session lock calls for rfsg --- docs/nirfsg/class.rst | 22 ++-- docs/nirfsg/enums.rst | 4 +- generated/nirfsg/nirfsg/enums.py | 4 +- generated/nirfsg/nirfsg/session.py | 108 ++--------------- src/nirfsg/metadata/attributes.py | 4 +- src/nirfsg/metadata/enums.py | 4 +- src/nirfsg/metadata/functions.py | 183 +++++++++++++++-------------- 7 files changed, 123 insertions(+), 206 deletions(-) diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index 5a0f37f921..32d8564141 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -1129,7 +1129,7 @@ create_deembedding_sparameter_table_s2_p_file :param port: - yet to be defined + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842 is empty string. @@ -1138,7 +1138,7 @@ create_deembedding_sparameter_table_s2_p_file :param table_name: - yet to be defined + Specifies the name of the table. The name must be unique for a given port, but not across ports. If you use the same name as an existing table, the table is replaced. @@ -1147,7 +1147,7 @@ create_deembedding_sparameter_table_s2_p_file :param s2p_file_path: - yet to be defined + Specifies the path to the S2P file that contains de-embedding information for the specified port. @@ -1156,7 +1156,7 @@ create_deembedding_sparameter_table_s2_p_file :param sparameter_orientation: - yet to be defined **Defined Values** : + Specifies the orientation of the data in the S2P file relative to the port on the DUT port. **Defined Values** : +------------------------------------------------+----------------+-----------------------------------------------------+ | Name | Value | Description | @@ -5737,13 +5737,13 @@ exported_pulse_modulation_event_output_terminal **Defined Values**: - +------------------------------------------------------------+----------+-------------------+ - | Name | Value | Description | - +============================================================+==========+===================+ - | :py:data:`~nirfsg.PulseModulationOutputTerm.DO_NOT_EXPORT` | | yet to be defined | - +------------------------------------------------------------+----------+-------------------+ - | :py:data:`~nirfsg.PulseModulationOutputTerm.PULSE_OUT` | PulseOut | yet to be defined | - +------------------------------------------------------------+----------+-------------------+ + +------------------------------------------------------------+----------+---------------------------------------------------------------------+ + | Name | Value | Description | + +============================================================+==========+=====================================================================+ + | :py:data:`~nirfsg.PulseModulationOutputTerm.DO_NOT_EXPORT` | | Pulse modulation video signal is not exported. | + +------------------------------------------------------------+----------+---------------------------------------------------------------------+ + | :py:data:`~nirfsg.PulseModulationOutputTerm.PULSE_OUT` | PulseOut | Export the pulse modulation video signal on the pulse out terminal. | + +------------------------------------------------------------+----------+---------------------------------------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. diff --git a/docs/nirfsg/enums.rst b/docs/nirfsg/enums.rst index a506858c36..8e80b72936 100644 --- a/docs/nirfsg/enums.rst +++ b/docs/nirfsg/enums.rst @@ -2384,7 +2384,7 @@ PulseModulationOutputTerm - yet to be defined + Pulse modulation video signal is not exported. @@ -2394,7 +2394,7 @@ PulseModulationOutputTerm - yet to be defined + Export the pulse modulation video signal on the pulse out terminal. diff --git a/generated/nirfsg/nirfsg/enums.py b/generated/nirfsg/nirfsg/enums.py index adcfadcf49..ec57b1b81f 100644 --- a/generated/nirfsg/nirfsg/enums.py +++ b/generated/nirfsg/nirfsg/enums.py @@ -997,11 +997,11 @@ class PulseModulationMode(Enum): class PulseModulationOutputTerm(Enum): DO_NOT_EXPORT = '' r''' - yet to be defined + Pulse modulation video signal is not exported. ''' PULSE_OUT = 'PulseOut' r''' - yet to be defined + Export the pulse modulation video signal on the pulse out terminal. ''' diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index 6b97f57faa..2350bf0c35 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -2051,13 +2051,13 @@ class _SessionBase(object): **Defined Values**: - +-----------------------------------------+----------+-------------------+ - | Name | Value | Description | - +=========================================+==========+===================+ - | PulseModulationOutputTerm.DO_NOT_EXPORT | | yet to be defined | - +-----------------------------------------+----------+-------------------+ - | PulseModulationOutputTerm.PULSE_OUT | PulseOut | yet to be defined | - +-----------------------------------------+----------+-------------------+ + +-----------------------------------------+----------+---------------------------------------------------------------------+ + | Name | Value | Description | + +=========================================+==========+=====================================================================+ + | PulseModulationOutputTerm.DO_NOT_EXPORT | | Pulse modulation video signal is not exported. | + +-----------------------------------------+----------+---------------------------------------------------------------------+ + | PulseModulationOutputTerm.PULSE_OUT | PulseOut | Export the pulse modulation video signal on the pulse out terminal. | + +-----------------------------------------+----------+---------------------------------------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -5434,7 +5434,6 @@ def __setattr__(self, key, value): ''' These are code-generated ''' - @ivi_synchronized def check_attribute_vi_boolean(self, attribute, value): r'''check_attribute_vi_boolean @@ -5459,7 +5458,6 @@ def check_attribute_vi_boolean(self, attribute, value): ''' self._interpreter.check_attribute_vi_boolean(self._repeated_capability, attribute, value) - @ivi_synchronized def check_attribute_vi_int32(self, attribute, value): r'''check_attribute_vi_int32 @@ -5484,7 +5482,6 @@ def check_attribute_vi_int32(self, attribute, value): ''' self._interpreter.check_attribute_vi_int32(self._repeated_capability, attribute, value) - @ivi_synchronized def check_attribute_vi_int64(self, attribute, value): r'''check_attribute_vi_int64 @@ -5509,7 +5506,6 @@ def check_attribute_vi_int64(self, attribute, value): ''' self._interpreter.check_attribute_vi_int64(self._repeated_capability, attribute, value) - @ivi_synchronized def check_attribute_vi_real64(self, attribute, value): r'''check_attribute_vi_real64 @@ -5534,7 +5530,6 @@ def check_attribute_vi_real64(self, attribute, value): ''' self._interpreter.check_attribute_vi_real64(self._repeated_capability, attribute, value) - @ivi_synchronized def check_attribute_vi_session(self, attribute): r'''check_attribute_vi_session @@ -5557,7 +5552,6 @@ def check_attribute_vi_session(self, attribute): ''' self._interpreter.check_attribute_vi_session(self._repeated_capability, attribute) - @ivi_synchronized def check_attribute_vi_string(self, attribute, value): r'''check_attribute_vi_string @@ -5582,7 +5576,6 @@ def check_attribute_vi_string(self, attribute, value): ''' self._interpreter.check_attribute_vi_string(self._repeated_capability, attribute, value) - @ivi_synchronized def _get_attribute_vi_boolean(self, attribute): r'''_get_attribute_vi_boolean @@ -5610,7 +5603,6 @@ def _get_attribute_vi_boolean(self, attribute): value = self._interpreter.get_attribute_vi_boolean(self._repeated_capability, attribute) return value - @ivi_synchronized def _get_attribute_vi_int32(self, attribute): r'''_get_attribute_vi_int32 @@ -5638,7 +5630,6 @@ def _get_attribute_vi_int32(self, attribute): value = self._interpreter.get_attribute_vi_int32(self._repeated_capability, attribute) return value - @ivi_synchronized def _get_attribute_vi_int64(self, attribute): r'''_get_attribute_vi_int64 @@ -5666,7 +5657,6 @@ def _get_attribute_vi_int64(self, attribute): value = self._interpreter.get_attribute_vi_int64(self._repeated_capability, attribute) return value - @ivi_synchronized def _get_attribute_vi_real64(self, attribute): r'''_get_attribute_vi_real64 @@ -5694,7 +5684,6 @@ def _get_attribute_vi_real64(self, attribute): value = self._interpreter.get_attribute_vi_real64(self._repeated_capability, attribute) return value - @ivi_synchronized def _get_attribute_vi_session(self, attribute): r'''_get_attribute_vi_session @@ -5722,7 +5711,6 @@ def _get_attribute_vi_session(self, attribute): value = self._interpreter.get_attribute_vi_session(self._repeated_capability, attribute) return value - @ivi_synchronized def _get_attribute_vi_string(self, attribute): r'''_get_attribute_vi_string @@ -5750,7 +5738,6 @@ def _get_attribute_vi_string(self, attribute): value = self._interpreter.get_attribute_vi_string(self._repeated_capability, attribute) return value - @ivi_synchronized def _get_waveform_burst_start_locations(self, number_of_locations): r'''_get_waveform_burst_start_locations @@ -5786,7 +5773,6 @@ def _get_waveform_burst_start_locations(self, number_of_locations): locations, required_size = self._interpreter.get_waveform_burst_start_locations(self._repeated_capability, number_of_locations) return locations, required_size - @ivi_synchronized def _get_waveform_burst_stop_locations(self, number_of_locations): r'''_get_waveform_burst_stop_locations @@ -5822,7 +5808,6 @@ def _get_waveform_burst_stop_locations(self, number_of_locations): locations, required_size = self._interpreter.get_waveform_burst_stop_locations(self._repeated_capability, number_of_locations) return locations, required_size - @ivi_synchronized def _get_waveform_marker_event_locations(self, number_of_locations): r'''_get_waveform_marker_event_locations @@ -5855,7 +5840,6 @@ def _get_waveform_marker_event_locations(self, number_of_locations): locations, required_size = self._interpreter.get_waveform_marker_event_locations(self._repeated_capability, number_of_locations) return locations, required_size - @ivi_synchronized def load_configurations_from_file(self, file_path): r'''load_configurations_from_file @@ -5913,7 +5897,6 @@ def lock(self): # that will handle the unlock for them return _Lock(self) - @ivi_synchronized def reset_attribute(self, attribute_id): r'''reset_attribute @@ -5936,7 +5919,6 @@ def reset_attribute(self, attribute_id): ''' self._interpreter.reset_attribute(self._repeated_capability, attribute_id) - @ivi_synchronized def save_configurations_to_file(self, file_path): r'''save_configurations_to_file @@ -5959,7 +5941,6 @@ def save_configurations_to_file(self, file_path): ''' self._interpreter.save_configurations_to_file(self._repeated_capability, file_path) - @ivi_synchronized def send_software_edge_trigger(self, trigger, trigger_identifier): r'''send_software_edge_trigger @@ -6006,7 +5987,6 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): raise TypeError('Parameter trigger_identifier must be of type ' + str(enums.TriggerIdentifier)) self._interpreter.send_software_edge_trigger(trigger, trigger_identifier) - @ivi_synchronized def _set_attribute_vi_boolean(self, attribute, value): r'''_set_attribute_vi_boolean @@ -6031,7 +6011,6 @@ def _set_attribute_vi_boolean(self, attribute, value): ''' self._interpreter.set_attribute_vi_boolean(self._repeated_capability, attribute, value) - @ivi_synchronized def _set_attribute_vi_int32(self, attribute, value): r'''_set_attribute_vi_int32 @@ -6056,7 +6035,6 @@ def _set_attribute_vi_int32(self, attribute, value): ''' self._interpreter.set_attribute_vi_int32(self._repeated_capability, attribute, value) - @ivi_synchronized def _set_attribute_vi_int64(self, attribute, value): r'''_set_attribute_vi_int64 @@ -6081,7 +6059,6 @@ def _set_attribute_vi_int64(self, attribute, value): ''' self._interpreter.set_attribute_vi_int64(self._repeated_capability, attribute, value) - @ivi_synchronized def _set_attribute_vi_real64(self, attribute, value): r'''_set_attribute_vi_real64 @@ -6106,7 +6083,6 @@ def _set_attribute_vi_real64(self, attribute, value): ''' self._interpreter.set_attribute_vi_real64(self._repeated_capability, attribute, value) - @ivi_synchronized def _set_attribute_vi_session(self, attribute): r'''_set_attribute_vi_session @@ -6129,7 +6105,6 @@ def _set_attribute_vi_session(self, attribute): ''' self._interpreter.set_attribute_vi_session(self._repeated_capability, attribute) - @ivi_synchronized def _set_attribute_vi_string(self, attribute, value): r'''_set_attribute_vi_string @@ -6154,7 +6129,6 @@ def _set_attribute_vi_string(self, attribute, value): ''' self._interpreter.set_attribute_vi_string(self._repeated_capability, attribute, value) - @ivi_synchronized def _set_waveform_burst_start_locations(self, number_of_locations): r'''_set_waveform_burst_start_locations @@ -6185,7 +6159,6 @@ def _set_waveform_burst_start_locations(self, number_of_locations): locations = self._interpreter.set_waveform_burst_start_locations(self._repeated_capability, number_of_locations) return locations - @ivi_synchronized def _set_waveform_burst_stop_locations(self, number_of_locations): r'''_set_waveform_burst_stop_locations @@ -6213,7 +6186,6 @@ def _set_waveform_burst_stop_locations(self, number_of_locations): locations = self._interpreter.set_waveform_burst_stop_locations(self._repeated_capability, number_of_locations) return locations - @ivi_synchronized def _set_waveform_marker_event_locations(self, number_of_locations): r'''_set_waveform_marker_event_locations @@ -6382,7 +6354,6 @@ def close(self): ''' These are code-generated ''' - @ivi_synchronized def abort(self): r'''abort @@ -6390,7 +6361,6 @@ def abort(self): ''' self._interpreter.abort() - @ivi_synchronized def allocate_arb_waveform(self, waveform_name, size_in_samples): r'''allocate_arb_waveform @@ -6407,7 +6377,6 @@ def allocate_arb_waveform(self, waveform_name, size_in_samples): ''' self._interpreter.allocate_arb_waveform(waveform_name, size_in_samples) - @ivi_synchronized def change_external_calibration_password(self, old_password, new_password): r'''change_external_calibration_password @@ -6421,7 +6390,6 @@ def change_external_calibration_password(self, old_password, new_password): ''' self._interpreter.change_external_calibration_password(old_password, new_password) - @ivi_synchronized def check_generation_status(self): r'''check_generation_status @@ -6434,7 +6402,6 @@ def check_generation_status(self): is_done = self._interpreter.check_generation_status() return is_done - @ivi_synchronized def check_if_script_exists(self, script_name): r'''check_if_script_exists @@ -6454,7 +6421,6 @@ def check_if_script_exists(self, script_name): script_exists = self._interpreter.check_if_script_exists(script_name) return script_exists - @ivi_synchronized def check_if_waveform_exists(self, waveform_name): r'''check_if_waveform_exists @@ -6474,7 +6440,6 @@ def check_if_waveform_exists(self, waveform_name): waveform_exists = self._interpreter.check_if_waveform_exists(waveform_name) return waveform_exists - @ivi_synchronized def clear_all_arb_waveforms(self): r'''clear_all_arb_waveforms @@ -6482,7 +6447,6 @@ def clear_all_arb_waveforms(self): ''' self._interpreter.clear_all_arb_waveforms() - @ivi_synchronized def clear_arb_waveform(self, name): r'''clear_arb_waveform @@ -6494,7 +6458,6 @@ def clear_arb_waveform(self, name): ''' self._interpreter.clear_arb_waveform(name) - @ivi_synchronized def clear_error(self): r'''clear_error @@ -6507,7 +6470,6 @@ def clear_error(self): ''' self._interpreter.clear_error() - @ivi_synchronized def clear_self_calibrate_range(self): r'''clear_self_calibrate_range @@ -6515,7 +6477,6 @@ def clear_self_calibrate_range(self): ''' self._interpreter.clear_self_calibrate_range() - @ivi_synchronized def commit(self): r'''commit @@ -6523,7 +6484,6 @@ def commit(self): ''' self._interpreter.commit() - @ivi_synchronized def configure_deembedding_table_interpolation_linear(self, port, table_name, format): r'''configure_deembedding_table_interpolation_linear @@ -6551,7 +6511,6 @@ def configure_deembedding_table_interpolation_linear(self, port, table_name, for raise TypeError('Parameter format must be of type ' + str(enums.Format)) self._interpreter.configure_deembedding_table_interpolation_linear(port, table_name, format) - @ivi_synchronized def configure_deembedding_table_interpolation_nearest(self, port, table_name): r'''configure_deembedding_table_interpolation_nearest @@ -6565,7 +6524,6 @@ def configure_deembedding_table_interpolation_nearest(self, port, table_name): ''' self._interpreter.configure_deembedding_table_interpolation_nearest(port, table_name) - @ivi_synchronized def configure_deembedding_table_interpolation_spline(self, port, table_name): r'''configure_deembedding_table_interpolation_spline @@ -6579,7 +6537,6 @@ def configure_deembedding_table_interpolation_spline(self, port, table_name): ''' self._interpreter.configure_deembedding_table_interpolation_spline(port, table_name) - @ivi_synchronized def configure_digital_edge_script_trigger(self, trigger_id, source, edge): r'''configure_digital_edge_script_trigger @@ -6595,7 +6552,6 @@ def configure_digital_edge_script_trigger(self, trigger_id, source, edge): ''' self._interpreter.configure_digital_edge_script_trigger(trigger_id, source, edge) - @ivi_synchronized def configure_digital_edge_start_trigger(self, source, edge): r'''configure_digital_edge_start_trigger @@ -6611,7 +6567,6 @@ def configure_digital_edge_start_trigger(self, source, edge): ''' self._interpreter.configure_digital_edge_start_trigger(source, edge) - @ivi_synchronized def configure_digital_level_script_trigger(self, trigger_id, source, level): r'''configure_digital_level_script_trigger @@ -6627,7 +6582,6 @@ def configure_digital_level_script_trigger(self, trigger_id, source, level): ''' self._interpreter.configure_digital_level_script_trigger(trigger_id, source, level) - @ivi_synchronized def configure_digital_modulation_user_defined_waveform(self, number_of_samples, user_defined_waveform): r'''configure_digital_modulation_user_defined_waveform @@ -6644,7 +6598,6 @@ def configure_digital_modulation_user_defined_waveform(self, number_of_samples, ''' self._interpreter.configure_digital_modulation_user_defined_waveform(number_of_samples, user_defined_waveform) - @ivi_synchronized def configure_generation_mode(self, generation_mode): r'''configure_generation_mode @@ -6668,7 +6621,6 @@ def configure_generation_mode(self, generation_mode): raise TypeError('Parameter generation_mode must be of type ' + str(enums.GenerationMode)) self._interpreter.configure_generation_mode(generation_mode) - @ivi_synchronized def configure_output_enabled(self, output_enabled): r'''configure_output_enabled @@ -6680,7 +6632,6 @@ def configure_output_enabled(self, output_enabled): ''' self._interpreter.configure_output_enabled(output_enabled) - @ivi_synchronized def configure_p2_p_endpoint_fullness_start_trigger(self, p2p_endpoint_fullness_level): r'''configure_p2_p_endpoint_fullness_start_trigger @@ -6697,7 +6648,6 @@ def configure_p2_p_endpoint_fullness_start_trigger(self, p2p_endpoint_fullness_l ''' self._interpreter.configure_p2_p_endpoint_fullness_start_trigger(p2p_endpoint_fullness_level) - @ivi_synchronized def configure_power_level_type(self, power_level_type): r'''configure_power_level_type @@ -6709,7 +6659,6 @@ def configure_power_level_type(self, power_level_type): ''' self._interpreter.configure_power_level_type(power_level_type) - @ivi_synchronized def configure_pxi_chassis_clk10(self, pxi_clk10_source): r'''configure_pxi_chassis_clk10 @@ -6721,7 +6670,6 @@ def configure_pxi_chassis_clk10(self, pxi_clk10_source): ''' self._interpreter.configure_pxi_chassis_clk10(pxi_clk10_source) - @ivi_synchronized def configure_rf(self, frequency, power_level): r'''configure_rf @@ -6735,7 +6683,6 @@ def configure_rf(self, frequency, power_level): ''' self._interpreter.configure_rf(frequency, power_level) - @ivi_synchronized def configure_ref_clock(self, ref_clock_source, ref_clock_rate): r'''configure_ref_clock @@ -6752,7 +6699,6 @@ def configure_ref_clock(self, ref_clock_source, ref_clock_rate): ''' self._interpreter.configure_ref_clock(ref_clock_source, ref_clock_rate) - @ivi_synchronized def configure_signal_bandwidth(self, signal_bandwidth): r'''configure_signal_bandwidth @@ -6764,7 +6710,6 @@ def configure_signal_bandwidth(self, signal_bandwidth): ''' self._interpreter.configure_signal_bandwidth(signal_bandwidth) - @ivi_synchronized def configure_software_script_trigger(self, trigger_id): r'''configure_software_script_trigger @@ -6776,7 +6721,6 @@ def configure_software_script_trigger(self, trigger_id): ''' self._interpreter.configure_software_script_trigger(trigger_id) - @ivi_synchronized def configure_software_start_trigger(self): r'''configure_software_start_trigger @@ -6784,20 +6728,19 @@ def configure_software_start_trigger(self): ''' self._interpreter.configure_software_start_trigger() - @ivi_synchronized def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_file_path, sparameter_orientation): r'''create_deembedding_sparameter_table_s2_p_file Creates an S-parameter de-embedding table for the port based on the specified S2P file. Args: - port (str): yet to be defined + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842 is empty string. - table_name (str): yet to be defined + table_name (str): Specifies the name of the table. The name must be unique for a given port, but not across ports. If you use the same name as an existing table, the table is replaced. - s2p_file_path (str): yet to be defined + s2p_file_path (str): Specifies the path to the S2P file that contains de-embedding information for the specified port. - sparameter_orientation (enums.SparameterOrientation): yet to be defined **Defined Values** : + sparameter_orientation (enums.SparameterOrientation): Specifies the orientation of the data in the S2P file relative to the port on the DUT port. **Defined Values** : +-----------------------------+----------------+-----------------------------------------------------+ | Name | Value | Description | @@ -6812,7 +6755,6 @@ def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_fi raise TypeError('Parameter sparameter_orientation must be of type ' + str(enums.SparameterOrientation)) self._interpreter.create_deembedding_sparameter_table_s2_p_file(port, table_name, s2p_file_path, sparameter_orientation) - @ivi_synchronized def delete_all_deembedding_tables(self): r'''delete_all_deembedding_tables @@ -6820,7 +6762,6 @@ def delete_all_deembedding_tables(self): ''' self._interpreter.delete_all_deembedding_tables() - @ivi_synchronized def delete_deembedding_table(self, port, table_name): r'''delete_deembedding_table @@ -6834,7 +6775,6 @@ def delete_deembedding_table(self, port, table_name): ''' self._interpreter.delete_deembedding_table(port, table_name) - @ivi_synchronized def disable(self): r'''disable @@ -6842,7 +6782,6 @@ def disable(self): ''' self._interpreter.disable() - @ivi_synchronized def disable_script_trigger(self, trigger_id): r'''disable_script_trigger @@ -6854,7 +6793,6 @@ def disable_script_trigger(self, trigger_id): ''' self._interpreter.disable_script_trigger(trigger_id) - @ivi_synchronized def disable_start_trigger(self): r'''disable_start_trigger @@ -6862,7 +6800,6 @@ def disable_start_trigger(self): ''' self._interpreter.disable_start_trigger() - @ivi_synchronized def export_signal(self, signal, signal_identifier, output_terminal): r'''export_signal @@ -6948,7 +6885,6 @@ def export_signal(self, signal, signal_identifier, output_terminal): raise TypeError('Parameter output_terminal must be of type ' + str(enums.ReferenceClockExportOutputTerminal)) self._interpreter.export_signal(signal, signal_identifier, output_terminal) - @ivi_synchronized def _get_external_calibration_last_date_and_time(self): r'''_get_external_calibration_last_date_and_time @@ -6971,7 +6907,6 @@ def _get_external_calibration_last_date_and_time(self): year, month, day, hour, minute, second = self._interpreter.get_external_calibration_last_date_and_time() return year, month, day, hour, minute, second - @ivi_synchronized def get_external_calibration_last_date_and_time(self): '''get_external_calibration_last_date_and_time @@ -6984,7 +6919,6 @@ def get_external_calibration_last_date_and_time(self): year, month, day, hour, minute, second = self._get_external_calibration_last_date_and_time() return hightime.datetime(year, month, day, hour, minute) - @ivi_synchronized def get_self_calibration_last_date_and_time(self): '''get_self_calibration_last_date_and_time @@ -6997,7 +6931,6 @@ def get_self_calibration_last_date_and_time(self): year, month, day, hour, minute, second = self._get_self_calibration_date_and_time() return hightime.datetime(year, month, day, hour, minute) - @ivi_synchronized def get_max_settable_power(self): r'''get_max_settable_power @@ -7010,7 +6943,6 @@ def get_max_settable_power(self): value = self._interpreter.get_max_settable_power() return value - @ivi_synchronized def _get_self_calibration_date_and_time(self, module): r'''_get_self_calibration_date_and_time @@ -7037,7 +6969,6 @@ def _get_self_calibration_date_and_time(self, module): year, month, day, hour, minute, second = self._interpreter.get_self_calibration_date_and_time(module) return year, month, day, hour, minute, second - @ivi_synchronized def get_self_calibration_temperature(self, module): r'''get_self_calibration_temperature @@ -7066,7 +6997,6 @@ def get_self_calibration_temperature(self, module): temperature = self._interpreter.get_self_calibration_temperature(module) return temperature - @ivi_synchronized def get_stream_endpoint_handle(self, stream_endpoint): r'''get_stream_endpoint_handle @@ -7110,7 +7040,6 @@ def _init_with_options(self, resource_name, id_query, reset_device, option_strin new_vi = self._interpreter.init_with_options(resource_name, id_query, reset_device, option_string) return new_vi - @ivi_synchronized def _initiate(self): r'''_initiate @@ -7118,7 +7047,6 @@ def _initiate(self): ''' self._interpreter.initiate() - @ivi_synchronized def perform_power_search(self): r'''perform_power_search @@ -7128,7 +7056,6 @@ def perform_power_search(self): ''' self._interpreter.perform_power_search() - @ivi_synchronized def perform_thermal_correction(self): r'''perform_thermal_correction @@ -7136,7 +7063,6 @@ def perform_thermal_correction(self): ''' self._interpreter.perform_thermal_correction() - @ivi_synchronized def query_arb_waveform_capabilities(self): r'''query_arb_waveform_capabilities @@ -7155,7 +7081,6 @@ def query_arb_waveform_capabilities(self): max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size = self._interpreter.query_arb_waveform_capabilities() return max_number_waveforms, waveform_quantum, min_waveform_size, max_waveform_size - @ivi_synchronized def read_and_download_waveform_from_file_tdms(self, waveform_name, file_path, waveform_index): r'''read_and_download_waveform_from_file_tdms @@ -7171,7 +7096,6 @@ def read_and_download_waveform_from_file_tdms(self, waveform_name, file_path, wa ''' self._interpreter.read_and_download_waveform_from_file_tdms(waveform_name, file_path, waveform_index) - @ivi_synchronized def reset(self): r'''reset @@ -7181,7 +7105,6 @@ def reset(self): ''' self._interpreter.reset() - @ivi_synchronized def reset_device(self): r'''reset_device @@ -7191,7 +7114,6 @@ def reset_device(self): ''' self._interpreter.reset_device() - @ivi_synchronized def reset_with_defaults(self): r'''reset_with_defaults @@ -7199,7 +7121,6 @@ def reset_with_defaults(self): ''' self._interpreter.reset_with_defaults() - @ivi_synchronized def select_arb_waveform(self, name): r'''select_arb_waveform @@ -7214,7 +7135,6 @@ def select_arb_waveform(self, name): ''' self._interpreter.select_arb_waveform(name) - @ivi_synchronized def self_cal(self): r'''self_cal @@ -7224,7 +7144,6 @@ def self_cal(self): ''' self._interpreter.self_cal() - @ivi_synchronized def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level): r'''self_calibrate_range @@ -7267,7 +7186,6 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ raise TypeError('Parameter steps_to_omit must be of type ' + str(enums.SelfCalibrateRangeStepsToOmit)) self._interpreter.self_calibrate_range(steps_to_omit, min_frequency, max_frequency, min_power_level, max_power_level) - @ivi_synchronized def self_test(self, self_test_message): r'''self_test @@ -7284,7 +7202,6 @@ def self_test(self, self_test_message): self_test_result = self._interpreter.self_test(self_test_message) return self_test_result - @ivi_synchronized def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offset): r'''set_arb_waveform_next_write_position @@ -7318,7 +7235,6 @@ def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offse raise TypeError('Parameter relative_to must be of type ' + str(enums.RelativeTo)) self._interpreter.set_arb_waveform_next_write_position(waveform_name, relative_to, offset) - @ivi_synchronized def wait_until_settled(self, max_time_milliseconds): r'''wait_until_settled @@ -7330,7 +7246,6 @@ def wait_until_settled(self, max_time_milliseconds): ''' self._interpreter.wait_until_settled(max_time_milliseconds) - @ivi_synchronized def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_data): r'''write_p2_p_endpoint_i16 @@ -7346,7 +7261,6 @@ def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_d ''' self._interpreter.write_p2_p_endpoint_i16(stream_endpoint, number_of_samples, endpoint_data) - @ivi_synchronized def write_script(self, script): r'''write_script diff --git a/src/nirfsg/metadata/attributes.py b/src/nirfsg/metadata/attributes.py index 8adb7e9428..533fcbff71 100644 --- a/src/nirfsg/metadata/attributes.py +++ b/src/nirfsg/metadata/attributes.py @@ -4678,12 +4678,12 @@ [ 'NIRFSG_VAL_DO_NOT_EXPORT_STR', '', - 'yet to be defined' + 'Pulse modulation video signal is not exported.' ], [ 'NIRFSG_VAL_PULSE_OUT_STR', 'PulseOut', - 'yet to be defined' + 'Export the pulse modulation video signal on the pulse out terminal.' ] ], 'table_header': [ diff --git a/src/nirfsg/metadata/enums.py b/src/nirfsg/metadata/enums.py index ed21e806b5..8968957b9d 100644 --- a/src/nirfsg/metadata/enums.py +++ b/src/nirfsg/metadata/enums.py @@ -1934,14 +1934,14 @@ 'values': [ { 'documentation': { - 'description': 'yet to be defined' + 'description': 'Pulse modulation video signal is not exported.' }, 'name': 'NIRFSG_VAL_DO_NOT_EXPORT_STR', 'value': '' }, { 'documentation': { - 'description': 'yet to be defined' + 'description': 'Export the pulse modulation video signal on the pulse out terminal.' }, 'name': 'NIRFSG_VAL_PULSE_OUT_STR', 'value': 'PulseOut' diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index c058b4caf0..d111f54de5 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -29,7 +29,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'AllocateArbWaveform': { 'codegen_method': 'public', @@ -79,7 +79,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ChangeExternalCalibrationPassword': { 'codegen_method': 'public', @@ -129,7 +129,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckAttributeViBoolean': { 'codegen_method': 'public', @@ -189,7 +189,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckAttributeViInt32': { 'codegen_method': 'public', @@ -250,7 +250,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckAttributeViInt64': { 'codegen_method': 'public', @@ -311,7 +311,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckAttributeViReal64': { 'codegen_method': 'public', @@ -372,7 +372,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckAttributeViSession': { 'codegen_method': 'public', @@ -432,7 +432,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckAttributeViString': { 'codegen_method': 'public', @@ -493,7 +493,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckGenerationStatus': { 'codegen_method': 'public', @@ -533,7 +533,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckIfScriptExists': { 'codegen_method': 'public', @@ -583,7 +583,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CheckIfWaveformExists': { 'codegen_method': 'public', @@ -633,7 +633,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ClearAllArbWaveforms': { 'codegen_method': 'public', @@ -663,7 +663,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ClearArbWaveform': { 'codegen_method': 'public', @@ -703,7 +703,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ClearError': { 'codegen_method': 'public', @@ -734,7 +734,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ClearSelfCalibrateRange': { 'codegen_method': 'public', @@ -764,7 +764,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'Commit': { 'codegen_method': 'public', @@ -794,7 +794,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureDeembeddingTableInterpolationLinear': { 'codegen_method': 'public', @@ -877,7 +877,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureDeembeddingTableInterpolationNearest': { 'codegen_method': 'public', @@ -927,7 +927,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureDeembeddingTableInterpolationSpline': { 'codegen_method': 'public', @@ -977,7 +977,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureDigitalEdgeScriptTrigger': { 'codegen_method': 'public', @@ -1037,7 +1037,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureDigitalEdgeStartTrigger': { 'codegen_method': 'public', @@ -1088,7 +1088,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureDigitalLevelScriptTrigger': { 'codegen_method': 'public', @@ -1148,7 +1148,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureDigitalModulationUserDefinedWaveform': { 'codegen_method': 'public', @@ -1202,7 +1202,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureGenerationMode': { 'codegen_method': 'public', @@ -1265,7 +1265,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureOutputEnabled': { 'codegen_method': 'public', @@ -1305,7 +1305,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureP2PEndpointFullnessStartTrigger': { 'codegen_method': 'public', @@ -1346,7 +1346,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigurePowerLevelType': { 'codegen_method': 'public', @@ -1386,7 +1386,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigurePxiChassisClk10': { 'codegen_method': 'public', @@ -1426,7 +1426,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureRF': { 'codegen_method': 'public', @@ -1476,7 +1476,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureRefClock': { 'codegen_method': 'public', @@ -1526,7 +1526,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureSignalBandwidth': { 'codegen_method': 'public', @@ -1566,7 +1566,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureSoftwareScriptTrigger': { 'codegen_method': 'public', @@ -1606,7 +1606,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ConfigureSoftwareStartTrigger': { 'codegen_method': 'public', @@ -1636,7 +1636,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'CreateDeembeddingSparameterTableS2PFile': { 'codegen_method': 'public', @@ -1667,7 +1667,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'yet to be defined' + 'description': 'Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842 is empty string.' }, 'name': 'port', 'type': 'ViConstString', @@ -1677,7 +1677,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'yet to be defined' + 'description': 'Specifies the name of the table. The name must be unique for a given port, but not across ports. If you use the same name as an existing table, the table is replaced.' }, 'name': 'tableName', 'type': 'ViConstString', @@ -1687,7 +1687,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'yet to be defined' + 'description': 'Specifies the path to the S2P file that contains de-embedding information for the specified port.' }, 'name': 's2pFilePath', 'type': 'ViConstString', @@ -1697,7 +1697,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'yet to be defined **Defined Values** :', + 'description': ' Specifies the orientation of the data in the S2P file relative to the port on the DUT port. **Defined Values** :', 'table_body': [ [ 'NIRFSG_VAL_PORT1_TOWARDS_DUT', @@ -1724,7 +1724,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'DeleteAllDeembeddingTables': { 'codegen_method': 'public', @@ -1754,7 +1754,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'DeleteDeembeddingTable': { 'codegen_method': 'public', @@ -1804,7 +1804,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'Disable': { 'codegen_method': 'public', @@ -1834,7 +1834,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'DisableScriptTrigger': { 'codegen_method': 'public', @@ -1874,7 +1874,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'DisableStartTrigger': { 'codegen_method': 'public', @@ -1904,7 +1904,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ExportSignal': { 'codegen_method': 'public', @@ -2092,7 +2092,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetAttributeViBoolean': { 'codegen_method': 'private', @@ -2152,7 +2152,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetAttributeViInt32': { 'codegen_method': 'private', @@ -2212,7 +2212,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetAttributeViInt64': { 'codegen_method': 'private', @@ -2272,7 +2272,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetAttributeViReal64': { 'codegen_method': 'private', @@ -2332,7 +2332,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetAttributeViSession': { 'codegen_method': 'private', @@ -2392,7 +2392,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetAttributeViString': { 'codegen_method': 'private', @@ -2466,7 +2466,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetError': { 'codegen_method': 'public', @@ -2623,7 +2623,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetLastExtCalLastDateAndTime': { 'codegen_method': 'python-only', @@ -2653,7 +2653,8 @@ ], 'python_name': 'get_external_calibration_last_date_and_time', 'real_datetime_call': 'GetExternalCalibrationLastDateAndTime', - 'returns': 'ViStatus' + 'returns': 'ViStatus', + 'use_session_lock': False }, 'GetLastSelfCalLastDateAndTime': { 'codegen_method': 'python-only', @@ -2683,7 +2684,8 @@ ], 'python_name': 'get_self_calibration_last_date_and_time', 'real_datetime_call': 'GetSelfCalibrationDateAndTime', - 'returns': 'ViStatus' + 'returns': 'ViStatus', + 'use_session_lock': False }, 'GetMaxSettablePower': { 'codegen_method': 'public', @@ -2723,7 +2725,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetSelfCalibrationDateAndTime': { 'codegen_method': 'private', @@ -2824,7 +2826,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetSelfCalibrationTemperature': { 'codegen_method': 'public', @@ -2897,7 +2899,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetStreamEndpointHandle': { 'codegen_method': 'public', @@ -2947,7 +2949,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetWaveformBurstStartLocations': { 'codegen_method': 'private', @@ -3017,7 +3019,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetWaveformBurstStopLocations': { 'codegen_method': 'private', @@ -3087,7 +3089,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'GetWaveformMarkerEventLocations': { 'codegen_method': 'private', @@ -3157,7 +3159,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'InitWithOptions': { 'codegen_method': 'private', @@ -3251,7 +3253,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'LoadConfigurationsFromFile': { 'codegen_method': 'public', @@ -3301,7 +3303,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'LockSession': { 'codegen_method': 'public', @@ -3374,7 +3376,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'PerformThermalCorrection': { 'codegen_method': 'public', @@ -3404,7 +3406,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'QueryArbWaveformCapabilities': { 'codegen_method': 'public', @@ -3474,7 +3476,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ReadAndDownloadWaveformFromFileTDMS': { 'codegen_method': 'public', @@ -3534,7 +3536,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'Reset': { 'codegen_method': 'public', @@ -3565,7 +3567,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ResetAttribute': { 'codegen_method': 'public', @@ -3615,7 +3617,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ResetDevice': { 'codegen_method': 'public', @@ -3646,7 +3648,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'ResetWithDefaults': { 'codegen_method': 'public', @@ -3676,7 +3678,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SaveConfigurationsToFile': { 'codegen_method': 'public', @@ -3726,7 +3728,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SelectArbWaveform': { 'codegen_method': 'public', @@ -3766,7 +3768,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SelfCal': { 'codegen_method': 'public', @@ -3797,7 +3799,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SelfCalibrateRange': { 'codegen_method': 'public', @@ -3916,7 +3918,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SelfTest': { 'codegen_method': 'public', @@ -3954,7 +3956,8 @@ 'type': 'ViChar[]' } ], - 'returns': 'ViStatus' + 'returns': 'ViStatus', + 'use_session_lock': False }, 'SendSoftwareEdgeTrigger': { 'codegen_method': 'public', @@ -4051,7 +4054,7 @@ ], 'render_in_session_base': True, 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetArbWaveformNextWritePosition': { 'codegen_method': 'public', @@ -4130,7 +4133,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetAttributeViBoolean': { 'codegen_method': 'private', @@ -4190,7 +4193,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetAttributeViInt32': { 'codegen_method': 'private', @@ -4251,7 +4254,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetAttributeViInt64': { 'codegen_method': 'private', @@ -4312,7 +4315,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetAttributeViReal64': { 'codegen_method': 'private', @@ -4373,7 +4376,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetAttributeViSession': { 'codegen_method': 'private', @@ -4433,7 +4436,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetAttributeViString': { 'codegen_method': 'private', @@ -4494,7 +4497,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetWaveformBurstStartLocations': { 'codegen_method': 'private', @@ -4554,7 +4557,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetWaveformBurstStopLocations': { 'codegen_method': 'private', @@ -4614,7 +4617,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'SetWaveformMarkerEventLocations': { 'codegen_method': 'private', @@ -4674,7 +4677,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'UnlockSession': { 'codegen_method': 'public', @@ -4756,7 +4759,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'WriteP2PEndpointI16': { 'codegen_method': 'public', @@ -4820,7 +4823,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'WriteScript': { 'codegen_method': 'public', @@ -4861,7 +4864,7 @@ } ], 'returns': 'ViStatus', - 'use_session_lock': True + 'use_session_lock': False }, 'close': { 'codegen_method': 'private', From 964ab9ed173db1afb5eeb54937b22511eb20c34d Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 07:00:34 +0000 Subject: [PATCH 33/46] Updated README.rst --- README.rst | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index e1eccb52e8..7cf3e55766 100644 --- a/README.rst +++ b/README.rst @@ -46,11 +46,11 @@ following drivers are supported: * NI-DMM (Python module: nidmm) * NI-FGEN (Python module: nifgen) * NI-ModInst (Python module: nimodinst) +* NI-RFSG (Python module: nirfsg) * NI-SCOPE (Python module: niscope) * NI Switch Executive (Python module: nise) * NI-SWITCH (Python module: niswitch) * NI-TClk (Python module: nitclk) -* NI-RFSG (Python module: nirfsg) It is implemented as a set of `Mako templates `_ and per-driver metafiles that produce a Python module for each driver. The driver is called through its public C API using the `ctypes `_ Python library. @@ -296,7 +296,7 @@ NI-RFSG Python API Status +-------------------------------+-----------------------+ | NI-RFSG (nirfsg) | | +===============================+=======================+ -| Driver Version Tested Against | 2023 Q1.1 | +| Driver Version Tested Against | 2025 Q1 | +-------------------------------+-----------------------+ | PyPI Version | |nirfsgLatestVersion| | +-------------------------------+-----------------------+ @@ -531,11 +531,11 @@ Driver specific installation instructions can be found on **Read the Docs**: * `nidmm `_ * `nifgen `_ * `nimodinst `_ +* `nirfsg `_ * `niscope `_ * `nise `_ * `niswitch `_ * `nitclk `_ -* `nirfsg `_ Contributing @@ -589,11 +589,12 @@ Documentation is available on **Read the Docs**: - https://nidmm.readthedocs.io/en/stable - https://nifgen.readthedocs.io/en/stable - https://nimodinst.readthedocs.io/en/stable +- https://nirfsg.readthedocs.io/en/stable - https://niscope.readthedocs.io/en/stable - https://nise.readthedocs.io/en/stable - https://niswitch.readthedocs.io/en/stable - https://nitclk.readthedocs.io/en/stable -- https://nirfsg.readthedocs.io/en/stable + .. _license-section: From 64a5a1005a62e8e4d3cdb5d6926fe078063027b3 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 08:23:36 +0000 Subject: [PATCH 34/46] removing input() for non-interactive use of example --- src/nirfsg/examples/nirfsg_cw.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/nirfsg/examples/nirfsg_cw.py b/src/nirfsg/examples/nirfsg_cw.py index 1fa5560db8..5f969c00d5 100644 --- a/src/nirfsg/examples/nirfsg_cw.py +++ b/src/nirfsg/examples/nirfsg_cw.py @@ -14,7 +14,8 @@ def example(resource_name, options, frequency, power_level): # Start generation with session.initiate(): - input("Press Enter to stop generation") + # input("Press Enter to stop generation") + pass def _main(argsv): From 6e178b2c713429b6ea173af507ccc866595fc171 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 19:43:28 +0530 Subject: [PATCH 35/46] Removed print statement from example --- src/nirfsg/examples/nirfsg_cw.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/nirfsg/examples/nirfsg_cw.py b/src/nirfsg/examples/nirfsg_cw.py index 5f969c00d5..9607855b5f 100644 --- a/src/nirfsg/examples/nirfsg_cw.py +++ b/src/nirfsg/examples/nirfsg_cw.py @@ -14,8 +14,7 @@ def example(resource_name, options, frequency, power_level): # Start generation with session.initiate(): - # input("Press Enter to stop generation") - pass + session.check_generation_status() def _main(argsv): From 32809b7b9510c6bbe8993f080bbeb2186256fbbf Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 19:44:34 +0530 Subject: [PATCH 36/46] Added documentation for functions --- docs/nirfsg/class.rst | 702 +++++++++++++++++++++++++++---- src/nirfsg/metadata/functions.py | 683 +++++++++++++++++++----------- 2 files changed, 1057 insertions(+), 328 deletions(-) diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index 32d8564141..e208bac332 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -7,7 +7,15 @@ Session - Opens a session to the device you specify as the :py:attr:`nirfsg.Session.RESOURCE_NAME` and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. This method also configures the device through the :py:attr:`nirfsg.Session.OPTION_STRING` input. + Opens a session to the device you specify as the **:py:attr:`nirfsg.Session.RESOURCE_NAME`** and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. + + This method also configures the device through the **:py:attr:`nirfsg.Session.OPTION_STRING`** input. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Simulating an NI RF Signal Generator `_ @@ -22,8 +30,14 @@ Session Specifies the resource name of the device to initialize. + For NI-DAQmx devices, the syntax is the device name specified in MAX. Typical default names for NI-DAQmx devices in MAX are Dev2 or PXISlot2. You can rename an NI-DAQmx device in MAX. + + You can also specify the name of an IVI logical name configured with the IVI Configuration utility. Refer to the *IVI* topic of the *Measurement & Automation Explorer Help* for more information. + + .. note:: NI-RFSG device names are not case-sensitive. However, all IVI names, such as logical names, are case-sensitive. If you use an IVI logical name, make sure the name is identical to the name shown in the IVI Configuration Utility. + :type resource_name: str @@ -32,7 +46,15 @@ Session Specifies whether you want NI-RFSG to perform an ID query. - + **Defined Values**: + + +-----------+--------------------------+ + | Value | Description | + +===========+==========================+ + | True (1) | Perform ID query. | + +-----------+--------------------------+ + | False (0) | Do not perform ID query. | + +-----------+--------------------------+ :type id_query: bool @@ -42,7 +64,15 @@ Session Specifies whether you want to reset the NI-RFSG device during the initialization procedure. - + **Defined Values**: + + +-----------+----------------------+ + | Value | Description | + +===========+======================+ + | True (1) | Reset device. | + +-----------+----------------------+ + | False (0) | Do not reset device. | + +-----------+----------------------+ :type reset_device: bool @@ -94,6 +124,12 @@ abort Stops signal generation. + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Programming State Model `_ + @@ -105,11 +141,19 @@ allocate_arb_waveform .. py:method:: allocate_arb_waveform(waveform_name, size_in_samples) - Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the :py:meth:`nirfsg.Session.WriteArbWaveform` method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + Allocates onboard memory space for the arbitrary waveform. - + Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the :py:meth:`nirfsg.Session.WriteArbWaveform` method multiple times to write a large waveform in smaller blocks. - .. note:: One or more of the referenced methods are not in the Python API for this driver. + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming Waveform Data `_ + + @@ -141,6 +185,8 @@ change_external_calibration_password Changes the external calibration password of the device. + **Supported Devices:** PXIe-5611, PXIe-5653/5654, PXIe-5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + @@ -203,6 +249,8 @@ check_attribute_vi_boolean + .. note:: Some of the values might not be valid depending on the current settings of the instrument session. + :type value: bool @@ -245,6 +293,8 @@ check_attribute_vi_int32 + .. note:: Some of the values might not be valid depending on the current settings of the instrument session. + :type value: int @@ -287,6 +337,8 @@ check_attribute_vi_int64 + .. note:: Some of the values might not be valid depending on the current settings of the instrument session. + :type value: int @@ -329,6 +381,8 @@ check_attribute_vi_real64 + .. note:: Some of the values might not be valid depending on the current settings of the instrument session. + :type value: float @@ -404,6 +458,8 @@ check_attribute_vi_string + .. note:: Some of the values might not be valid depending on the current settings of the instrument session. + :type value: str @@ -414,7 +470,17 @@ check_generation_status .. py:method:: check_generation_status() - Checks the status of the generation. Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. + Checks the status of the generation. + + Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. + + **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ + + `Stopping Pear-to-Peer Generation `_ @@ -426,7 +492,15 @@ check_generation_status Returns information about the completion of signal generation. - + **Defined Values**: + + +-------+---------------------------------+ + | Value | Description | + +=======+=================================+ + | True | Signal generation is complete. | + +-------+---------------------------------+ + | False | Signal generation is occurring. | + +-------+---------------------------------+ @@ -437,7 +511,9 @@ check_if_script_exists .. py:method:: check_if_script_exists(script_name) - Returns whether the script that you specify as :py:attr:`nirfsg.Session.SCRIPT_NAME` exists. + Returns whether the script that you specify as **:py:attr:`nirfsg.Session.SCRIPT_NAME`** exists. + + **Supported Devices**: PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860 @@ -461,7 +537,15 @@ check_if_script_exists Returns True if the script exists. - + **Defined Values**: + + +-------+----------------------------+ + | Value | Description | + +=======+============================+ + | True | The script exists. | + +-------+----------------------------+ + | False | The script does not exist. | + +-------+----------------------------+ @@ -472,7 +556,9 @@ check_if_waveform_exists .. py:method:: check_if_waveform_exists(waveform_name) - Returns whether the waveform that you specify as :py:attr:`nirfsg.Session.WAVEFORM_NAME` exists. + Returns whether the waveform that you specify as **:py:attr:`nirfsg.Session.WAVEFORM_NAME`** exists. + + **Supported Devices**: PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860 @@ -496,7 +582,15 @@ check_if_waveform_exists Returns True if the waveform exists. - + **Defined Values**: + + +-------+------------------------------+ + | Value | Description | + +=======+==============================+ + | True | The waveform exists. | + +-------+------------------------------+ + | False | The waveform does not exist. | + +-------+------------------------------+ @@ -507,7 +601,11 @@ clear_all_arb_waveforms .. py:method:: clear_all_arb_waveforms() - Deletes all currently defined waveforms and scripts. The NI-RFSG device must be in the Configuration state before you call this method. + Deletes all currently defined waveforms and scripts. + + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -520,7 +618,11 @@ clear_arb_waveform .. py:method:: clear_arb_waveform(name) - Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + Deletes a specified waveform from the pool of currently defined waveforms. + + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -543,7 +645,13 @@ clear_error .. py:method:: clear_error() - Clears the error information associated with the session. If you pass VI_NULL for the :py:attr:`nirfsg.Session.VI` parameter, this method clears the error information for the current execution thread. + Clears the error information associated with the session. + + If you pass VI_NULL for the :py:attr:`nirfsg.Session.VI` parameter, this method clears the error information for the current execution thread. + + The IVI Engine also maintains this error information separately for each thread. This feature of the IVI Engine is useful if you do not have a session handle to pass to the :py:meth:`nirfsg.Session.clear_error` method or the :py:meth:`nirfsg.Session.get_error` method, which occurs when a call to the :py:meth:`nirfsg.Session.Init` method or the :py:meth:`nirfsg.Session.__init__` method fails. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 @@ -562,6 +670,8 @@ clear_self_calibrate_range Clears the data obtained from the :py:meth:`nirfsg.Session.self_calibrate_range` method. + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + @@ -575,11 +685,15 @@ close Aborts any signal generation in progress and destroys the instrument driver session. - + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** - .. note:: After calling this method, you cannot use NI-RFSG again until you call the :py:meth:`nirfsg.Session.Init` method or the :py:meth:`nirfsg.Session.__init__` method. + `NI-RFSG Instrument Driver Programming Flow `_ - .. note:: One or more of the referenced methods are not in the Python API for this driver. + `NI-RFSG Programming State Model `_ + + .. note:: This method is not needed when using the session context manager @@ -592,7 +706,15 @@ commit .. py:method:: commit() - Programs the device with the correct settings. Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. + Programs the device with the correct settings. + + Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. + + **Supported devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Programming State Model `_ @@ -605,7 +727,11 @@ configure_deembedding_table_interpolation_linear .. py:method:: configure_deembedding_table_interpolation_linear(port, table_name, format) - Selects the linear interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + Selects the linear interpolation method. + + If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -614,7 +740,7 @@ configure_deembedding_table_interpolation_linear :param port: - Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -654,7 +780,11 @@ configure_deembedding_table_interpolation_nearest .. py:method:: configure_deembedding_table_interpolation_nearest(port, table_name) - Selects the nearest interpolation method. NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. + Selects the nearest interpolation method. + + NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -663,7 +793,7 @@ configure_deembedding_table_interpolation_nearest :param port: - Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -686,7 +816,11 @@ configure_deembedding_table_interpolation_spline .. py:method:: configure_deembedding_table_interpolation_spline(port, table_name) - Selects the spline interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + Selects the spline interpolation method. + + If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -695,7 +829,7 @@ configure_deembedding_table_interpolation_spline :param port: - Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -718,7 +852,19 @@ configure_digital_edge_script_trigger .. py:method:: configure_digital_edge_script_trigger(trigger_id, source, edge) - Configures the specified Script Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + Purpose + + Configures the specified Script Trigger for digital edge triggering. + + The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Digital Edge Trigger `_ @@ -759,7 +905,17 @@ configure_digital_edge_start_trigger .. py:method:: configure_digital_edge_start_trigger(source, edge) - Configures the Start Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Start Trigger for digital edge triggering. + + The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Digital Edge Trigger `_ @@ -793,7 +949,17 @@ configure_digital_level_script_trigger .. py:method:: configure_digital_level_script_trigger(trigger_id, source, level) - Configures a specified Script Trigger for digital level triggering. The NI-RFSG device must be in the Configuration state before calling this method. + Configures a specified Script Trigger for digital level triggering. + + The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Digital Level Trigger `_ @@ -836,6 +1002,8 @@ configure_digital_modulation_user_defined_waveform Specifies the message signal used for digital modulation when the :py:attr:`nirfsg.Session.digital_modulation_waveform_type` property is set to :py:data:`~nirfsg.NIRFSG_VAL_USER_DEFINED`. + **Supported Devices**: PXI/PXIe-5650/5651/5652 + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -868,7 +1036,17 @@ configure_generation_mode .. py:method:: configure_generation_mode(generation_mode) - Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. The NI-RFSG device must be in the Configuration state before you call this method. + Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. + + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts. @@ -877,7 +1055,11 @@ configure_generation_mode :param generation_mode: - Specifies the mode used by NI-RFSG for generating an RF output signal. **Defined Values** : + Specifies the mode used by NI-RFSG for generating an RF output signal. + + **Default Value**: :py:data:`~nirfsg.GenerationMode.CW` + + **Defined Values** : +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ | Name | Value | Description | @@ -889,6 +1071,10 @@ configure_generation_mode | :py:data:`~nirfsg.GenerationMode.SCRIPT` | 1002 (0x3ea) | Configures the RF signal generator to generate arbitrary waveforms as directed by the :py:attr:`nirfsg.Session.selected_script` property. | +------------------------------------------------+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------+ + .. note:: - For the PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, only :py:data:`~nirfsg.GenerationMode.CW` is supported. + + - If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported. + :type generation_mode: :py:data:`nirfsg.GenerationMode` @@ -899,7 +1085,19 @@ configure_output_enabled .. py:method:: configure_output_enabled(output_enabled) - Enables or disables signal output. Setting :py:attr:`nirfsg.Session.output_enabled` to False while in the Generation state attenuates the generated signal so that no signal is output. + Enables or disables signal output. + + Setting **:py:attr:`nirfsg.Session.output_enabled`** to False while in the Generation state attenuates the generated signal so that no signal is output. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Output Enabled `_ + + `NI-RFSG Instrument Driver Programming Flow `_ + + `RF List Mode `_ @@ -922,7 +1120,15 @@ configure_p2_p_endpoint_fullness_start_trigger .. py:method:: configure_p2_p_endpoint_fullness_start_trigger(p2p_endpoint_fullness_level) - Configures the Start Trigger to detect peer-to-peer endpoint fullness. Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the :py:attr:`nirfsg.Session.P2P_ENDPOINT_FULLNESS_LEVEL` parameter. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Start Trigger to detect peer-to-peer endpoint fullness. + + Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the **:py:attr:`nirfsg.Session.P2P_ENDPOINT_FULLNESS_LEVEL`** parameter. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Start Trigger `_ @@ -949,7 +1155,17 @@ configure_power_level_type .. py:method:: configure_power_level_type(power_level_type) - Specifies the way the driver interprets the :py:attr:`nirfsg.Session.power_level` property. In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. + Specifies the way the driver interprets the :py:attr:`nirfsg.Session.power_level` property. + + In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Spurious Performance `_ + + `Optimizing for Low Power Generation `_ @@ -960,7 +1176,13 @@ configure_power_level_type Specifies the way the driver interprets the value of the :py:attr:`nirfsg.Session.power_level` property. NI-RFSG sets the :py:attr:`nirfsg.Session.power_level_type` property to this value. - + +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +=============================+==================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | **Average Power** (default) | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | + +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **Peak Power** | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. | + +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ :type power_level_type: int @@ -972,7 +1194,17 @@ configure_pxi_chassis_clk10 .. py:method:: configure_pxi_chassis_clk10(pxi_clk10_source) - Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. + Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. + + This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXI-5610, PXI-5670/5671 + + **Related Topics** + + `Timing Configurations `_ + + `System Reference Clock `_ @@ -995,7 +1227,23 @@ configure_ref_clock .. py:method:: configure_ref_clock(ref_clock_source, ref_clock_rate) - Configures the NI-RFSG device Reference Clock. The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the NI-RFSG device Reference Clock. + + The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `PXIe-5672 Timing Configurations `_ + + `PXIe-5673 Timing Configurations `_ + + `PXIe-5673E Timing Configurations `_ + + `PXIe-5830 Timing Configurations `_ + + `PXIe-5831 Timing Configurations `_ @@ -1006,14 +1254,30 @@ configure_ref_clock Specifies the source of Reference Clock signal. - + +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Reference Clock Constant | Value | Description | + +===============================================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | **:py:data:`~nirfsg.NIRFSG_VAL_ONBOARD_CLOCK_STR` (default)** | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **:py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR`** | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **:py:data:`~nirfsg.ReferenceClockSource.PXI_CLK`** | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | + +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **:py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR`** | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | + +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **:py:data:`~nirfsg.ReferenceClockSource.REF_IN_2`** | RefIn2 | - | + +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **:py:data:`~nirfsg.ReferenceClockSource.PXI_CLK_MASTER`** | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. :type ref_clock_source: str :param ref_clock_rate: - Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is :py:data:`~nirfsg.NIRFSG_VAL_AUTO`, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the :py:attr:`nirfsg.Session.ref_clock_source` parameter is set to :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR`, :py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR` or :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2`. Refer to the :py:attr:`nirfsg.Session.ref_clock_rate` property for possible values. + Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is :py:data:`~nirfsg.NIRFSG_VAL_AUTO`, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the **:py:attr:`nirfsg.Session.ref_clock_source`** parameter is set to :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR`, :py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR` or :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2`. Refer to the :py:attr:`nirfsg.Session.ref_clock_rate` property for possible values. @@ -1029,7 +1293,15 @@ configure_rf .. py:method:: configure_rf(frequency, power_level) - Configures the frequency and power level of the RF output signal. The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. + Configures the frequency and power level of the RF output signal. + + The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ @@ -1040,6 +1312,8 @@ configure_rf Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal. + **Units**: hertz (Hz) + @@ -1049,6 +1323,8 @@ configure_rf Specifies either the average power level or peak power level of the generated RF signal, depending on the :py:attr:`nirfsg.Session.power_level_type` property. + **Units**: dBm + @@ -1061,10 +1337,18 @@ configure_signal_bandwidth .. py:method:: configure_signal_bandwidth(signal_bandwidth) - Configures the signal bandwidth of the arbitrary waveform. The NI-RFSG device must be in the Configuration state before you call this method. Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband. + Configures the signal bandwidth of the arbitrary waveform. + + The NI-RFSG device must be in the Configuration state before you call this method. + + NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0Hz. In such cases, the signal bandwidth is simply the baseband signal minimum frequency subtracted from its maximum frequency, or *f* max minus *f* min. NI-RFSG uses this value to optimally configure the center frequency of the upconverter to help minimize phase noise. The generated signal is not filtered to achieve the set bandwidth. However, specifying a bandwidth smaller than the actual bandwidth of the signal could potentially result in spectral distortion. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + .. note:: Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband. + :param signal_bandwidth: @@ -1084,7 +1368,17 @@ configure_software_script_trigger .. py:method:: configure_software_script_trigger(trigger_id) - Configures the Script Trigger for software triggering. Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Script Trigger for software triggering. + + Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Trigger Types `_ @@ -1107,7 +1401,19 @@ configure_software_start_trigger .. py:method:: configure_software_start_trigger() - Configures the Start Trigger for software triggering. Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Start Trigger for software triggering. + + Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + **Related Topics** + + `Start Trigger `_ + + `Trigger Types `_ @@ -1122,6 +1428,16 @@ create_deembedding_sparameter_table_s2_p_file Creates an S-parameter de-embedding table for the port based on the specified S2P file. + If you only create one table for a port, NI-RFSG automatically selects that table to de-embed the measurement. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `De-embedding Overview `_ + + `S-parameters `_ + @@ -1178,6 +1494,8 @@ delete_all_deembedding_tables Deletes all configured de-embedding tables for the session. + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + @@ -1191,6 +1509,8 @@ delete_deembedding_table Deletes the selected de-embedding table for a given port. + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + @@ -1198,7 +1518,7 @@ delete_deembedding_table :param port: - Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -1223,6 +1543,8 @@ disable Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected. + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E + @@ -1234,7 +1556,15 @@ disable_script_trigger .. py:method:: disable_script_trigger(trigger_id) - Configures the device not to wait for the specified Script Trigger. Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. + Configures the device not to wait for the specified Script Trigger. + + Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ @@ -1257,7 +1587,15 @@ disable_start_trigger .. py:method:: disable_start_trigger() - Configures the device not to wait for a Start Trigger. This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the device not to wait for a Start Trigger. + + This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ @@ -1270,7 +1608,23 @@ export_signal .. py:method:: export_signal(signal, signal_identifier, output_terminal) - Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this method. + Routes signals (triggers, clocks, and events) to a specified output terminal. + + The NI-RFSG device must be in the Configuration state before you call this method. + + You can clear a previously routed signal by exporting the signal to "" (empty string). + + **Supported Devices**:PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ @@ -1367,6 +1721,8 @@ get_error Retrieves and then clears the IVI error information for the session or the current execution thread. + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + .. note:: If the **bufferSize** parameter is 0, this method does not clear the error information. By passing 0 to the **bufferSize** parameter, you can determine the buffer size required to obtain the entire :py:attr:`nirfsg.Session.ERROR_DESCRIPTION` string. You can then call this method again with a sufficiently large buffer. If you specify a valid IVI session for the :py:attr:`nirfsg.Session.VI` parameter, this method retrieves and clears the error information for the session. If you pass VI_NULL for the :py:attr:`nirfsg.Session.VI` parameter, this method retrieves and clears the error information for the current execution thread. If the :py:attr:`nirfsg.Session.VI` parameter is an invalid session, this method does nothing and returns an error. Normally, the error information describes the first error that occurred since the user last called this method or the :py:meth:`nirfsg.Session.clear_error` method. @@ -1392,6 +1748,8 @@ get_error Returns the :py:attr:`nirfsg.Session.ERROR_DESCRIPTION` for the IVI session or execution thread. + If there is no description, the method returns an empty string. The buffer must contain at least as many elements as the value you specify with the **bufferSize** parameter. If the :py:attr:`nirfsg.Session.ERROR_DESCRIPTION`, including the terminating NULL byte, contains more bytes than you indicate with the **bufferSize** parameter, the method copies **bufferSize** - 1 bytes into the buffer, places an ASCII NULL byte at the end of the buffer, and returns the buffer size you must pass to get the entire value. For example, if the value is 123456 and the buffer size is 4, the method places 123 into the buffer and returns 7. If you pass 0, you can pass VI_NULL for this parameter. + .. note:: One or more of the referenced properties are not in the Python API for this driver. @@ -1428,6 +1786,8 @@ get_max_settable_power Returns the maximum settable output power level for the current configuration. + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + @@ -1472,6 +1832,8 @@ get_self_calibration_temperature Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. + **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860 + @@ -1479,7 +1841,9 @@ get_self_calibration_temperature :param module: - Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. **Defined Values** : + Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. + **Default Value**: :py:data:`~nirfsg.Module.PRIMARY_MODULE` + **Defined Values** : +------------------------------------------+----------------+---------------------------------------------------------------------+ | Name | Value | Description | @@ -1513,6 +1877,14 @@ get_stream_endpoint_handle Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint. + **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Stream `_ + + `Configuring Flow Control `_ + @@ -1544,7 +1916,15 @@ initiate .. py:method:: initiate() - Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the :py:meth:`nirfsg.Session.abort` method. + Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. + + If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the :py:meth:`nirfsg.Session.abort` method. + + **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ @@ -1559,7 +1939,11 @@ load_configurations_from_file .. py:method:: load_configurations_from_file(file_path) - Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file. + Loads the configurations from the specified file to the NI-RFSG driver session. + + The VI does an implicit reset before loading the configurations from the file. + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -1640,7 +2024,15 @@ perform_power_search .. py:method:: perform_power_search() - Performs a power search if the :py:attr:`nirfsg.Session.alc_control` property is disabled. Calling this method disables modulation for a short time while the device levels the output signal. + Performs a power search if the :py:attr:`nirfsg.Session.alc_control` property is disabled. + + Calling this method disables modulation for a short time while the device levels the output signal. + + **Supported Devices**: PXIe-5654 with PXIe-5696 + + **Related Topics** + + `Power Search `_ @@ -1655,7 +2047,19 @@ perform_thermal_correction .. py:method:: perform_thermal_correction() - Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. + + Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + + Use this method when generating the same signal for an extended period of time in a temperature-fluctuating environment. The NI-RFSG device must be in the Generation state before calling this method. + + **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Thermal Management `_ + + `Impairment Calibration `_ @@ -1668,7 +2072,11 @@ query_arb_waveform_capabilities .. py:method:: query_arb_waveform_capabilities() - Queries and returns the waveform capabilities of the NI-RFSG device. These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. + Queries and returns the waveform capabilities of the NI-RFSG device. + + These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -1720,6 +2128,23 @@ read_and_download_waveform_from_file_tdms Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators. + This method reads the following information from the TDMS file and writes it into the NI-RFSG session: + + - Sample Rate + - PAPR + - Runtime Scaling + - RF Blanking Marker Locations + - RF Blanking Enabled + - Burst Start Locations + - Burst Stop Locations + - RF Blanking Marker Source + - Signal Bandwidth + - Waveform Size + + If RF blanking marker locations are present in the file but burst locations are not present, burst locations are calculated from RF blanking marker locations and stored in the NI-RFSG session. + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + @@ -1729,6 +2154,10 @@ read_and_download_waveform_from_file_tdms Specifies the name used to store the waveform. This string is case-insensitive. + Example: + + "waveform::waveform0" + @@ -1759,7 +2188,15 @@ reset .. py:method:: reset() - Resets all properties to their default values and moves the NI-RFSG device to the Configuration state. This method aborts the generation, deletes all de-embedding tables, clears all routes, and resets session properties to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route. + Resets all properties to their default values and moves the NI-RFSG device to the Configuration state. + + This method aborts the generation, deletes all de-embedding tables, clears all routes, and resets session properties to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route. + + Generally, calling this method instead of the :py:meth:`nirfsg.Session.reset_device` method is acceptable. The :py:meth:`nirfsg.Session.reset` method executes faster than the :py:meth:`nirfsg.Session.reset_device` method. + + To avoid resetting routes on the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 that are in use by NI-RFSA sessions, NI recommends using the :py:meth:`nirfsg.Session.ResetWithOptions` method, with **stepsToOmit** set to :py:data:`~nirfsg.ResetWithOptionsStepsToOmit.ROUTES` . + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -1776,6 +2213,8 @@ reset_attribute Resets the property to its default value. + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + @@ -1807,7 +2246,24 @@ reset_device .. py:method:: reset_device() - Performs a hard reset on the device. + Performs a hard reset on the device which consists of the following actions: + + - Signal generation is stopped. + - All routes are released. + - External bidirectional terminals are tristated. + - FPGAs are reset. + - Hardware is configured to its default state. + - All session properties are reset to their default states. + + During a device reset, routes of signals between this and other devices are released, regardless of which device created the route. + + - PXI-5610, PXI-5670/5671, PXIe-5672-- After calling this method, the device requires 25 seconds before returning to full functionality. NI-RFSG enforces this condition by adding a wait, if needed, the next time you try to access the device. + + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Thermal Shutdown `_ @@ -1824,6 +2280,8 @@ reset_with_defaults Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store. + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E + @@ -1837,6 +2295,8 @@ save_configurations_to_file Saves the configurations of the session to the specified file. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + @@ -1868,7 +2328,15 @@ select_arb_waveform .. py:method:: select_arb_waveform(name) - Specifies the waveform that is generated upon a call to the :py:meth:`nirfsg.Session._initiate` method when the **generationMode** parameter of the :py:meth:`nirfsg.Session.configure_generation_mode` method is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM`. You must specify a waveform using the :py:attr:`nirfsg.Session.NAME` parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + Specifies the waveform that is generated upon a call to the :py:meth:`nirfsg.Session._initiate` method when the **generationMode** parameter of the :py:meth:`nirfsg.Session.configure_generation_mode` method is set to :py:data:`~nirfsg.GenerationMode.ARB_WAVEFORM`. + + You must specify a waveform using the :py:attr:`nirfsg.Session.NAME` parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ @@ -1893,7 +2361,13 @@ self_cal .. py:method:: self_cal() - Performs an internal self-calibration on the device and associated modules that support self-calibration. If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module. + Performs an internal self-calibration on the device and associated modules that support self-calibration. + + If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module. + + The PXIe-5841 maintains separate self-calibration data for both the PXIe-5841 standalone and when associated with the PXIe-5655. Use this method once for each intended configuration. + + **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -1910,16 +2384,32 @@ self_calibrate_range Self-calibrates all configurations within the specified frequency and peak power level limits. + Self-calibration range data is valid until you restart the system or call the :py:meth:`nirfsg.Session.clear_self_calibrate_range` method. + + NI recommends that no external signals are present on the RF In or IQ In ports during the calibration. + + For best results, NI recommends that you perform self-calibration without omitting any steps. However, if certain aspects of performance are less important for your application, you can omit certain steps for faster calibration. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + - .. note:: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. + .. note:: - This method does not update self-calibration date and temperature. + + - If there is an existing NI-RFSA session open for the same PXIe-5644/5645/5646, it may remain open but cannot be used while this method runs. + + - If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. :param steps_to_omit: - Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** : + Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. + + **Default Value**: :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.OMIT_NONE` + + **Defined Values:** +------------------------------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ | Name | Value | Description | @@ -1985,7 +2475,17 @@ self_test .. py:method:: self_test(self_test_message) - Performs a self-test on the NI-RFSG device and returns the test results. This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. + Performs a self-test on the NI-RFSG device and returns the test results. + + This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. + + This method does not affect external I/O connections or connections between devices. Complete functional testing and calibration are not performed by this method. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Device Warm-Up `_ @@ -1996,6 +2496,8 @@ self_test Returns the self-test response string from the NI-RFSG device. For an explanation of the string contents, refer to the **status** parameter of this method. + You must pass a ViChar array with at least 256 bytes. + @@ -2007,7 +2509,13 @@ self_test This parameter contains the value returned from the NI-RFSG device self test. - + +----------------+------------------+ + | Self-Test Code | Description | + +================+==================+ + | 0 | Self test passed | + +----------------+------------------+ + | 1 | Self test failed | + +----------------+------------------+ @@ -2018,7 +2526,15 @@ send_software_edge_trigger .. py:method:: send_software_edge_trigger(trigger, trigger_identifier) - Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger. + Forces a trigger to occur. + + The specified trigger generates regardless of whether the trigger has been configured as a software trigger. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ @@ -2027,7 +2543,11 @@ send_software_edge_trigger :param trigger: - Specifies the trigger to send. **Defined Values** : + Specifies the trigger to send. + + **Default Value:** :py:data:`~nirfsg.SoftwareTriggerType.START` + + **Defined Values:** +-----------------------------------------------+---------+-------------------------------+ | Name | Value | Description | @@ -2044,7 +2564,11 @@ send_software_edge_trigger :param trigger_identifier: - Specifies the Script Trigger to configure. This parameter is valid only when you set the :py:attr:`nirfsg.Session.TRIGGER` parameter to :py:data:`~nirfsg.NIRFSG_VAL_START_TRIGGER`. Otherwise, set the :py:attr:`nirfsg.Session.TRIGGER_IDENTIFIER` parameter to '' (empty string). **Defined Values** : + Specifies the Script Trigger to configure. This parameter is valid only when you set the :py:attr:`nirfsg.Session.TRIGGER` parameter to :py:data:`~nirfsg.NIRFSG_VAL_START_TRIGGER`. Otherwise, set the **:py:attr:`nirfsg.Session.TRIGGER_IDENTIFIER`** parameter to "" (empty string). + + **Default Value:** "" (empty string) + + **Defined Values:** +-----------------------------------------------+----------------+-----------------------------+ | Name | Value | Description | @@ -2072,20 +2596,22 @@ set_arb_waveform_next_write_position .. py:method:: set_arb_waveform_next_write_position(waveform_name, relative_to, offset) - Configures the start position to use for writing a waveform before calling the :py:meth:`nirfsg.Session.WriteArbWaveform` method. This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the :py:meth:`nirfsg.Session.allocate_arb_waveform` method or the :py:meth:`nirfsg.Session.WriteArbWaveform` method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. + Configures the start position to use for writing a waveform before calling the :py:meth:`nirfsg.Session.WriteArbWaveform` method. + + This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the :py:meth:`nirfsg.Session.allocate_arb_waveform` method or the :py:meth:`nirfsg.Session.WriteArbWaveform` method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 .. note:: If you use this method to write the waveform that is currently generating, an undefined output may result. - .. note:: One or more of the referenced methods are not in the Python API for this driver. - :param waveform_name: - Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ + Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_. @@ -2094,7 +2620,9 @@ set_arb_waveform_next_write_position :param relative_to: - Specifies the reference position in the waveform. The position and :py:attr:`nirfsg.Session.OFFSET` together determine where to start loading data into the waveform. **Defined Values** : + Specifies the reference position in the waveform. The position and :py:attr:`nirfsg.Session.OFFSET` together determine where to start loading data into the waveform. + + **Defined Values:** +-------------------------------------------------+---------------+------------------------------------------------------------------+ | Name | Value | Description | @@ -2136,7 +2664,13 @@ wait_until_settled .. py:method:: wait_until_settled(max_time_milliseconds) - Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. Call this method after making a dynamic change to wait for the output signal to settle. + Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. + + Call this method after making a dynamic change to wait for the output signal to settle. + + You can also call this method after calling the :py:meth:`nirfsg.Session.commit` method to wait for changes to settle. The :py:meth:`nirfsg.Session.wait_until_settled` method is not required after calling the :py:meth:`nirfsg.Session._initiate` method because the :py:meth:`nirfsg.Session._initiate` automatically waits for the output to settle. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2147,6 +2681,8 @@ wait_until_settled Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. + **Default Value**: 10000 + @@ -2159,7 +2695,21 @@ write_p2_p_endpoint_i16 .. py:method:: write_p2_p_endpoint_i16(stream_endpoint, number_of_samples, endpoint_data) - Writes an array of 16-bit integer data to the peer-to-peer endpoint. Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. + Writes an array of 16-bit integer data to the peer-to-peer endpoint. + + Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. + + **Supported Devices**: PXIe-5673E + + **Related Topics** + + `Peer-to-Peer Data Streaming `_--Refer to this topic for more information about configuring a stream. + + `Configuring Flow Control `_ + + `Starting Peer-to-Peer Generation `_ + + `Reconfiguring a Stream `_ @@ -2200,7 +2750,17 @@ write_script .. py:method:: write_script(script) - Writes a script to the device to control waveform generation in Script mode. First, configure your device for Script mode by calling the :py:meth:`nirfsg.Session.configure_generation_mode` method. The NI-RFSG device must be in the Configuration state before calling the :py:meth:`nirfsg.Session.write_script` method. + Writes a script to the device to control waveform generation in Script mode. + + First, configure your device for Script mode by calling the :py:meth:`nirfsg.Session.configure_generation_mode` method. The NI-RFSG device must be in the Configuration state before calling the :py:meth:`nirfsg.Session.write_script` method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts. + + `Common Scripting Use Cases `_ diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index d111f54de5..a0d1be5d2f 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -4,7 +4,7 @@ 'Abort': { 'codegen_method': 'public', 'documentation': { - 'description': 'Stops signal generation.' + 'description': ' Stops signal generation.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Programming State Model `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -20,7 +20,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -34,7 +34,7 @@ 'AllocateArbWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': 'Allocates onboard memory space for the arbitrary waveform. Use this function to specify the total size of a waveform before writing the data. Use this function only if you are calling the niRFSG_WriteArbWaveform function multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': ' Allocates onboard memory space for the arbitrary waveform. \n \n Use this function to specify the total size of a waveform before writing the data. Use this function only if you are calling the nirfsg_WriteArbWaveform function multiple times to write a large waveform in smaller blocks.\n\n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming Waveform Data `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -50,7 +50,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -84,7 +84,7 @@ 'ChangeExternalCalibrationPassword': { 'codegen_method': 'public', 'documentation': { - 'description': 'Changes the external calibration password of the device.' + 'description': ' Changes the external calibration password of the device.\n\n **Supported Devices:** PXIe-5611, PXIe-5653/5654, PXIe-5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -100,7 +100,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -134,7 +134,7 @@ 'CheckAttributeViBoolean': { 'codegen_method': 'public', 'documentation': { - 'description': 'Checks the validity of a value you specify for a ViBoolean attribute.' + 'description': '\n Checks the validity of a value you specify for a ViBoolean attribute.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -150,7 +150,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -160,7 +160,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -180,7 +180,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + 'description': ' Pass the value that you want to verify as a valid value for the attribute.\n ', + 'note': 'Some of the values might not be valid depending on the current settings of the instrument session.' }, 'name': 'value', 'type': 'ViBoolean', @@ -194,7 +195,7 @@ 'CheckAttributeViInt32': { 'codegen_method': 'public', 'documentation': { - 'description': 'Checks the validity of a value you specify for a ViInt32 attribute.' + 'description': ' Checks the validity of a value you specify for a ViInt32 attribute.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -210,7 +211,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -220,7 +221,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -240,7 +241,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + 'description': ' Pass the value that you want to verify as a valid value for the attribute.\n ', + 'note': 'Some of the values might not be valid depending on the current settings of the instrument session.' }, 'grpc_enum': 'NiRFSGInt32AttributeValues', 'name': 'value', @@ -255,7 +257,7 @@ 'CheckAttributeViInt64': { 'codegen_method': 'public', 'documentation': { - 'description': 'Checks the validity of a value you specify for a ViInt64 attribute.' + 'description': ' \n Checks the validity of a value you specify for a ViInt64 attribute.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -271,7 +273,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -281,7 +283,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -301,7 +303,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + 'description': ' Pass the value that you want to verify as a valid value for the attribute.\n ', + 'note': 'Some of the values might not be valid depending on the current settings of the instrument session.' }, 'grpc_enum': 'NiRFSGInt64AttributeValues', 'name': 'value', @@ -316,7 +319,7 @@ 'CheckAttributeViReal64': { 'codegen_method': 'public', 'documentation': { - 'description': 'Checks the validity of a value you specify for a ViReal64 attribute.' + 'description': ' \n Checks the validity of a value you specify for a ViReal64 attribute.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -332,7 +335,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -342,7 +345,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -362,7 +365,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + 'description': ' Pass the value that you want to verify as a valid value for the attribute.\n ', + 'note': 'Some of the values might not be valid depending on the current settings of the instrument session.' }, 'grpc_enum': 'NiRFSGReal64AttributeValues', 'name': 'value', @@ -377,7 +381,7 @@ 'CheckAttributeViSession': { 'codegen_method': 'public', 'documentation': { - 'description': 'Checks the validity of a value you specify for a ViSession attribute.' + 'description': ' \n Checks the validity of a value you specify for a ViSession attribute.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -393,7 +397,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -403,7 +407,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -423,7 +427,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value that you want to verify as a valid value for the attribute.' + 'description': ' Pass the value that you want to verify as a valid value for the attribute.\n ', + 'note': 'Some of the values might not be valid depending on the current settings of the instrument session.' }, 'name': 'value', 'type': 'ViSession', @@ -437,7 +442,7 @@ 'CheckAttributeViString': { 'codegen_method': 'public', 'documentation': { - 'description': 'Checks the validity of a value you specify for a ViString attribute.' + 'description': '\n Checks the validity of a value you specify for a ViString attribute.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -453,7 +458,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -463,7 +468,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -483,7 +488,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value that you want to verify as a valid value for the attribute. The value must be a NULL-terminated string.' + 'description': ' Pass the value that you want to verify as a valid value for the attribute. The value must be a NULL-terminated string.\n ', + 'note': 'Some of the values might not be valid depending on the current settings of the instrument session.' }, 'grpc_mapped_enum': 'NiRFSGStringAttributeValuesMapped', 'name': 'value', @@ -498,7 +504,7 @@ 'CheckGenerationStatus': { 'codegen_method': 'public', 'documentation': { - 'description': 'Checks the status of the generation. Call this function to check for any errors that might occur during the signal generation or to check whether the device has finished generating.' + 'description': '\n Checks the status of the generation. \n \n Call this function to check for any errors that might occur during the signal generation or to check whether the device has finished generating.\n\n **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `Stopping Pear-to-Peer Generation `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -514,7 +520,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -524,7 +530,21 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns information about the completion of signal generation.' + 'description': ' Returns information about the completion of signal generation.\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'Signal generation is complete.' + ], + [ + 'VI_FALSE', + 'Signal generation is occurring.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] }, 'name': 'isDone', 'type': 'ViBoolean', @@ -538,7 +558,7 @@ 'CheckIfScriptExists': { 'codegen_method': 'public', 'documentation': { - 'description': 'Returns whether the script that you specify as NIRFSG_ATTR_SCRIPT_NAME exists.' + 'description': ' \n Returns whether the script that you specify as **NIRFSG_ATTR_SCRIPT_NAME** exists.\n\n **Supported Devices**: PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -554,7 +574,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -574,7 +594,21 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns VI_TRUE if the script exists.' + 'description': ' Returns VI_TRUE if the script exists.\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'The script exists.' + ], + [ + 'VI_FALSE', + 'The script does not exist.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] }, 'name': 'scriptExists', 'type': 'ViBoolean', @@ -588,7 +622,7 @@ 'CheckIfWaveformExists': { 'codegen_method': 'public', 'documentation': { - 'description': 'Returns whether the waveform that you specify as NIRFSG_ATTR_WAVEFORM_NAME exists.' + 'description': ' \n\n Returns whether the waveform that you specify as **NIRFSG_ATTR_WAVEFORM_NAME** exists.\n\n **Supported Devices**: PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -604,7 +638,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -624,7 +658,21 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns VI_TRUE if the waveform exists.' + 'description': ' Returns VI_TRUE if the waveform exists.\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE', + 'The waveform exists.' + ], + [ + 'VI_FALSE', + 'The waveform does not exist.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] }, 'name': 'waveformExists', 'type': 'ViBoolean', @@ -638,7 +686,7 @@ 'ClearAllArbWaveforms': { 'codegen_method': 'public', 'documentation': { - 'description': 'Deletes all currently defined waveforms and scripts. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': ' \n Deletes all currently defined waveforms and scripts. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -654,7 +702,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -668,7 +716,7 @@ 'ClearArbWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': 'Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': ' \n Deletes a specified waveform from the pool of currently defined waveforms. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -684,7 +732,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -708,8 +756,8 @@ 'ClearError': { 'codegen_method': 'public', 'documentation': { - 'description': 'Clears the error information associated with the session. If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function clears the error information for the current execution thread.', - 'note': 'The niRFSG_GetError function clears the error information after it is retrieved. A call to the niRFSG_ClearError function is necessary only when you do not use a call to the niRFSG_GetError function to retrieve error information.' + 'description': ' \n Clears the error information associated with the session. \n \n If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function clears the error information for the current execution thread.\n\n The IVI Engine also maintains this error information separately for each thread. This feature of the IVI Engine is useful if you do not have a session handle to pass to the nirfsg_ClearError function or the nirfsg_GetError function, which occurs when a call to the nirfsg_Init function or the nirfsg_InitWithOptions function fails.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ', + 'note': 'The nirfsg_GetError function clears the error information after it is retrieved. A call to the nirfsg_ClearError function is necessary only when you do not use a call to the nirfsg_GetError function to retrieve error information.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -725,7 +773,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -739,7 +787,7 @@ 'ClearSelfCalibrateRange': { 'codegen_method': 'public', 'documentation': { - 'description': 'Clears the data obtained from the niRFSG_SelfCalibrateRange function.' + 'description': ' \n Clears the data obtained from the nirfsg_SelfCalibrateRange function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -755,7 +803,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -769,7 +817,7 @@ 'Commit': { 'codegen_method': 'public', 'documentation': { - 'description': 'Programs the device with the correct settings. Calling this function moves the NI-RFSG device from the Configuration state to the Committed state. After this function executes, a change to any attribute reverts the NI-RFSG device to the Configuration state.' + 'description': ' \n\n Programs the device with the correct settings. \n \n Calling this function moves the NI-RFSG device from the Configuration state to the Committed state. After this function executes, a change to any attribute reverts the NI-RFSG device to the Configuration state.\n\n **Supported devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Programming State Model `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -785,7 +833,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -799,7 +847,7 @@ 'ConfigureDeembeddingTableInterpolationLinear': { 'codegen_method': 'public', 'documentation': { - 'description': 'Selects the linear interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.' + 'description': ' Selects the linear interpolation method. \n \n If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -815,7 +863,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -825,7 +873,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + 'description': 'Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string).' }, 'name': 'port', 'type': 'ViConstString', @@ -882,7 +930,7 @@ 'ConfigureDeembeddingTableInterpolationNearest': { 'codegen_method': 'public', 'documentation': { - 'description': 'Selects the nearest interpolation method. NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding.' + 'description': ' Selects the nearest interpolation method. \n \n NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -898,7 +946,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -908,7 +956,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + 'description': 'Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string).' }, 'name': 'port', 'type': 'ViConstString', @@ -932,7 +980,7 @@ 'ConfigureDeembeddingTableInterpolationSpline': { 'codegen_method': 'public', 'documentation': { - 'description': 'Selects the spline interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.' + 'description': ' Selects the spline interpolation method. \n \n If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -948,7 +996,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -958,7 +1006,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + 'description': 'Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string).' }, 'name': 'port', 'type': 'ViConstString', @@ -982,7 +1030,7 @@ 'ConfigureDigitalEdgeScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the specified Script Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this function.' + 'description': ' Purpose\n\n Configures the specified Script Trigger for digital edge triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Edge Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -998,7 +1046,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1042,7 +1090,7 @@ 'ConfigureDigitalEdgeStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the Start Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this function.', + 'description': ' \n\n Configures the Start Trigger for digital edge triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Digital Edge Trigger `_\n ', 'note': 'For the PXIe-5654/5654 with PXIe-5696, the Start Trigger is valid only with a timer-based list when RF list mode is enabled.' }, 'included_in_proto': True, @@ -1059,7 +1107,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1093,7 +1141,7 @@ 'ConfigureDigitalLevelScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures a specified Script Trigger for digital level triggering. The NI-RFSG device must be in the Configuration state before calling this function.' + 'description': ' \n\n Configures a specified Script Trigger for digital level triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Level Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1109,7 +1157,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1153,7 +1201,7 @@ 'ConfigureDigitalModulationUserDefinedWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': 'Specifies the message signal used for digital modulation when the NIRFSG_ATTR_DIGITAL_MODULATION_WAVEFORM_TYPE attribute is set to NIRFSG_VAL_USER_DEFINED.' + 'description': ' \n Specifies the message signal used for digital modulation when the NIRFSG_ATTR_DIGITAL_MODULATION_WAVEFORM_TYPE attribute is set to NIRFSG_VAL_USER_DEFINED.\n\n **Supported Devices**: PXI/PXIe-5650/5651/5652\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1169,7 +1217,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1207,7 +1255,7 @@ 'ConfigureGenerationMode': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': '\n Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n\n `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1223,7 +1271,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1233,7 +1281,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the mode used by NI-RFSG for generating an RF output signal. **Defined Values** :', + 'description': 'Specifies the mode used by NI-RFSG for generating an RF output signal.\n\n **Default Value**: NIRFSG_VAL_CW\n\n **Defined Values** :\n ', + 'note': '- For the PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, only NIRFSG_VAL_CW is supported.\n\n - If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported.', 'table_body': [ [ 'NIRFSG_VAL_CW', @@ -1270,7 +1319,7 @@ 'ConfigureOutputEnabled': { 'codegen_method': 'public', 'documentation': { - 'description': ' Enables or disables signal output. Setting NIRFSG_ATTR_OUTPUT_ENABLED to VI_FALSE while in the Generation state attenuates the generated signal so that no signal is output.' + 'description': ' \n\n Enables or disables signal output. \n \n Setting **NIRFSG_ATTR_OUTPUT_ENABLED** to VI_FALSE while in the Generation state attenuates the generated signal so that no signal is output.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Output Enabled `_\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `RF List Mode `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1286,7 +1335,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1310,7 +1359,7 @@ 'ConfigureP2PEndpointFullnessStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the Start Trigger to detect peer-to-peer endpoint fullness. Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the NIRFSG_ATTR_P2P_ENDPOINT_FULLNESS_LEVEL parameter. The NI-RFSG device must be in the Configuration state before calling this function.', + 'description': ' \n Configures the Start Trigger to detect peer-to-peer endpoint fullness. \n \n Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the **NIRFSG_ATTR_P2P_ENDPOINT_FULLNESS_LEVEL** parameter. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Start Trigger `_\n ', 'note': 'Due to an additional internal FIFO in the RF signal generator, the writer peer actually writes 2,304 bytes more than the quantity of data specified by this function to satisfy the trigger level.' }, 'included_in_proto': True, @@ -1327,7 +1376,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1351,7 +1400,7 @@ 'ConfigurePowerLevelType': { 'codegen_method': 'public', 'documentation': { - 'description': 'Specifies the way the driver interprets the NIRFSG_ATTR_POWER_LEVEL attribute. In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute.' + 'description': ' \n\n Specifies the way the driver interprets the NIRFSG_ATTR_POWER_LEVEL attribute. \n \n In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Spurious Performance `_\n\n `Optimizing for Low Power Generation `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1367,7 +1416,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1377,7 +1426,21 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the way the driver interprets the value of the NIRFSG_ATTR_POWER_LEVEL attribute. NI-RFSG sets the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to this value.' + 'description': ' Specifies the way the driver interprets the value of the NIRFSG_ATTR_POWER_LEVEL attribute. NI-RFSG sets the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to this value.\n ', + 'table_body': [ + [ + '**Average Power** (default)', + 'Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820.' + ], + [ + '**Peak Power**', + 'Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] }, 'name': 'powerLevelType', 'type': 'ViInt32', @@ -1391,7 +1454,7 @@ 'ConfigurePxiChassisClk10': { 'codegen_method': 'public', 'documentation': { - 'description': 'Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': ' \n\n Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. \n \n This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXI-5610, PXI-5670/5671\n\n **Related Topics**\n\n `Timing Configurations `_\n\n `System Reference Clock `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1407,7 +1470,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1431,7 +1494,7 @@ 'ConfigureRF': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the frequency and power level of the RF output signal. The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this function. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this function.' + 'description': ' \n Configures the frequency and power level of the RF output signal. \n \n The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this function. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1447,7 +1510,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1457,7 +1520,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal.' + 'description': ' Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal.\n\n **Units**: hertz (Hz)\n ' }, 'name': 'frequency', 'type': 'ViReal64', @@ -1467,7 +1530,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies either the average power level or peak power level of the generated RF signal, depending on the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute.' + 'description': ' Specifies either the average power level or peak power level of the generated RF signal, depending on the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute.\n\n **Units**: dBm\n ' }, 'name': 'powerLevel', 'type': 'ViReal64', @@ -1481,7 +1544,7 @@ 'ConfigureRefClock': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the NI-RFSG device Reference Clock. The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this function.' + 'description': ' \n\n Configures the NI-RFSG device Reference Clock. \n \n The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `PXIe-5672 Timing Configurations `_\n\n `PXIe-5673 Timing Configurations `_\n\n `PXIe-5673E Timing Configurations `_\n\n `PXIe-5830 Timing Configurations `_\n\n `PXIe-5831 Timing Configurations `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1497,7 +1560,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1507,7 +1570,44 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the source of Reference Clock signal.' + 'description': ' Specifies the source of Reference Clock signal.\n ', + 'table_body': [ + [ + '**NIRFSG_VAL_ONBOARD_CLOCK_STR (default)**', + 'OnboardClock', + ' Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument.' + ], + [ + '**NIRFSG_VAL_REF_IN_STR**', + 'RefIn', + 'Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument.' + ], + [ + '**NIRFSG_VAL_PXI_CLK_STR**', + 'PXI_CLK', + 'Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source.' + ], + [ + '**NIRFSG_VAL_CLK_IN_STR**', + 'ClkIn', + 'Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842.' + ], + [ + '**NIRFSG_VAL_REF_IN_2_STR**', + 'RefIn2', + '-' + ], + [ + '**NIRFSG_VAL_PXI_CLK_MASTER_STR**', + 'PXI_ClkMaster', + 'This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' + ] + ], + 'table_header': [ + 'Reference Clock Constant', + 'Value', + 'Description' + ] }, 'name': 'refClockSource', 'type': 'ViConstString', @@ -1517,7 +1617,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is NIRFSG_VAL_AUTO, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the NIRFSG_ATTR_REF_CLOCK_SOURCE parameter is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR or NIRFSG_VAL_REF_IN_2_STR. Refer to the NIRFSG_ATTR_REF_CLOCK_RATE attribute for possible values.' + 'description': 'Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is NIRFSG_VAL_AUTO, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the **NIRFSG_ATTR_REF_CLOCK_SOURCE** parameter is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR or NIRFSG_VAL_REF_IN_2_STR. Refer to the NIRFSG_ATTR_REF_CLOCK_RATE attribute for possible values.' }, 'name': 'refClockRate', 'type': 'ViReal64', @@ -1531,7 +1631,8 @@ 'ConfigureSignalBandwidth': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the signal bandwidth of the arbitrary waveform. The NI-RFSG device must be in the Configuration state before you call this function. Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband.' + 'description': ' Configures the signal bandwidth of the arbitrary waveform.\n\n The NI-RFSG device must be in the Configuration state before you call this function.\n\n NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0Hz. In such cases, the signal bandwidth is simply the baseband signal minimum frequency subtracted from its maximum frequency, or *f* max minus *f* min. NI-RFSG uses this value to optimally configure the center frequency of the upconverter to help minimize phase noise. The generated signal is not filtered to achieve the set bandwidth. However, specifying a bandwidth smaller than the actual bandwidth of the signal could potentially result in spectral distortion.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'note': 'Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1547,7 +1648,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1571,7 +1672,7 @@ 'ConfigureSoftwareScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the Script Trigger for software triggering. Refer to the niRFSG_SendSoftwareEdgeTrigger function for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this function.' + 'description': ' \n Configures the Script Trigger for software triggering. \n \n Refer to the nirfsg_SendSoftwareEdgeTrigger function for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Trigger Types `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1587,7 +1688,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1611,7 +1712,7 @@ 'ConfigureSoftwareStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the Start Trigger for software triggering. Refer to the niRFSG_SendSoftwareEdgeTrigger function for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this function.' + 'description': ' \n\n Configures the Start Trigger for software triggering. \n \n Refer to the nirfsg_SendSoftwareEdgeTrigger function for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Trigger Types `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1627,7 +1728,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1641,7 +1742,7 @@ 'CreateDeembeddingSparameterTableS2PFile': { 'codegen_method': 'public', 'documentation': { - 'description': 'Creates an S-parameter de-embedding table for the port based on the specified S2P file.' + 'description': ' Creates an S-parameter de-embedding table for the port based on the specified S2P file.\n\n If you only create one table for a port, NI-RFSG automatically selects that table to de-embed the measurement.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `De-embedding Overview `_\n\n `S-parameters `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1657,7 +1758,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1729,7 +1830,7 @@ 'DeleteAllDeembeddingTables': { 'codegen_method': 'public', 'documentation': { - 'description': 'Deletes all configured de-embedding tables for the session.' + 'description': ' Deletes all configured de-embedding tables for the session.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1745,7 +1846,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1759,7 +1860,7 @@ 'DeleteDeembeddingTable': { 'codegen_method': 'public', 'documentation': { - 'description': 'Deletes the selected de-embedding table for a given port.' + 'description': ' Deletes the selected de-embedding table for a given port.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1775,7 +1876,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1785,7 +1886,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string)." + 'description': 'Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string).' }, 'name': 'port', 'type': 'ViConstString', @@ -1809,7 +1910,7 @@ 'Disable': { 'codegen_method': 'public', 'documentation': { - 'description': ' Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected.' + 'description': ' \n Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1825,7 +1926,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1839,7 +1940,7 @@ 'DisableScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' Configures the device not to wait for the specified Script Trigger. Call this function only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': ' \n Configures the device not to wait for the specified Script Trigger. \n \n Call this function only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1855,7 +1956,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1879,7 +1980,7 @@ 'DisableStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' Configures the device not to wait for a Start Trigger. This function is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this function.' + 'description': ' \n\n Configures the device not to wait for a Start Trigger. \n \n This function is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1895,7 +1996,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -1909,7 +2010,7 @@ 'ExportSignal': { 'codegen_method': 'public', 'documentation': { - 'description': 'Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': ' \n\n Routes signals (triggers, clocks, and events) to a specified output terminal. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n You can clear a previously routed signal by exporting the signal to "" (empty string).\n\n **Supported Devices**:PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n\n `Events `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1925,7 +2026,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2097,7 +2198,7 @@ 'GetAttributeViBoolean': { 'codegen_method': 'private', 'documentation': { - 'description': 'Queries the value of a ViBoolean attribute.Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' + 'description': ' \n Queries the value of a ViBoolean attribute.\n\n Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2113,7 +2214,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2123,7 +2224,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -2157,7 +2258,7 @@ 'GetAttributeViInt32': { 'codegen_method': 'private', 'documentation': { - 'description': 'Queries the value of a ViInt32 attribute. Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' + 'description': ' \n\n Queries the value of a ViInt32 attribute.\n\n Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2173,7 +2274,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2183,7 +2284,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -2217,7 +2318,7 @@ 'GetAttributeViInt64': { 'codegen_method': 'private', 'documentation': { - 'description': 'Queries the value of a ViInt64 attribute.' + 'description': ' \n Queries the value of a ViInt64 attribute.\n\n You can use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2233,7 +2334,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2243,7 +2344,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -2277,7 +2378,7 @@ 'GetAttributeViReal64': { 'codegen_method': 'private', 'documentation': { - 'description': 'Queries the value of a ViReal64 attribute.' + 'description': ' \n \n Queries the value of a ViReal64 attribute.\n\n Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2293,7 +2394,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2303,7 +2404,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -2337,7 +2438,7 @@ 'GetAttributeViSession': { 'codegen_method': 'private', 'documentation': { - 'description': 'Queries the value of a ViSession attribute.' + 'description': ' \n Queries the value of a ViSession attribute.\n\n Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2353,7 +2454,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2363,7 +2464,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -2397,7 +2498,7 @@ 'GetAttributeViString': { 'codegen_method': 'private', 'documentation': { - 'description': 'Queries the value of a ViString attribute.Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes.' + 'description': ' \n \n\n Queries the value of a ViString attribute.\n\n Use this low-level function to get the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid.\n\n You must provide a ViString (ViChar array) to serve as a buffer for the value. Pass the number of bytes in the buffer as the Buffer Size parameter. If the current value of the attribute, including the terminating NULL byte, is larger than the size you indicate in the buffer size parameter, the function copies buffer size-1 bytes into the buffer, places an ASCII NULL byte at the end of the buffer, and returns the buffer size you must pass to get the entire value. For example, if the value is "123456" and the buffer size is 4, the function places "123" into the buffer and returns 7.\n\n To call this function to get only the required buffer size, pass 0 for the buffer size and VI_NULL for the attribute value buffer.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2413,7 +2514,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2423,7 +2524,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -2443,7 +2544,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter.' + 'description': ' Pass the number of bytes in the ViChar buffer you specify for the **waveformNames** parameter.\n\n If you pass 0, you can pass VI_NULL for the **waveformNames** parameter.\n ' }, 'name': 'bufSize', 'type': 'ViInt32', @@ -2453,7 +2554,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'The buffer in which the function returns the current value of the attribute. The buffer must be of type ViChar and have at least as many bytes as indicated in the **bufferSize** parameter.' + 'description': ' The buffer in which the function returns the current value of the attribute. The buffer must be of type ViChar and have at least as many bytes as indicated in the **bufferSize** parameter.\n\n If you specify 0 for the **bufferSize** parameter, you can pass VI_NULL for this parameter.\n ' }, 'name': 'value', 'size': { @@ -2471,7 +2572,7 @@ 'GetError': { 'codegen_method': 'public', 'documentation': { - 'description': 'Retrieves and then clears the IVI error information for the session or the current execution thread.', + 'description': ' \n Retrieves and then clears the IVI error information for the session or the current execution thread.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ', 'note': 'If the **bufferSize** parameter is 0, this function does not clear the error information. By passing 0 to the **bufferSize** parameter, you can determine the buffer size required to obtain the entire NIRFSG_ATTR_ERROR_DESCRIPTION string. You can then call this function again with a sufficiently large buffer. If you specify a valid IVI session for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the session. If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the current execution thread. If the NIRFSG_ATTR_VI parameter is an invalid session, this function does nothing and returns an error. Normally, the error information describes the first error that occurred since the user last called this function or the niRFSG_ClearError function.' }, 'included_in_proto': True, @@ -2488,7 +2589,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2509,7 +2610,7 @@ 'default_value': '256', 'direction': 'in', 'documentation': { - 'description': 'Pass the number of bytes in the ViChar array you specify for the **description** parameter.' + 'description': ' Pass the number of bytes in the ViChar array you specify for the **description** parameter.\n\n If the NIRFSG_ATTR_ERROR_DESCRIPTION, including the terminating NULL byte, contains more bytes than you indicate in this parameter, the function copies **bufferSize** - 1 bytes into the buffer, places an ASCII NULL byte at the end of the buffer, and returns the buffer size you must pass to get the entire value. Forexample, if the value is 123456 and the buffer size is 4, the function places 123 into the buffer and returns 7. If you pass 0, you can pass VI_NULL for the **description** parameter.\n\n **Default Value**: None\n\n ' }, 'name': 'errorDescriptionBufferSize', 'type': 'ViInt32', @@ -2519,7 +2620,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns the NIRFSG_ATTR_ERROR_DESCRIPTION for the IVI session or execution thread.' + 'description': ' Returns the NIRFSG_ATTR_ERROR_DESCRIPTION for the IVI session or execution thread.\n\n If there is no description, the function returns an empty string. The buffer must contain at least as many elements as the value you specify with the **bufferSize** parameter. If the NIRFSG_ATTR_ERROR_DESCRIPTION, including the terminating NULL byte, contains more bytes than you indicate with the **bufferSize** parameter, the function copies **bufferSize** - 1 bytes into the buffer, places an ASCII NULL byte at the end of the buffer, and returns the buffer size you must pass to get the entire value. For example, if the value is 123456 and the buffer size is 4, the function places 123 into the buffer and returns 7. If you pass 0, you can pass VI_NULL for this parameter.\n\n ' }, 'name': 'errorDescription', 'size': { @@ -2537,7 +2638,7 @@ 'GetExternalCalibrationLastDateAndTime': { 'codegen_method': 'private', 'documentation': { - 'description': 'Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' + 'description': ' \n Returns the date and time of the last successful external calibration. \n \n The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this function returns\n\n 14 for the hours parameter and\n\n 30 for the minutes parameter.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2554,7 +2655,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2690,7 +2791,7 @@ 'GetMaxSettablePower': { 'codegen_method': 'public', 'documentation': { - 'description': 'Returns the maximum settable output power level for the current configuration.' + 'description': ' \n\n Returns the maximum settable output power level for the current configuration.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2706,7 +2807,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2730,7 +2831,7 @@ 'GetSelfCalibrationDateAndTime': { 'codegen_method': 'private', 'documentation': { - 'description': 'Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this function returns 14 for the hours parameter and 30 for the minutes parameter.' + 'description': '\n Returns the date and time of the last successful self-calibration. \n \n The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this function returns\n\n 14 for the hours parameter and\n\n 30 for the minutes parameter.\n\n **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2747,7 +2848,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2831,7 +2932,7 @@ 'GetSelfCalibrationTemperature': { 'codegen_method': 'public', 'documentation': { - 'description': 'Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration.' + 'description': ' \n Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration.\n\n **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2847,7 +2948,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2857,7 +2958,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. **Defined Values** :', + 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. \n **Default Value**: NIRFSG_VAL_PRIMARY_MODULE\n **Defined Values** :\n ', 'table_body': [ [ 'NIRFSG_VAL_PRIMARY_MODULE', @@ -2904,7 +3005,7 @@ 'GetStreamEndpointHandle': { 'codegen_method': 'public', 'documentation': { - 'description': 'Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint.' + 'description': ' \n\n Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint.\n\n **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Stream `_\n\n `Configuring Flow Control `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2920,7 +3021,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2954,7 +3055,7 @@ 'GetWaveformBurstStartLocations': { 'codegen_method': 'private', 'documentation': { - 'description': 'Returns the burst start locations of the waveform stored in the NI-RFSG session.' + 'description': ' \n Returns the burst start locations of the waveform stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2970,7 +3071,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -2980,7 +3081,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the waveform name and the marker name. Example: 'waveform::waveform0/marker0'" + 'description': 'Specifies the waveform name and the marker name. Example: "waveform::waveform0/marker0"' }, 'name': 'channelName', 'type': 'ViConstString', @@ -3000,7 +3101,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the **NIRFSG_ATTR_CHANNEL_NAME** parameter. This value is expressed in samples.' }, 'name': 'locations', 'type': 'ViReal64', @@ -3024,7 +3125,7 @@ 'GetWaveformBurstStopLocations': { 'codegen_method': 'private', 'documentation': { - 'description': 'Returns the burst stop locations of the waveform stored in the NI-RFSG session.' + 'description': ' \n\n Returns the burst stop locations of the waveform stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3040,7 +3141,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3050,7 +3151,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the waveform name and the marker name. Example: 'waveform::waveform0/marker0'" + 'description': 'Specifies the waveform name and the marker name. Example: "waveform::waveform0/marker0"' }, 'name': 'channelName', 'type': 'ViConstString', @@ -3070,7 +3171,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the **NIRFSG_ATTR_CHANNEL_NAME** parameter. This value is expressed in samples.' }, 'name': 'locations', 'type': 'ViReal64', @@ -3094,7 +3195,7 @@ 'GetWaveformMarkerEventLocations': { 'codegen_method': 'private', 'documentation': { - 'description': 'Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session.' + 'description': ' \n Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3110,7 +3211,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3120,7 +3221,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -3140,7 +3241,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns the marker locations stored in the NI-RFSG database for the channel you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + 'description': 'Returns the marker locations stored in the NI-RFSG database for the channel you specified in the **NIRFSG_ATTR_CHANNEL_NAME** parameter. This value is expressed in samples.' }, 'name': 'locations', 'type': 'ViReal64', @@ -3164,7 +3265,7 @@ 'InitWithOptions': { 'codegen_method': 'private', 'documentation': { - 'description': 'Opens a session to the device you specify as the NIRFSG_ATTR_RESOURCE_NAME and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG function calls. This function also configures the device through the NIRFSG_ATTR_OPTION_STRING input.', + 'description': '\n Opens a session to the device you specify as the **NIRFSG_ATTR_RESOURCE_NAME** and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG function calls. \n \n This function also configures the device through the **NIRFSG_ATTR_OPTION_STRING** input.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Simulating an NI RF Signal Generator `_\n ', 'note': 'For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0.' }, 'included_in_proto': True, @@ -3182,7 +3283,8 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the resource name of the device to initialize.' + 'description': ' Specifies the resource name of the device to initialize.\n\n For NI-DAQmx devices, the syntax is the device name specified in MAX. Typical default names for NI-DAQmx devices in MAX are Dev2 or PXISlot2. You can rename an NI-DAQmx device in MAX.\n\n You can also specify the name of an IVI logical name configured with the IVI Configuration utility. Refer to the *IVI* topic of the *Measurement & Automation Explorer Help* for more information.\n\n ', + 'note': 'NI-RFSG device names are not case-sensitive. However, all IVI names, such as logical names, are case-sensitive. If you use an IVI logical name, make sure the name is identical to the name shown in the IVI Configuration Utility.' }, 'name': 'resourceName', 'type': 'ViRsrc', @@ -3192,7 +3294,21 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies whether you want NI-RFSG to perform an ID query.' + 'description': ' Specifies whether you want NI-RFSG to perform an ID query.\n\n **Defined Values**:\n ', + 'table_body': [ + [ + 'VI_TRUE (1)', + 'Perform ID query.' + ], + [ + 'VI_FALSE (0)', + 'Do not perform ID query.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] }, 'name': 'idQuery', 'type': 'ViBoolean', @@ -3202,7 +3318,21 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies whether you want to reset the NI-RFSG device during the initialization procedure.' + 'description': ' Specifies whether you want to reset the NI-RFSG device during the initialization procedure.\n\n **Defined Values**:\n\n ', + 'table_body': [ + [ + 'VI_TRUE (1)', + 'Reset device.' + ], + [ + 'VI_FALSE (0)', + 'Do not reset device.' + ] + ], + 'table_header': [ + 'Value', + 'Description' + ] }, 'name': 'resetDevice', 'type': 'ViBoolean', @@ -3212,7 +3342,33 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the initial value of certain attributes for the session. The following table lists the attributes and the name you pass in this parameter to identify the attribute.' + 'description': ' Specifies the initial value of certain attributes for the session. The following table lists the attributes and the name you pass in this parameter to identify the attribute.\n\n The format of this string consists of the following relations:\n "AttributeName=Value"\n\n where\n *AttributeName* is the name of the attribute and *Value* is the value to which the attribute is set. To set multiple attributes, separate their assignments with a comma, as shown in the following option string:\n\n "RangeCheck=1,QueryInstrStatus=0,Cache=1,DriverSetup=AWG:pxi1slot4"\n\n The `DriverSetup string `_ is required in order to simulate a specific device.\n ', + 'table_body': [ + [ + 'RangeCheck', + 'NIRFSG_ATTR_RANGE_CHECK' + ], + [ + 'QueryInstrStatus', + 'NIRFSG_ATTR_QUERY_INSTRUMENT_STATUS' + ], + [ + 'Cache', + 'NIRFSG_ATTR_CACHE' + ], + [ + 'RecordCoercions', + 'NIRFSG_ATTR_RECORD_COERCIONS' + ], + [ + 'Simulate', + 'NIRFSG_ATTR_SIMULATE' + ] + ], + 'table_header': [ + 'Name', + 'Attribute Name' + ] }, 'name': 'optionString', 'type': 'ViConstString', @@ -3236,7 +3392,7 @@ 'Initiate': { 'codegen_method': 'private', 'documentation': { - 'description': 'Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this function, they are committed by this function. The operation returns when the RF output signal settles. To return to the Configuration state, call the niRFSG_Abort function.' + 'description': ' \n\n Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. \n \n If the settings have not been committed to the device before you call this function, they are committed by this function. The operation returns when the RF output signal settles. To return to the Configuration state, call the nirfsg_Abort function.\n\n **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3244,7 +3400,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3258,7 +3414,7 @@ 'LoadConfigurationsFromFile': { 'codegen_method': 'public', 'documentation': { - 'description': 'Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file.' + 'description': ' \n Loads the configurations from the specified file to the NI-RFSG driver session. \n \n The VI does an implicit reset before loading the configurations from the file.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3274,7 +3430,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3284,7 +3440,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -3308,7 +3464,7 @@ 'LockSession': { 'codegen_method': 'public', 'documentation': { - 'description': 'Obtains a multithread lock on the instrument session. Before doing so, this function waits until all other execution threads have released their locks on the instrument session.' + 'description': ' \n Obtains a multithread lock on the instrument session. \n \n Before doing so, this function waits until all other execution threads have released their locks on the instrument session.\n\n Other threads might have obtained a lock on this session in the following ways:\n\n - Your application already called the nirfsg_LockSession function.\n - A call to NI-RFSG locked the session.\n\n After the call to this function returns successfully, no other threads can access the instrument session until you call the nirfsg_UnlockSession function. Use the nirfsg_LockSession function and the nirfsg_UnlockSession function around a sequence of calls to NI-RFSG functions if you require that the NI-RFSG device retain its settings through the end of the sequence.\n\n You can safely make nested calls to the nirfsg_LockSession function within the same thread. To completely unlock the session, balance each call to the nirfsg_LockSession function with a call to the nirfsg_UnlockSession function. If, however, you use the **NIRFSG_ATTR_CALLER_HAS_LOCK** parameter in all calls to the nirfsg_LockSession function and the nirfsg_UnlockSession function within a function, the IVI Library locks the session only once within the function regardless of the number of calls you make to the nirfsg_LockSession function. Locking the session only once allows you to call nirfsg_UnlockSession just once at the end of the function.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3324,7 +3480,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3334,7 +3490,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'Keeps track of whether you obtain a lock and therefore need to unlock the session. Pass the address of a local ViBoolean variable. In the declaration of the local variable, initialize it to VI_FALSE. Pass the address of the same local variable to any other calls you make to the niRFSG_LockSession function or the niRFSG_UnlockSession function in the same function.' + 'description': ' Keeps track of whether you obtain a lock and therefore need to unlock the session. Pass the address of a local ViBoolean variable. In the declaration of the local variable, initialize it to VI_FALSE. Pass the address of the same local variable to any other calls you make to the nirfsg_LockSession function or the nirfsg_UnlockSession function in the same function.\n\n\n\n This parameter serves as a convenience. If you do not want to use this parameter, pass VI_NULL.\n\n The parameter is an input/output parameter. The nirfsg_LockSession function and the nirfsg_UnlockSession each inspect the current value and take the following actions:\n\n - If the value is VI_TRUE, the nirfsg_LockSession function does not lock the session again. If the value is VI_FALSE, the nirfsg_LockSession function obtains the lock and sets the value of the parameter to VI_TRUE.\n - If the value is VI_FALSE, the nirfsg_UnlockSession function does not attempt to unlock the session. If the value is VI_TRUE, the nirfsg_UnlockSession function releases the lock and sets the value of the parameter to VI_FALSE.\n\n Thus, you can call the nirfsg_UnlockSession function at the end of your function without worrying about whether you have the lock.\n\n Example:\n\n ViStatus TestFunc (ViSession vi, ViInt32 flags)\n {\n ViStatus error = VI_SUCCESS;\n ViBoolean haveLock = VI_FALSE;\n\n if (flags & BIT_1)\n {\n viCheckErr( nirfsg_LockSession(vi, &haveLock));\n viCheckErr( TakeAction1(vi));\n if (flags & BIT_2)\n {\n viCheckErr( nirfsg_UnlockSession(vi, &haveLock));\n viCheckErr( TakeAction2(vi));\n viCheckErr( nirfsg_LockSession(vi, &haveLock));\n }\n if (flags & BIT_3)\n viCheckErr( TakeAction3(vi));\n }\n\n Error:\n \n At this point, you cannot really be sure that you have the lock.\n Fortunately, the haveLock variable takes care of that for you.\n \n nirfsg_UnlockSession(vi, &haveLock);\n return error;\n }\n\n ' }, 'name': 'callerHasLock', 'type': 'ViBoolean', @@ -3350,7 +3506,7 @@ 'PerformPowerSearch': { 'codegen_method': 'public', 'documentation': { - 'description': 'Performs a power search if the NIRFSG_ATTR_ALC_CONTROL attribute is disabled. Calling this function disables modulation for a short time while the device levels the output signal.', + 'description': '\n Performs a power search if the NIRFSG_ATTR_ALC_CONTROL attribute is disabled. \n \n Calling this function disables modulation for a short time while the device levels the output signal.\n\n **Supported Devices**: PXIe-5654 with PXIe-5696\n\n **Related Topics**\n\n `Power Search `_\n ', 'note': 'Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search.' }, 'included_in_proto': True, @@ -3367,7 +3523,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3381,7 +3537,7 @@ 'PerformThermalCorrection': { 'codegen_method': 'public', 'documentation': { - 'description': 'Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this function.' + 'description': ' \n Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. \n \n Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this function.\n\n Use this function when generating the same signal for an extended period of time in a temperature-fluctuating environment. The NI-RFSG device must be in the Generation state before calling this function.\n\n **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Thermal Management `_\n\n `Impairment Calibration `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3397,7 +3553,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3411,7 +3567,7 @@ 'QueryArbWaveformCapabilities': { 'codegen_method': 'public', 'documentation': { - 'description': 'Queries and returns the waveform capabilities of the NI-RFSG device. These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this function.' + 'description': ' \n Queries and returns the waveform capabilities of the NI-RFSG device. \n \n These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3427,7 +3583,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3481,7 +3637,7 @@ 'ReadAndDownloadWaveformFromFileTDMS': { 'codegen_method': 'public', 'documentation': { - 'description': 'Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators.' + 'description': ' \n Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators.\n\n This function reads the following information from the TDMS file and writes it into the NI-RFSG session:\n\n - Sample Rate\n - PAPR\n - Runtime Scaling\n - RF Blanking Marker Locations\n - RF Blanking Enabled\n - Burst Start Locations\n - Burst Stop Locations\n - RF Blanking Marker Source\n - Signal Bandwidth\n - Waveform Size\n\n If RF blanking marker locations are present in the file but burst locations are not present, burst locations are calculated from RF blanking marker locations and stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3497,7 +3653,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3507,7 +3663,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the name used to store the waveform. This string is case-insensitive.' + 'description': ' Specifies the name used to store the waveform. This string is case-insensitive.\n\n Example:\n\n "waveform::waveform0"\n ' }, 'name': 'waveformName', 'type': 'ViConstString', @@ -3541,7 +3697,7 @@ 'Reset': { 'codegen_method': 'public', 'documentation': { - 'description': 'Resets all attributes to their default values and moves the NI-RFSG device to the Configuration state. This function aborts the generation, deletes all de-embedding tables, clears all routes, and resets session attributes to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route.', + 'description': ' \n\n Resets all attributes to their default values and moves the NI-RFSG device to the Configuration state. \n \n This function aborts the generation, deletes all de-embedding tables, clears all routes, and resets session attributes to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route.\n\n Generally, calling this function instead of the nirfsg_ResetDevice function is acceptable. The nirfsg_Reset function executes faster than the nirfsg_ResetDevice function.\n\n To avoid resetting routes on the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 that are in use by NI-RFSA sessions, NI recommends using the nirfsg_ResetWithOptions function, with **stepsToOmit** set to NIRFSG_VAL_RESET_WITH_OPTIONS_ROUTES .\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', 'note': 'This function resets all configured routes for the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 in NI-RFSA and NI-RFSG.' }, 'included_in_proto': True, @@ -3558,7 +3714,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3572,7 +3728,7 @@ 'ResetAttribute': { 'codegen_method': 'public', 'documentation': { - 'description': 'Resets the attribute to its default value.' + 'description': ' \n\n Resets the attribute to its default value.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3588,7 +3744,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3598,7 +3754,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -3622,8 +3778,8 @@ 'ResetDevice': { 'codegen_method': 'public', 'documentation': { - 'description': 'Performs a hard reset on the device.', - 'note': 'You must call the niRFSG_ResetDevice function if the NI-RFSG device has shut down because of a high-temperature condition.' + 'description': ' \n Performs a hard reset on the device which consists of the following actions:\n\n - Signal generation is stopped.\n - All routes are released.\n - External bidirectional terminals are tristated.\n - FPGAs are reset.\n - Hardware is configured to its default state.\n - All session attributes are reset to their default states.\n\n During a device reset, routes of signals between this and other devices are released, regardless of which device created the route.\n\n - PXI-5610, PXI-5670/5671, PXIe-5672-- After calling this function, the device requires 25 seconds before returning to full functionality. NI-RFSG enforces this condition by adding a wait, if needed, the next time you try to access the device.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Thermal Shutdown `_\n ', + 'note': 'You must call the nirfsg_ResetDevice function if the NI-RFSG device has shut down because of a high-temperature condition.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3639,7 +3795,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3653,7 +3809,7 @@ 'ResetWithDefaults': { 'codegen_method': 'public', 'documentation': { - 'description': 'Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store.' + 'description': '\n Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3669,7 +3825,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3683,7 +3839,7 @@ 'SaveConfigurationsToFile': { 'codegen_method': 'public', 'documentation': { - 'description': 'Saves the configurations of the session to the specified file.' + 'description': ' \n\n Saves the configurations of the session to the specified file.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3699,7 +3855,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3709,7 +3865,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -3733,7 +3889,7 @@ 'SelectArbWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': 'Specifies the waveform that is generated upon a call to the niRFSG_Initiate function when the **generationMode** parameter of the niRFSG_ConfigureGenerationMode function is set to NIRFSG_VAL_ARB_WAVEFORM. You must specify a waveform using the NIRFSG_ATTR_NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this function.' + 'description': ' \n\n Specifies the waveform that is generated upon a call to the nirfsg_Initiate function when the **generationMode** parameter of the nirfsg_ConfigureGenerationMode function is set to NIRFSG_VAL_ARB_WAVEFORM. \n \n You must specify a waveform using the NIRFSG_ATTR_NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3749,7 +3905,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3773,7 +3929,7 @@ 'SelfCal': { 'codegen_method': 'public', 'documentation': { - 'description': 'Performs an internal self-calibration on the device and associated modules that support self-calibration. If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module.', + 'description': ' \n Performs an internal self-calibration on the device and associated modules that support self-calibration. \n \n If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module.\n\n The PXIe-5841 maintains separate self-calibration data for both the PXIe-5841 standalone and when associated with the PXIe-5655. Use this function once for each intended configuration.\n\n **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', 'note': 'If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842/5860 while this function runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate.' }, 'included_in_proto': True, @@ -3790,7 +3946,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3804,8 +3960,8 @@ 'SelfCalibrateRange': { 'codegen_method': 'public', 'documentation': { - 'description': 'Self-calibrates all configurations within the specified frequency and peak power level limits.', - 'note': 'If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this function runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate.' + 'description': ' \n Self-calibrates all configurations within the specified frequency and peak power level limits.\n\n Self-calibration range data is valid until you restart the system or call the nirfsg_ClearSelfCalibrateRange function.\n\n NI recommends that no external signals are present on the RF In or IQ In ports during the calibration.\n\n For best results, NI recommends that you perform self-calibration without omitting any steps. However, if certain aspects of performance are less important for your application, you can omit certain steps for faster calibration.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n ', + 'note': '- This function does not update self-calibration date and temperature.\n\n - If there is an existing NI-RFSA session open for the same PXIe-5644/5645/5646, it may remain open but cannot be used while this function runs.\n\n - If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this function runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate.' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3821,7 +3977,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3831,7 +3987,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** :', + 'description': ' Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted.\n\n **Default Value**: NIRFSG_VAL_SELF_CAL_OMIT_NONE\n\n **Defined Values:**\n ', 'table_body': [ [ 'NIRFSG_VAL_SELF_CAL_OMIT_NONE', @@ -3923,14 +4079,14 @@ 'SelfTest': { 'codegen_method': 'public', 'documentation': { - 'description': 'Performs a self-test on the NI-RFSG device and returns the test results. This function performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding.' + 'description': ' \n Performs a self-test on the NI-RFSG device and returns the test results. \n \n This function performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding.\n\n This function does not affect external I/O connections or connections between devices. Complete functional testing and calibration are not performed by this function. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Device Warm-Up `_\n ' }, 'included_in_proto': True, 'parameters': [ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession' @@ -3938,7 +4094,21 @@ { 'direction': 'out', 'documentation': { - 'description': 'This parameter contains the value returned from the NI-RFSG device self test.' + 'description': ' This parameter contains the value returned from the NI-RFSG device self test.\n\n ', + 'table_body': [ + [ + '0', + 'Self test passed' + ], + [ + '1', + 'Self test failed' + ] + ], + 'table_header': [ + 'Self-Test Code', + 'Description' + ] }, 'name': 'selfTestResult', 'type': 'ViInt16' @@ -3946,7 +4116,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Returns the self-test response string from the NI-RFSG device. For an explanation of the string contents, refer to the **status** parameter of this function.' + 'description': ' Returns the self-test response string from the NI-RFSG device. For an explanation of the string contents, refer to the **status** parameter of this function.\n\n You must pass a ViChar array with at least 256 bytes.\n\n ' }, 'name': 'selfTestMessage', 'size': { @@ -3962,7 +4132,7 @@ 'SendSoftwareEdgeTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': 'Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger.' + 'description': ' \n Forces a trigger to occur. \n \n The specified trigger generates regardless of whether the trigger has been configured as a software trigger.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3978,7 +4148,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -3988,7 +4158,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the trigger to send. **Defined Values** :', + 'description': ' Specifies the trigger to send.\n \n **Default Value:** NIRFSG_VAL_START_TRIGGER\n\n **Defined Values:**\n ', 'table_body': [ [ 'NIRFSG_VAL_START_TRIGGER', @@ -4016,7 +4186,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the Script Trigger to configure. This parameter is valid only when you set the NIRFSG_ATTR_TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the NIRFSG_ATTR_TRIGGER_IDENTIFIER parameter to '' (empty string). **Defined Values** :", + 'description': ' Specifies the Script Trigger to configure. This parameter is valid only when you set the NIRFSG_ATTR_TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the **NIRFSG_ATTR_TRIGGER_IDENTIFIER** parameter to "" (empty string).\n\n **Default Value:** "" (empty string)\n\n **Defined Values:**\n ', 'table_body': [ [ 'NIRFSG_VAL_SCRIPT_TRIGGER0', @@ -4059,7 +4229,7 @@ 'SetArbWaveformNextWritePosition': { 'codegen_method': 'public', 'documentation': { - 'description': 'Configures the start position to use for writing a waveform before calling the niRFSG_WriteArbWaveform function. This function allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the niRFSG_AllocateArbWaveform function or the niRFSG_WriteArbWaveform function. Subsequent writes to that waveform begin where the last write ended, unless this function is called again.', + 'description': ' \n\n Configures the start position to use for writing a waveform before calling the nirfsg_WriteArbWaveform function. \n \n This function allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the nirfsg_AllocateArbWaveform function or the nirfsg_WriteArbWaveform function. Subsequent writes to that waveform begin where the last write ended, unless this function is called again.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', 'note': 'If you use this function to write the waveform that is currently generating, an undefined output may result.' }, 'included_in_proto': True, @@ -4076,7 +4246,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4086,7 +4256,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ ' + 'description': 'Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_.' }, 'name': 'waveformName', 'type': 'ViConstString', @@ -4096,7 +4266,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the reference position in the waveform. The position and NIRFSG_ATTR_OFFSET together determine where to start loading data into the waveform. **Defined Values** :', + 'description': ' Specifies the reference position in the waveform. The position and NIRFSG_ATTR_OFFSET together determine where to start loading data into the waveform.\n\n **Defined Values:**\n ', 'table_body': [ [ 'NIRFSG_VAL_START_OF_WAVEFORM', @@ -4138,7 +4308,7 @@ 'SetAttributeViBoolean': { 'codegen_method': 'private', 'documentation': { - 'description': 'Sets the value of a ViBoolean attribute.' + 'description': ' \n\n Sets the value of a ViBoolean attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4154,7 +4324,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4164,7 +4334,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4184,7 +4354,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value to which you want to set the attribute.' + 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n\n
\n ' }, 'name': 'value', 'type': 'ViBoolean', @@ -4198,7 +4368,7 @@ 'SetAttributeViInt32': { 'codegen_method': 'private', 'documentation': { - 'description': 'Sets the value of a ViInt32 attribute.' + 'description': ' \n\n Sets the value of a ViInt32 attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4214,7 +4384,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4224,7 +4394,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4244,7 +4414,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the value to which you want to set the attribute.' + 'description': ' Specifies the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n
\n ' }, 'grpc_enum': 'NiRFSGInt32AttributeValues', 'name': 'value', @@ -4259,7 +4429,7 @@ 'SetAttributeViInt64': { 'codegen_method': 'private', 'documentation': { - 'description': 'Sets the value of a ViInt64 attribute.' + 'description': ' \n\n Sets the value of a ViInt64 attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4275,7 +4445,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4285,7 +4455,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4305,7 +4475,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value to which you want to set the attribute.' + 'description': ' Pass the value to which you want to set the attribute.\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n
\n ' }, 'grpc_enum': 'NiRFSGInt64AttributeValues', 'name': 'value', @@ -4320,7 +4490,7 @@ 'SetAttributeViReal64': { 'codegen_method': 'private', 'documentation': { - 'description': 'Sets the value of a ViReal64 attribute.' + 'description': ' \n Sets the value of a ViReal64 attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4336,7 +4506,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4346,7 +4516,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4366,7 +4536,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value to which you want to set the attribute.' + 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n \n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n
\n ' }, 'grpc_enum': 'NiRFSGReal64AttributeValues', 'name': 'value', @@ -4381,7 +4551,7 @@ 'SetAttributeViSession': { 'codegen_method': 'private', 'documentation': { - 'description': 'Sets the value of a ViSession attribute.' + 'description': ' \n Sets the value of a ViSession attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4397,7 +4567,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4407,7 +4577,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4427,7 +4597,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value to which you want to set the attribute.' + 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n\n
\n ' }, 'name': 'value', 'type': 'ViSession', @@ -4441,7 +4611,7 @@ 'SetAttributeViString': { 'codegen_method': 'private', 'documentation': { - 'description': 'Sets the value of a ViString attribute.' + 'description': ' \n Sets the value of a ViString attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4457,7 +4627,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4467,7 +4637,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4487,7 +4657,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Pass the value to which you want to set the attribute.' + 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n\n
\n ' }, 'grpc_mapped_enum': 'NiRFSGStringAttributeValuesMapped', 'name': 'value', @@ -4502,7 +4672,7 @@ 'SetWaveformBurstStartLocations': { 'codegen_method': 'private', 'documentation': { - 'description': 'Configures the start location of the burst in samples where the burst refers to the active portion of a waveform.' + 'description': ' \n Configures the start location of the burst in samples where the burst refers to the active portion of a waveform.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4518,7 +4688,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4528,7 +4698,7 @@ { 'direction': 'in', 'documentation': { - 'description': "Specifies the waveform name and the marker name. Example: 'waveform::waveform0/marker0'" + 'description': 'Specifies the waveform name and the marker name. Example: "waveform::waveform0/marker0"' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4548,7 +4718,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the NIRFSG_ATTR_CHANNEL_NAME parameter. This value is expressed in samples.' + 'description': 'Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the **NIRFSG_ATTR_CHANNEL_NAME** parameter. This value is expressed in samples.' }, 'name': 'locations', 'type': 'ViReal64', @@ -4562,7 +4732,7 @@ 'SetWaveformBurstStopLocations': { 'codegen_method': 'private', 'documentation': { - 'description': 'Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform.' + 'description': ' \n\n Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4578,7 +4748,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4588,7 +4758,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4622,7 +4792,7 @@ 'SetWaveformMarkerEventLocations': { 'codegen_method': 'private', 'documentation': { - 'description': 'Configures the marker locations associated with waveform and marker in the NI-RFSG session.' + 'description': ' \n\n Configures the marker locations associated with waveform and marker in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4638,7 +4808,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4648,7 +4818,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the waveform name and the marker name.' + 'description': ' Specifies the waveform name and the marker name.\n\n Example:\n\n "waveform::waveform0/marker0"\n ' }, 'name': 'channelName', 'type': 'ViConstString', @@ -4682,7 +4852,7 @@ 'UnlockSession': { 'codegen_method': 'public', 'documentation': { - 'description': 'Releases a lock obtained on an NI-RFSG device session by calling the niRFSG_LockSession function.' + 'description': ' \n\n Releases a lock obtained on an NI-RFSG device session by calling the nirfsg_LockSession function.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4698,7 +4868,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4708,7 +4878,7 @@ { 'direction': 'out', 'documentation': { - 'description': 'Keeps track of whether you obtain a lock and therefore need to unlock the session. Pass the address of a local ViBoolean variable. In the declaration of the local variable, initialize it to VI_FALSE. Pass the address of the same local variable to any other calls you make to the niRFSG_LockSession function or the niRFSG_UnlockSession function in the same function.' + 'description': ' Keeps track of whether you obtain a lock and therefore need to unlock the session. Pass the address of a local ViBoolean variable. In the declaration of the local variable, initialize it to VI_FALSE. Pass the address of the same local variable to any other calls you make to the nirfsg_LockSession function or the nirfsg_UnlockSession function in the same function.\n\n\n\n This parameter serves as a convenience. If you do not want to use this parameter, pass VI_NULL.\n\n The parameter is an input/output parameter. The nirfsg_LockSession function and the nirfsg_UnlockSession each inspect the current value and take the following actions:\n\n - If the value is VI_TRUE, the nirfsg_LockSession function does not lock the session again. If the value is VI_FALSE, the nirfsg_LockSession function obtains the lock and sets the value of the parameter to VI_TRUE.\n - If the value is VI_FALSE, the nirfsg_UnlockSession function does not attempt to unlock the session. If the value is VI_TRUE, the nirfsg_UnlockSession function releases the lock and sets the value of the parameter to VI_FALSE.\n\n Thus, you can call the nirfsg_UnlockSession function at the end of your function without worrying about whether you have the lock.\n\n Example:\n\n ViStatus TestFunc (ViSession vi, ViInt32 flags)\n {\n ViStatus error = VI_SUCCESS;\n ViBoolean haveLock = VI_FALSE;\n\n if (flags & BIT_1)\n {\n viCheckErr( nirfsg_LockSession(vi, &haveLock));\n viCheckErr( TakeAction1(vi));\n if (flags & BIT_2)\n {\n viCheckErr( nirfsg_UnlockSession(vi, &haveLock));\n viCheckErr( TakeAction2(vi));\n viCheckErr( nirfsg_LockSession(vi, &haveLock));\n }\n if (flags & BIT_3)\n viCheckErr( TakeAction3(vi));\n }\n\n Error:\n \n At this point, you cannot really be sure that you have the lock.\n Fortunately, the haveLock variable takes care of that for you.\n \n nirfsg_UnlockSession(vi, &haveLock);\n return error;\n }\n\n ' }, 'name': 'callerHasLock', 'type': 'ViBoolean', @@ -4724,7 +4894,7 @@ 'WaitUntilSettled': { 'codegen_method': 'public', 'documentation': { - 'description': 'Waits until the RF output signal has settled. This function is useful for devices that support changes while in the Generation state. Call this function after making a dynamic change to wait for the output signal to settle.' + 'description': ' \n\n Waits until the RF output signal has settled. This function is useful for devices that support changes while in the Generation state. \n \n Call this function after making a dynamic change to wait for the output signal to settle.\n\n You can also call this function after calling the nirfsg_Commit function to wait for changes to settle. The nirfsg_WaitUntilSettled function is not required after calling the nirfsg_Initiate function because the nirfsg_Initiate automatically waits for the output to settle.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4740,7 +4910,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4750,7 +4920,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the maximum time the function waits for the output to settle. If the maximum time is exceeded, this function returns an error. The units are expressed in milliseconds.' + 'description': ' Specifies the maximum time the function waits for the output to settle. If the maximum time is exceeded, this function returns an error. The units are expressed in milliseconds.\n\n **Default Value**: 10000\n\n ' }, 'name': 'maxTimeMilliseconds', 'type': 'ViInt32', @@ -4764,7 +4934,7 @@ 'WriteP2PEndpointI16': { 'codegen_method': 'public', 'documentation': { - 'description': 'Writes an array of 16-bit integer data to the peer-to-peer endpoint. Use this function to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation.' + 'description': ' \n\n Writes an array of 16-bit integer data to the peer-to-peer endpoint. \n \n Use this function to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation.\n\n **Supported Devices**: PXIe-5673E\n\n **Related Topics**\n\n `Peer-to-Peer Data Streaming `_--Refer to this topic for more information about configuring a stream.\n\n `Configuring Flow Control `_\n\n `Starting Peer-to-Peer Generation `_\n\n `Reconfiguring a Stream `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4780,7 +4950,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4828,7 +4998,7 @@ 'WriteScript': { 'codegen_method': 'public', 'documentation': { - 'description': 'Writes a script to the device to control waveform generation in Script mode. First, configure your device for Script mode by calling the niRFSG_ConfigureGenerationMode function. The NI-RFSG device must be in the Configuration state before calling the niRFSG_WriteScript function.', + 'description': ' \n\n Writes a script to the device to control waveform generation in Script mode. \n \n First, configure your device for Script mode by calling the nirfsg_ConfigureGenerationMode function. The NI-RFSG device must be in the Configuration state before calling the nirfsg_WriteScript function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts.\n\n `Common Scripting Use Cases `_\n ', 'note': 'If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported.' }, 'included_in_proto': True, @@ -4845,7 +5015,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', @@ -4869,8 +5039,7 @@ 'close': { 'codegen_method': 'private', 'documentation': { - 'description': 'Aborts any signal generation in progress and destroys the instrument driver session.', - 'note': 'After calling this function, you cannot use NI-RFSG again until you call the niRFSG_Init function or the niRFSG_InitWithOptions function.' + 'description': ' \n Aborts any signal generation in progress and destroys the instrument driver session.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `NI-RFSG Programming State Model `_\n ' }, 'grpc_name': 'Close', 'included_in_proto': True, @@ -4879,7 +5048,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.' + 'description': 'Identifies your instrument session. The ViSession handle is obtained from the nirfsg_Init function or the nirfsg_InitWithOptions function and identifies a particular instrument session.' }, 'name': 'vi', 'type': 'ViSession', From 9a25599d47504d6aae9eef5538d30fea30a8c36c Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 15 Apr 2025 19:45:01 +0530 Subject: [PATCH 37/46] Added documentation for functions --- generated/nirfsg/nirfsg/session.py | 940 ++++++++++++++++++++++++++--- 1 file changed, 862 insertions(+), 78 deletions(-) diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index 2350bf0c35..2c4c53a7da 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -5455,6 +5455,8 @@ def check_attribute_vi_boolean(self, attribute, value): value (bool): Pass the value that you want to verify as a valid value for the property. + Note: Some of the values might not be valid depending on the current settings of the instrument session. + ''' self._interpreter.check_attribute_vi_boolean(self._repeated_capability, attribute, value) @@ -5479,6 +5481,8 @@ def check_attribute_vi_int32(self, attribute, value): value (int): Pass the value that you want to verify as a valid value for the property. + Note: Some of the values might not be valid depending on the current settings of the instrument session. + ''' self._interpreter.check_attribute_vi_int32(self._repeated_capability, attribute, value) @@ -5503,6 +5507,8 @@ def check_attribute_vi_int64(self, attribute, value): value (int): Pass the value that you want to verify as a valid value for the property. + Note: Some of the values might not be valid depending on the current settings of the instrument session. + ''' self._interpreter.check_attribute_vi_int64(self._repeated_capability, attribute, value) @@ -5527,6 +5533,8 @@ def check_attribute_vi_real64(self, attribute, value): value (float): Pass the value that you want to verify as a valid value for the property. + Note: Some of the values might not be valid depending on the current settings of the instrument session. + ''' self._interpreter.check_attribute_vi_real64(self._repeated_capability, attribute, value) @@ -5573,13 +5581,20 @@ def check_attribute_vi_string(self, attribute, value): value (str): Pass the value that you want to verify as a valid value for the property. The value must be a NULL-terminated string. + Note: Some of the values might not be valid depending on the current settings of the instrument session. + ''' self._interpreter.check_attribute_vi_string(self._repeated_capability, attribute, value) def _get_attribute_vi_boolean(self, attribute): r'''_get_attribute_vi_boolean - Queries the value of a ViBoolean property.Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. + Queries the value of a ViBoolean property. + + Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid. Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5606,7 +5621,12 @@ def _get_attribute_vi_boolean(self, attribute): def _get_attribute_vi_int32(self, attribute): r'''_get_attribute_vi_int32 - Queries the value of a ViInt32 property. Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. + Queries the value of a ViInt32 property. + + Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid. Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5635,6 +5655,11 @@ def _get_attribute_vi_int64(self, attribute): Queries the value of a ViInt64 property. + You can use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5662,6 +5687,11 @@ def _get_attribute_vi_real64(self, attribute): Queries the value of a ViReal64 property. + Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5689,6 +5719,11 @@ def _get_attribute_vi_session(self, attribute): Queries the value of a ViSession property. + Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5714,7 +5749,16 @@ def _get_attribute_vi_session(self, attribute): def _get_attribute_vi_string(self, attribute): r'''_get_attribute_vi_string - Queries the value of a ViString property.Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. + Queries the value of a ViString property. + + Use this low-level method to get the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid. + + You must provide a ViString (ViChar array) to serve as a buffer for the value. Pass the number of bytes in the buffer as the Buffer Size parameter. If the current value of the property, including the terminating NULL byte, is larger than the size you indicate in the buffer size parameter, the method copies buffer size-1 bytes into the buffer, places an ASCII NULL byte at the end of the buffer, and returns the buffer size you must pass to get the entire value. For example, if the value is "123456" and the buffer size is 4, the method places "123" into the buffer and returns 7. + + To call this method to get only the required buffer size, pass 0 for the buffer size and VI_NULL for the property value buffer. Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5734,6 +5778,8 @@ def _get_attribute_vi_string(self, attribute): Returns: value (str): The buffer in which the method returns the current value of the property. The buffer must be of type ViChar and have at least as many bytes as indicated in the **bufferSize** parameter. + If you specify 0 for the **bufferSize** parameter, you can pass VI_NULL for this parameter. + ''' value = self._interpreter.get_attribute_vi_string(self._repeated_capability, attribute) return value @@ -5743,6 +5789,8 @@ def _get_waveform_burst_start_locations(self, number_of_locations): Returns the burst start locations of the waveform stored in the NI-RFSG session. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5759,7 +5807,7 @@ def _get_waveform_burst_start_locations(self, number_of_locations): Returns: - locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the **CHANNEL_NAME** parameter. This value is expressed in samples. Note: One or more of the referenced properties are not in the Python API for this driver. @@ -5778,6 +5826,8 @@ def _get_waveform_burst_stop_locations(self, number_of_locations): Returns the burst stop locations of the waveform stored in the NI-RFSG session. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5794,7 +5844,7 @@ def _get_waveform_burst_stop_locations(self, number_of_locations): Returns: - locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the **CHANNEL_NAME** parameter. This value is expressed in samples. Note: One or more of the referenced properties are not in the Python API for this driver. @@ -5813,6 +5863,8 @@ def _get_waveform_marker_event_locations(self, number_of_locations): Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5829,7 +5881,7 @@ def _get_waveform_marker_event_locations(self, number_of_locations): Returns: - locations (float): Returns the marker locations stored in the NI-RFSG database for the channel you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + locations (float): Returns the marker locations stored in the NI-RFSG database for the channel you specified in the **CHANNEL_NAME** parameter. This value is expressed in samples. Note: One or more of the referenced properties are not in the Python API for this driver. @@ -5843,7 +5895,11 @@ def _get_waveform_marker_event_locations(self, number_of_locations): def load_configurations_from_file(self, file_path): r'''load_configurations_from_file - Loads the configurations from the specified file to the NI-RFSG driver session. The VI does an implicit reset before loading the configurations from the file. + Loads the configurations from the specified file to the NI-RFSG driver session. + + The VI does an implicit reset before loading the configurations from the file. + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5902,6 +5958,8 @@ def reset_attribute(self, attribute_id): Resets the property to its default value. + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5924,6 +5982,8 @@ def save_configurations_to_file(self, file_path): Saves the configurations of the session to the specified file. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -5944,10 +6004,22 @@ def save_configurations_to_file(self, file_path): def send_software_edge_trigger(self, trigger, trigger_identifier): r'''send_software_edge_trigger - Forces a trigger to occur. The specified trigger generates regardless of whether the trigger has been configured as a software trigger. + Forces a trigger to occur. + + The specified trigger generates regardless of whether the trigger has been configured as a software trigger. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ Args: - trigger (enums.SoftwareTriggerType): Specifies the trigger to send. **Defined Values** : + trigger (enums.SoftwareTriggerType): Specifies the trigger to send. + + **Default Value:** SoftwareTriggerType.START + + **Defined Values:** +----------------------------+---------+-------------------------------+ | Name | Value | Description | @@ -5960,7 +6032,11 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. - trigger_identifier (enums.TriggerIdentifier): Specifies the Script Trigger to configure. This parameter is valid only when you set the TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the TRIGGER_IDENTIFIER parameter to '' (empty string). **Defined Values** : + trigger_identifier (enums.TriggerIdentifier): Specifies the Script Trigger to configure. This parameter is valid only when you set the TRIGGER parameter to NIRFSG_VAL_START_TRIGGER. Otherwise, set the **TRIGGER_IDENTIFIER** parameter to "" (empty string). + + **Default Value:** "" (empty string) + + **Defined Values:** +----------------------------+----------------+-----------------------------+ | Name | Value | Description | @@ -5992,6 +6068,15 @@ def _set_attribute_vi_boolean(self, attribute, value): Sets the value of a ViBoolean property. + Use this low-level method to set the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid or is different than the value you specify. + + NI-RFSG contains high-level methods that set most of the instrument properties. Use the high-level driver methods as much as possible, as they handle order dependencies and multithread locking. The high-level methods also perform status checking only after setting all of the properties. In contrast, when you set multiple properties using the SetAttribute methods, the methods check the instrument status after each call. + + Also, when state caching is enabled, the high-level methods that configure multiple properties perform instrument I/O only for the properties whose value you change. Thus, you can safely call the high-level methods without the penalty of redundant instrument I/O. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6008,6 +6093,12 @@ def _set_attribute_vi_boolean(self, attribute, value): value (bool): Pass the value to which you want to set the property. + +
+ Some values may not be valid. The allowed values depend on the current settings of the instrument session. + +
+ ''' self._interpreter.set_attribute_vi_boolean(self._repeated_capability, attribute, value) @@ -6016,6 +6107,15 @@ def _set_attribute_vi_int32(self, attribute, value): Sets the value of a ViInt32 property. + Use this low-level method to set the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid or is different than the value you specify. + + NI-RFSG contains high-level methods that set most of the instrument properties. Use the high-level driver methods as much as possible, as they handle order dependencies and multithread locking. The high-level methods also perform status checking only after setting all of the properties. In contrast, when you set multiple properties using the SetAttribute methods, the methods check the instrument status after each call. + + Also, when state caching is enabled, the high-level methods that configure multiple properties perform instrument I/O only for the properties whose value you change. Thus, you can safely call the high-level methods without the penalty of redundant instrument I/O. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6032,6 +6132,11 @@ def _set_attribute_vi_int32(self, attribute, value): value (int): Specifies the value to which you want to set the property. + +
+ Some values may not be valid. The allowed values depend on the current settings of the instrument session. +
+ ''' self._interpreter.set_attribute_vi_int32(self._repeated_capability, attribute, value) @@ -6040,6 +6145,15 @@ def _set_attribute_vi_int64(self, attribute, value): Sets the value of a ViInt64 property. + Use this low-level method to set the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid or is different than the value you specify. + + NI-RFSG contains high-level methods that set most of the instrument properties. Use the high-level driver methods as much as possible, as they handle order dependencies and multithread locking. The high-level methods also perform status checking only after setting all of the properties. In contrast, when you set multiple properties using the SetAttribute methods, the methods check the instrument status after each call. + + Also, when state caching is enabled, the high-level methods that configure multiple properties perform instrument I/O only for the properties whose value you change. Thus, you can safely call the high-level methods without the penalty of redundant instrument I/O. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6056,6 +6170,10 @@ def _set_attribute_vi_int64(self, attribute, value): value (int): Pass the value to which you want to set the property. +
+ Some values may not be valid. The allowed values depend on the current settings of the instrument session. +
+ ''' self._interpreter.set_attribute_vi_int64(self._repeated_capability, attribute, value) @@ -6064,6 +6182,15 @@ def _set_attribute_vi_real64(self, attribute, value): Sets the value of a ViReal64 property. + Use this low-level method to set the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid or is different than the value you specify. + + NI-RFSG contains high-level methods that set most of the instrument properties. Use the high-level driver methods as much as possible, as they handle order dependencies and multithread locking. The high-level methods also perform status checking only after setting all of the properties. In contrast, when you set multiple properties using the SetAttribute methods, the methods check the instrument status after each call. + + Also, when state caching is enabled, the high-level methods that configure multiple properties perform instrument I/O only for the properties whose value you change. Thus, you can safely call the high-level methods without the penalty of redundant instrument I/O. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6080,6 +6207,12 @@ def _set_attribute_vi_real64(self, attribute, value): value (float): Pass the value to which you want to set the property. + +
+ + Some values may not be valid. The allowed values depend on the current settings of the instrument session. +
+ ''' self._interpreter.set_attribute_vi_real64(self._repeated_capability, attribute, value) @@ -6088,6 +6221,15 @@ def _set_attribute_vi_session(self, attribute): Sets the value of a ViSession property. + Use this low-level method to set the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid or is different than the value you specify. + + NI-RFSG contains high-level methods that set most of the instrument properties. Use the high-level driver methods as much as possible, as they handle order dependencies and multithread locking. The high-level methods also perform status checking only after setting all of the properties. In contrast, when you set multiple properties using the SetAttribute methods, the methods check the instrument status after each call. + + Also, when state caching is enabled, the high-level methods that configure multiple properties perform instrument I/O only for the properties whose value you change. Thus, you can safely call the high-level methods without the penalty of redundant instrument I/O. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6110,6 +6252,15 @@ def _set_attribute_vi_string(self, attribute, value): Sets the value of a ViString property. + Use this low-level method to set the values of inherent IVI properties, class-defined properties, and instrument-specific properties. If the property represents an instrument state, this method performs instrument I/O in the following cases: + + - State caching is disabled for the entire session or for the particular property. + - State caching is enabled, and the currently cached value is invalid or is different than the value you specify. + + NI-RFSG contains high-level methods that set most of the instrument properties. Use the high-level driver methods as much as possible, as they handle order dependencies and multithread locking. The high-level methods also perform status checking only after setting all of the properties. In contrast, when you set multiple properties using the SetAttribute methods, the methods check the instrument status after each call. + + Also, when state caching is enabled, the high-level methods that configure multiple properties perform instrument I/O only for the properties whose value you change. Thus, you can safely call the high-level methods without the penalty of redundant instrument I/O. + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6126,6 +6277,12 @@ def _set_attribute_vi_string(self, attribute, value): value (str): Pass the value to which you want to set the property. + +
+ Some values may not be valid. The allowed values depend on the current settings of the instrument session. + +
+ ''' self._interpreter.set_attribute_vi_string(self._repeated_capability, attribute, value) @@ -6134,6 +6291,8 @@ def _set_waveform_burst_start_locations(self, number_of_locations): Configures the start location of the burst in samples where the burst refers to the active portion of a waveform. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6150,7 +6309,7 @@ def _set_waveform_burst_start_locations(self, number_of_locations): Returns: - locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the CHANNEL_NAME parameter. This value is expressed in samples. + locations (float): Returns the burst start locations stored in the NI-RFSG session for the waveform that you specified in the **CHANNEL_NAME** parameter. This value is expressed in samples. Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6164,6 +6323,8 @@ def _set_waveform_burst_stop_locations(self, number_of_locations): Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6191,6 +6352,8 @@ def _set_waveform_marker_event_locations(self, number_of_locations): Configures the marker locations associated with waveform and marker in the NI-RFSG session. + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. Use Python index notation on the repeated capabilities container channels to specify a subset, @@ -6229,7 +6392,15 @@ class Session(_SessionBase): def __init__(self, resource_name, id_query, reset_device, options={}): r'''An NI-RFSG session to the RFSG driver - Opens a session to the device you specify as the RESOURCE_NAME and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. This method also configures the device through the OPTION_STRING input. + Opens a session to the device you specify as the **RESOURCE_NAME** and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. + + This method also configures the device through the **OPTION_STRING** input. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Simulating an NI RF Signal Generator `_ Note: For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0. @@ -6239,10 +6410,36 @@ def __init__(self, resource_name, id_query, reset_device, options={}): Args: resource_name (str): Specifies the resource name of the device to initialize. + For NI-DAQmx devices, the syntax is the device name specified in MAX. Typical default names for NI-DAQmx devices in MAX are Dev2 or PXISlot2. You can rename an NI-DAQmx device in MAX. + + You can also specify the name of an IVI logical name configured with the IVI Configuration utility. Refer to the *IVI* topic of the *Measurement & Automation Explorer Help* for more information. + + Note: NI-RFSG device names are not case-sensitive. However, all IVI names, such as logical names, are case-sensitive. If you use an IVI logical name, make sure the name is identical to the name shown in the IVI Configuration Utility. + id_query (bool): Specifies whether you want NI-RFSG to perform an ID query. + **Defined Values**: + + +-----------+--------------------------+ + | Value | Description | + +===========+==========================+ + | True (1) | Perform ID query. | + +-----------+--------------------------+ + | False (0) | Do not perform ID query. | + +-----------+--------------------------+ + reset_device (bool): Specifies whether you want to reset the NI-RFSG device during the initialization procedure. + **Defined Values**: + + +-----------+----------------------+ + | Value | Description | + +===========+======================+ + | True (1) | Reset device. | + +-----------+----------------------+ + | False (0) | Do not reset device. | + +-----------+----------------------+ + options (str): Specifies the initial value of certain properties for the session. The syntax for **options** is a dictionary of properties with an assigned value. For example: @@ -6325,7 +6522,15 @@ def __exit__(self, exc_type, exc_value, traceback): def initiate(self): '''initiate - Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. + Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. + + If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. + + **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ Note: This method will return a Python context manager that will initiate on entering and abort on exit. @@ -6337,10 +6542,13 @@ def close(self): Aborts any signal generation in progress and destroys the instrument driver session. - Note: After calling this method, you cannot use NI-RFSG again until you call the Init method or the __init__ method. + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 - Note: - One or more of the referenced methods are not in the Python API for this driver. + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ + + `NI-RFSG Programming State Model `_ Note: This method is not needed when using the session context manager @@ -6358,16 +6566,29 @@ def abort(self): r'''abort Stops signal generation. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Programming State Model `_ ''' self._interpreter.abort() def allocate_arb_waveform(self, waveform_name, size_in_samples): r'''allocate_arb_waveform - Allocates onboard memory space for the arbitrary waveform. Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the WriteArbWaveform method multiple times to write a large waveform in smaller blocks. The NI-RFSG device must be in the Configuration state before you call this method. + Allocates onboard memory space for the arbitrary waveform. - Note: - One or more of the referenced methods are not in the Python API for this driver. + Use this method to specify the total size of a waveform before writing the data. Use this method only if you are calling the WriteArbWaveform method multiple times to write a large waveform in smaller blocks. + + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Streaming Waveform Data `_ Args: waveform_name (str): Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words. @@ -6382,6 +6603,8 @@ def change_external_calibration_password(self, old_password, new_password): Changes the external calibration password of the device. + **Supported Devices:** PXIe-5611, PXIe-5653/5654, PXIe-5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + Args: old_password (str): Specifies the old (current) external calibration password. This password is case sensitive. @@ -6393,11 +6616,31 @@ def change_external_calibration_password(self, old_password, new_password): def check_generation_status(self): r'''check_generation_status - Checks the status of the generation. Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. + Checks the status of the generation. + + Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. + + **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ + + `Stopping Pear-to-Peer Generation `_ Returns: is_done (bool): Returns information about the completion of signal generation. + **Defined Values**: + + +-------+---------------------------------+ + | Value | Description | + +=======+=================================+ + | True | Signal generation is complete. | + +-------+---------------------------------+ + | False | Signal generation is occurring. | + +-------+---------------------------------+ + ''' is_done = self._interpreter.check_generation_status() return is_done @@ -6405,7 +6648,9 @@ def check_generation_status(self): def check_if_script_exists(self, script_name): r'''check_if_script_exists - Returns whether the script that you specify as SCRIPT_NAME exists. + Returns whether the script that you specify as **SCRIPT_NAME** exists. + + **Supported Devices**: PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860 Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6417,6 +6662,16 @@ def check_if_script_exists(self, script_name): Returns: script_exists (bool): Returns True if the script exists. + **Defined Values**: + + +-------+----------------------------+ + | Value | Description | + +=======+============================+ + | True | The script exists. | + +-------+----------------------------+ + | False | The script does not exist. | + +-------+----------------------------+ + ''' script_exists = self._interpreter.check_if_script_exists(script_name) return script_exists @@ -6424,7 +6679,9 @@ def check_if_script_exists(self, script_name): def check_if_waveform_exists(self, waveform_name): r'''check_if_waveform_exists - Returns whether the waveform that you specify as WAVEFORM_NAME exists. + Returns whether the waveform that you specify as **WAVEFORM_NAME** exists. + + **Supported Devices**: PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860 Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6436,6 +6693,16 @@ def check_if_waveform_exists(self, waveform_name): Returns: waveform_exists (bool): Returns True if the waveform exists. + **Defined Values**: + + +-------+------------------------------+ + | Value | Description | + +=======+==============================+ + | True | The waveform exists. | + +-------+------------------------------+ + | False | The waveform does not exist. | + +-------+------------------------------+ + ''' waveform_exists = self._interpreter.check_if_waveform_exists(waveform_name) return waveform_exists @@ -6443,14 +6710,22 @@ def check_if_waveform_exists(self, waveform_name): def clear_all_arb_waveforms(self): r'''clear_all_arb_waveforms - Deletes all currently defined waveforms and scripts. The NI-RFSG device must be in the Configuration state before you call this method. + Deletes all currently defined waveforms and scripts. + + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 ''' self._interpreter.clear_all_arb_waveforms() def clear_arb_waveform(self, name): r'''clear_arb_waveform - Deletes a specified waveform from the pool of currently defined waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + Deletes a specified waveform from the pool of currently defined waveforms. + + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Args: name (str): Name of the stored waveform to delete. @@ -6461,7 +6736,13 @@ def clear_arb_waveform(self, name): def clear_error(self): r'''clear_error - Clears the error information associated with the session. If you pass VI_NULL for the VI parameter, this method clears the error information for the current execution thread. + Clears the error information associated with the session. + + If you pass VI_NULL for the VI parameter, this method clears the error information for the current execution thread. + + The IVI Engine also maintains this error information separately for each thread. This feature of the IVI Engine is useful if you do not have a session handle to pass to the clear_error method or the get_error method, which occurs when a call to the Init method or the __init__ method fails. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 Note: The get_error method clears the error information after it is retrieved. A call to the clear_error method is necessary only when you do not use a call to the get_error method to retrieve error information. @@ -6474,23 +6755,37 @@ def clear_self_calibrate_range(self): r'''clear_self_calibrate_range Clears the data obtained from the self_calibrate_range method. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 ''' self._interpreter.clear_self_calibrate_range() def commit(self): r'''commit - Programs the device with the correct settings. Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. + Programs the device with the correct settings. + + Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. + + **Supported devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Programming State Model `_ ''' self._interpreter.commit() def configure_deembedding_table_interpolation_linear(self, port, table_name, format): r'''configure_deembedding_table_interpolation_linear - Selects the linear interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + Selects the linear interpolation method. + + If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 Args: - port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). table_name (str): Specifies the name of the table. @@ -6514,10 +6809,14 @@ def configure_deembedding_table_interpolation_linear(self, port, table_name, for def configure_deembedding_table_interpolation_nearest(self, port, table_name): r'''configure_deembedding_table_interpolation_nearest - Selects the nearest interpolation method. NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. + Selects the nearest interpolation method. + + NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 Args: - port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). table_name (str): Specifies the name of the table. @@ -6527,10 +6826,14 @@ def configure_deembedding_table_interpolation_nearest(self, port, table_name): def configure_deembedding_table_interpolation_spline(self, port, table_name): r'''configure_deembedding_table_interpolation_spline - Selects the spline interpolation method. If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + Selects the spline interpolation method. + + If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 Args: - port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). table_name (str): Specifies the name of the table. @@ -6540,7 +6843,19 @@ def configure_deembedding_table_interpolation_spline(self, port, table_name): def configure_digital_edge_script_trigger(self, trigger_id, source, edge): r'''configure_digital_edge_script_trigger - Configures the specified Script Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + Purpose + + Configures the specified Script Trigger for digital edge triggering. + + The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Digital Edge Trigger `_ Args: trigger_id (str): Specifies the Script Trigger to configure. @@ -6555,7 +6870,17 @@ def configure_digital_edge_script_trigger(self, trigger_id, source, edge): def configure_digital_edge_start_trigger(self, source, edge): r'''configure_digital_edge_start_trigger - Configures the Start Trigger for digital edge triggering. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Start Trigger for digital edge triggering. + + The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ + + `Digital Edge Trigger `_ Note: For the PXIe-5654/5654 with PXIe-5696, the Start Trigger is valid only with a timer-based list when RF list mode is enabled. @@ -6570,7 +6895,17 @@ def configure_digital_edge_start_trigger(self, source, edge): def configure_digital_level_script_trigger(self, trigger_id, source, level): r'''configure_digital_level_script_trigger - Configures a specified Script Trigger for digital level triggering. The NI-RFSG device must be in the Configuration state before calling this method. + Configures a specified Script Trigger for digital level triggering. + + The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Digital Level Trigger `_ Args: trigger_id (str): Specifies the Script Trigger to configure. @@ -6587,6 +6922,8 @@ def configure_digital_modulation_user_defined_waveform(self, number_of_samples, Specifies the message signal used for digital modulation when the digital_modulation_waveform_type property is set to NIRFSG_VAL_USER_DEFINED. + **Supported Devices**: PXI/PXIe-5650/5651/5652 + Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -6601,10 +6938,24 @@ def configure_digital_modulation_user_defined_waveform(self, number_of_samples, def configure_generation_mode(self, generation_mode): r'''configure_generation_mode - Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. The NI-RFSG device must be in the Configuration state before you call this method. + Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. + + The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ + + `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts. Args: - generation_mode (enums.GenerationMode): Specifies the mode used by NI-RFSG for generating an RF output signal. **Defined Values** : + generation_mode (enums.GenerationMode): Specifies the mode used by NI-RFSG for generating an RF output signal. + + **Default Value**: GenerationMode.CW + + **Defined Values** : +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ | Name | Value | Description | @@ -6616,6 +6967,10 @@ def configure_generation_mode(self, generation_mode): | GenerationMode.SCRIPT | 1002 (0x3ea) | Configures the RF signal generator to generate arbitrary waveforms as directed by the selected_script property. | +-----------------------------+--------------+------------------------------------------------------------------------------------------------------------------------+ + Note: - For the PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, only GenerationMode.CW is supported. + + - If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported. + ''' if type(generation_mode) is not enums.GenerationMode: raise TypeError('Parameter generation_mode must be of type ' + str(enums.GenerationMode)) @@ -6624,7 +6979,19 @@ def configure_generation_mode(self, generation_mode): def configure_output_enabled(self, output_enabled): r'''configure_output_enabled - Enables or disables signal output. Setting output_enabled to False while in the Generation state attenuates the generated signal so that no signal is output. + Enables or disables signal output. + + Setting **output_enabled** to False while in the Generation state attenuates the generated signal so that no signal is output. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Output Enabled `_ + + `NI-RFSG Instrument Driver Programming Flow `_ + + `RF List Mode `_ Args: output_enabled (bool): Specifies whether you want to enable or disable the output. @@ -6635,7 +7002,15 @@ def configure_output_enabled(self, output_enabled): def configure_p2_p_endpoint_fullness_start_trigger(self, p2p_endpoint_fullness_level): r'''configure_p2_p_endpoint_fullness_start_trigger - Configures the Start Trigger to detect peer-to-peer endpoint fullness. Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the P2P_ENDPOINT_FULLNESS_LEVEL parameter. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Start Trigger to detect peer-to-peer endpoint fullness. + + Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the **P2P_ENDPOINT_FULLNESS_LEVEL** parameter. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Start Trigger `_ Note: Due to an additional internal FIFO in the RF signal generator, the writer peer actually writes 2,304 bytes more than the quantity of data specified by this method to satisfy the trigger level. @@ -6651,18 +7026,46 @@ def configure_p2_p_endpoint_fullness_start_trigger(self, p2p_endpoint_fullness_l def configure_power_level_type(self, power_level_type): r'''configure_power_level_type - Specifies the way the driver interprets the power_level property. In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. + Specifies the way the driver interprets the power_level property. + + In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Spurious Performance `_ + + `Optimizing for Low Power Generation `_ Args: power_level_type (int): Specifies the way the driver interprets the value of the power_level property. NI-RFSG sets the power_level_type property to this value. + +-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Value | Description | + +=============================+========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | **Average Power** (default) | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | + +-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **Peak Power** | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. | + +-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + ''' self._interpreter.configure_power_level_type(power_level_type) def configure_pxi_chassis_clk10(self, pxi_clk10_source): r'''configure_pxi_chassis_clk10 - Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. + Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. + + This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXI-5610, PXI-5670/5671 + + **Related Topics** + + `Timing Configurations `_ + + `System Reference Clock `_ Args: pxi_clk10_source (str): Specifies the source of the Reference Clock signal. @@ -6673,25 +7076,72 @@ def configure_pxi_chassis_clk10(self, pxi_clk10_source): def configure_rf(self, frequency, power_level): r'''configure_rf - Configures the frequency and power level of the RF output signal. The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. + Configures the frequency and power level of the RF output signal. + + The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ Args: frequency (float): Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal. + **Units**: hertz (Hz) + power_level (float): Specifies either the average power level or peak power level of the generated RF signal, depending on the power_level_type property. + **Units**: dBm + ''' self._interpreter.configure_rf(frequency, power_level) def configure_ref_clock(self, ref_clock_source, ref_clock_rate): r'''configure_ref_clock - Configures the NI-RFSG device Reference Clock. The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the NI-RFSG device Reference Clock. + + The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `PXIe-5672 Timing Configurations `_ + + `PXIe-5673 Timing Configurations `_ + + `PXIe-5673E Timing Configurations `_ + + `PXIe-5830 Timing Configurations `_ + + `PXIe-5831 Timing Configurations `_ Args: ref_clock_source (str): Specifies the source of Reference Clock signal. - ref_clock_rate (float): Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is NIRFSG_VAL_AUTO, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the ref_clock_source parameter is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR or ReferenceClockSource.REF_IN_2. Refer to the ref_clock_rate property for possible values. + +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Reference Clock Constant | Value | Description | + +============================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | **NIRFSG_VAL_ONBOARD_CLOCK_STR (default)** | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **NIRFSG_VAL_REF_IN_STR** | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **ReferenceClockSource.PXI_CLK** | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | + +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **NIRFSG_VAL_CLK_IN_STR** | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | + +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **ReferenceClockSource.REF_IN_2** | RefIn2 | - | + +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | **ReferenceClockSource.PXI_CLK_MASTER** | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + Note: + One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. + + ref_clock_rate (float): Specifies the Reference Clock rate, in hertz (Hz), of the signal present at the REF IN or CLK IN connector. The default value is NIRFSG_VAL_AUTO, which allows NI-RFSG to use the default Reference Clock rate for the device or automatically detect the Reference Clock rate, if supported. This parameter is only valid when the **ref_clock_source** parameter is set to NIRFSG_VAL_CLK_IN_STR, NIRFSG_VAL_REF_IN_STR or ReferenceClockSource.REF_IN_2. Refer to the ref_clock_rate property for possible values. Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -6702,7 +7152,15 @@ def configure_ref_clock(self, ref_clock_source, ref_clock_rate): def configure_signal_bandwidth(self, signal_bandwidth): r'''configure_signal_bandwidth - Configures the signal bandwidth of the arbitrary waveform. The NI-RFSG device must be in the Configuration state before you call this method. Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband. + Configures the signal bandwidth of the arbitrary waveform. + + The NI-RFSG device must be in the Configuration state before you call this method. + + NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0Hz. In such cases, the signal bandwidth is simply the baseband signal minimum frequency subtracted from its maximum frequency, or *f* max minus *f* min. NI-RFSG uses this value to optimally configure the center frequency of the upconverter to help minimize phase noise. The generated signal is not filtered to achieve the set bandwidth. However, specifying a bandwidth smaller than the actual bandwidth of the signal could potentially result in spectral distortion. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband. Args: signal_bandwidth (float): Specifies the signal bandwidth used by NI-RFSG to generate an RF output signal. NI-RFSG sets the signal_bandwidth property to this value. @@ -6713,7 +7171,17 @@ def configure_signal_bandwidth(self, signal_bandwidth): def configure_software_script_trigger(self, trigger_id): r'''configure_software_script_trigger - Configures the Script Trigger for software triggering. Refer to the send_software_edge_trigger method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Script Trigger for software triggering. + + Refer to the send_software_edge_trigger method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ + + `Trigger Types `_ Args: trigger_id (str): Specifies the Script Trigger to configure. @@ -6724,7 +7192,19 @@ def configure_software_script_trigger(self, trigger_id): def configure_software_start_trigger(self): r'''configure_software_start_trigger - Configures the Start Trigger for software triggering. Refer to the send_software_edge_trigger method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the Start Trigger for software triggering. + + Refer to the send_software_edge_trigger method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + + + **Related Topics** + + `Start Trigger `_ + + `Trigger Types `_ ''' self._interpreter.configure_software_start_trigger() @@ -6733,6 +7213,16 @@ def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_fi Creates an S-parameter de-embedding table for the port based on the specified S2P file. + If you only create one table for a port, NI-RFSG automatically selects that table to de-embed the measurement. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `De-embedding Overview `_ + + `S-parameters `_ + Args: port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842 is empty string. @@ -6759,6 +7249,8 @@ def delete_all_deembedding_tables(self): r'''delete_all_deembedding_tables Deletes all configured de-embedding tables for the session. + + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 ''' self._interpreter.delete_all_deembedding_tables() @@ -6767,8 +7259,10 @@ def delete_deembedding_table(self, port, table_name): Deletes the selected de-embedding table for a given port. + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + Args: - port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is '' (empty string). + port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). table_name (str): Specifies the name of the table. @@ -6779,13 +7273,23 @@ def disable(self): r'''disable Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected. + + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E ''' self._interpreter.disable() def disable_script_trigger(self, trigger_id): r'''disable_script_trigger - Configures the device not to wait for the specified Script Trigger. Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. + Configures the device not to wait for the specified Script Trigger. + + Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Script Trigger `_ Args: trigger_id (str): Specifies the Script trigger to configure. @@ -6796,14 +7300,38 @@ def disable_script_trigger(self, trigger_id): def disable_start_trigger(self): r'''disable_start_trigger - Configures the device not to wait for a Start Trigger. This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. + Configures the device not to wait for a Start Trigger. + + This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Start Trigger `_ ''' self._interpreter.disable_start_trigger() def export_signal(self, signal, signal_identifier, output_terminal): r'''export_signal - Routes signals (triggers, clocks, and events) to a specified output terminal. The NI-RFSG device must be in the Configuration state before you call this method. + Routes signals (triggers, clocks, and events) to a specified output terminal. + + The NI-RFSG device must be in the Configuration state before you call this method. + + You can clear a previously routed signal by exporting the signal to "" (empty string). + + **Supported Devices**:PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Triggers `_ + + `Events `_ + + `PFI Lines `_ + + `PXI Trigger Lines `_ Args: signal (enums.Signal): Specifies the type of signal to route. **Defined Values** : @@ -6888,7 +7416,15 @@ def export_signal(self, signal, signal_identifier, output_terminal): def _get_external_calibration_last_date_and_time(self): r'''_get_external_calibration_last_date_and_time - Returns the date and time of the last successful external calibration. The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. + Returns the date and time of the last successful external calibration. + + The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this method returns + + 14 for the hours parameter and + + 30 for the minutes parameter. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Returns: year (int): Returns the year of the last successful calibration. @@ -6936,6 +7472,8 @@ def get_max_settable_power(self): Returns the maximum settable output power level for the current configuration. + **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + Returns: value (float): Returns maximum settable power level in dBm. @@ -6946,7 +7484,15 @@ def get_max_settable_power(self): def _get_self_calibration_date_and_time(self, module): r'''_get_self_calibration_date_and_time - Returns the date and time of the last successful self-calibration. The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this method returns 14 for the hours parameter and 30 for the minutes parameter. + Returns the date and time of the last successful self-calibration. + + The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this method returns + + 14 for the hours parameter and + + 30 for the minutes parameter. + + **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Args: module (int): Specifies from which stand-alone module to retrieve the last successful self-calibration date and time. @@ -6974,8 +7520,12 @@ def get_self_calibration_temperature(self, module): Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. + **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860 + Args: - module (enums.Module): Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. **Defined Values** : + module (enums.Module): Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. + **Default Value**: Module.PRIMARY_MODULE + **Defined Values** : +-----------------------+----------------+---------------------------------------------------------------------+ | Name | Value | Description | @@ -7002,6 +7552,14 @@ def get_stream_endpoint_handle(self, stream_endpoint): Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint. + **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + + **Related Topics** + + `Configuring a Peer-to-Peer Stream `_ + + `Configuring Flow Control `_ + Args: stream_endpoint (str): Specifies the stream endpoint FIFO to configure. @@ -7016,7 +7574,15 @@ def get_stream_endpoint_handle(self, stream_endpoint): def _init_with_options(self, resource_name, id_query, reset_device, option_string): r'''_init_with_options - Opens a session to the device you specify as the RESOURCE_NAME and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. This method also configures the device through the OPTION_STRING input. + Opens a session to the device you specify as the **RESOURCE_NAME** and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. + + This method also configures the device through the **OPTION_STRING** input. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Simulating an NI RF Signal Generator `_ Note: For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0. @@ -7026,12 +7592,62 @@ def _init_with_options(self, resource_name, id_query, reset_device, option_strin Args: resource_name (str): Specifies the resource name of the device to initialize. + For NI-DAQmx devices, the syntax is the device name specified in MAX. Typical default names for NI-DAQmx devices in MAX are Dev2 or PXISlot2. You can rename an NI-DAQmx device in MAX. + + You can also specify the name of an IVI logical name configured with the IVI Configuration utility. Refer to the *IVI* topic of the *Measurement & Automation Explorer Help* for more information. + + Note: NI-RFSG device names are not case-sensitive. However, all IVI names, such as logical names, are case-sensitive. If you use an IVI logical name, make sure the name is identical to the name shown in the IVI Configuration Utility. + id_query (bool): Specifies whether you want NI-RFSG to perform an ID query. + **Defined Values**: + + +-----------+--------------------------+ + | Value | Description | + +===========+==========================+ + | True (1) | Perform ID query. | + +-----------+--------------------------+ + | False (0) | Do not perform ID query. | + +-----------+--------------------------+ + reset_device (bool): Specifies whether you want to reset the NI-RFSG device during the initialization procedure. + **Defined Values**: + + +-----------+----------------------+ + | Value | Description | + +===========+======================+ + | True (1) | Reset device. | + +-----------+----------------------+ + | False (0) | Do not reset device. | + +-----------+----------------------+ + option_string (str): Specifies the initial value of certain properties for the session. The following table lists the properties and the name you pass in this parameter to identify the property. + The format of this string consists of the following relations: + "AttributeName=Value" + + where + *AttributeName* is the name of the property and *Value* is the value to which the property is set. To set multiple properties, separate their assignments with a comma, as shown in the following option string: + + "RangeCheck=1,QueryInstrStatus=0,Cache=1,DriverSetup=AWG:pxi1slot4" + + The `DriverSetup string `_ is required in order to simulate a specific device. + + +------------------+-------------------------+ + | Name | Property Name | + +==================+=========================+ + | RangeCheck | range_check | + +------------------+-------------------------+ + | QueryInstrStatus | query_instrument_status | + +------------------+-------------------------+ + | Cache | cache | + +------------------+-------------------------+ + | RecordCoercions | record_coercions | + +------------------+-------------------------+ + | Simulate | simulate | + +------------------+-------------------------+ + Returns: new_vi (int): Returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. @@ -7043,14 +7659,30 @@ def _init_with_options(self, resource_name, id_query, reset_device, option_strin def _initiate(self): r'''_initiate - Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. + Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. + + If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. + + **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ ''' self._interpreter.initiate() def perform_power_search(self): r'''perform_power_search - Performs a power search if the alc_control property is disabled. Calling this method disables modulation for a short time while the device levels the output signal. + Performs a power search if the alc_control property is disabled. + + Calling this method disables modulation for a short time while the device levels the output signal. + + **Supported Devices**: PXIe-5654 with PXIe-5696 + + **Related Topics** + + `Power Search `_ Note: Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search. ''' @@ -7059,14 +7691,30 @@ def perform_power_search(self): def perform_thermal_correction(self): r'''perform_thermal_correction - Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. + + Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this method. + + Use this method when generating the same signal for an extended period of time in a temperature-fluctuating environment. The NI-RFSG device must be in the Generation state before calling this method. + + **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Thermal Management `_ + + `Impairment Calibration `_ ''' self._interpreter.perform_thermal_correction() def query_arb_waveform_capabilities(self): r'''query_arb_waveform_capabilities - Queries and returns the waveform capabilities of the NI-RFSG device. These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. + Queries and returns the waveform capabilities of the NI-RFSG device. + + These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Returns: max_number_waveforms (int): Returns the value of the arb_max_number_waveforms property. This value is the maximum number of waveforms you can write. @@ -7086,9 +7734,30 @@ def read_and_download_waveform_from_file_tdms(self, waveform_name, file_path, wa Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators. + This method reads the following information from the TDMS file and writes it into the NI-RFSG session: + + - Sample Rate + - PAPR + - Runtime Scaling + - RF Blanking Marker Locations + - RF Blanking Enabled + - Burst Start Locations + - Burst Stop Locations + - RF Blanking Marker Source + - Signal Bandwidth + - Waveform Size + + If RF blanking marker locations are present in the file but burst locations are not present, burst locations are calculated from RF blanking marker locations and stored in the NI-RFSG session. + + **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + Args: waveform_name (str): Specifies the name used to store the waveform. This string is case-insensitive. + Example: + + "waveform::waveform0" + file_path (str): Specifies the absolute path to the TDMS file from which the NI-RFSG reads the waveforms. waveform_index (int): Specifies the index of the waveform to be read from the TDMS file. @@ -7099,7 +7768,15 @@ def read_and_download_waveform_from_file_tdms(self, waveform_name, file_path, wa def reset(self): r'''reset - Resets all properties to their default values and moves the NI-RFSG device to the Configuration state. This method aborts the generation, deletes all de-embedding tables, clears all routes, and resets session properties to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route. + Resets all properties to their default values and moves the NI-RFSG device to the Configuration state. + + This method aborts the generation, deletes all de-embedding tables, clears all routes, and resets session properties to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route. + + Generally, calling this method instead of the reset_device method is acceptable. The reset method executes faster than the reset_device method. + + To avoid resetting routes on the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 that are in use by NI-RFSA sessions, NI recommends using the ResetWithOptions method, with **stepsToOmit** set to ResetWithOptionsStepsToOmit.ROUTES . + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Note: This method resets all configured routes for the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 in NI-RFSA and NI-RFSG. ''' @@ -7108,7 +7785,24 @@ def reset(self): def reset_device(self): r'''reset_device - Performs a hard reset on the device. + Performs a hard reset on the device which consists of the following actions: + + - Signal generation is stopped. + - All routes are released. + - External bidirectional terminals are tristated. + - FPGAs are reset. + - Hardware is configured to its default state. + - All session properties are reset to their default states. + + During a device reset, routes of signals between this and other devices are released, regardless of which device created the route. + + - PXI-5610, PXI-5670/5671, PXIe-5672-- After calling this method, the device requires 25 seconds before returning to full functionality. NI-RFSG enforces this condition by adding a wait, if needed, the next time you try to access the device. + + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E + + **Related Topics** + + `Thermal Shutdown `_ Note: You must call the reset_device method if the NI-RFSG device has shut down because of a high-temperature condition. ''' @@ -7118,13 +7812,23 @@ def reset_with_defaults(self): r'''reset_with_defaults Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store. + + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E ''' self._interpreter.reset_with_defaults() def select_arb_waveform(self, name): r'''select_arb_waveform - Specifies the waveform that is generated upon a call to the _initiate method when the **generationMode** parameter of the configure_generation_mode method is set to GenerationMode.ARB_WAVEFORM. You must specify a waveform using the NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + Specifies the waveform that is generated upon a call to the _initiate method when the **generationMode** parameter of the configure_generation_mode method is set to GenerationMode.ARB_WAVEFORM. + + You must specify a waveform using the NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Assigning Properties or Properties to a Waveform `_ Note: One or more of the referenced properties are not in the Python API for this driver. @@ -7138,7 +7842,13 @@ def select_arb_waveform(self, name): def self_cal(self): r'''self_cal - Performs an internal self-calibration on the device and associated modules that support self-calibration. If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module. + Performs an internal self-calibration on the device and associated modules that support self-calibration. + + If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module. + + The PXIe-5841 maintains separate self-calibration data for both the PXIe-5841 standalone and when associated with the PXIe-5655. Use this method once for each intended configuration. + + **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Note: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842/5860 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. ''' @@ -7149,10 +7859,26 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ Self-calibrates all configurations within the specified frequency and peak power level limits. - Note: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. + Self-calibration range data is valid until you restart the system or call the clear_self_calibrate_range method. + + NI recommends that no external signals are present on the RF In or IQ In ports during the calibration. + + For best results, NI recommends that you perform self-calibration without omitting any steps. However, if certain aspects of performance are less important for your application, you can omit certain steps for faster calibration. + + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + + Note: - This method does not update self-calibration date and temperature. + + - If there is an existing NI-RFSA session open for the same PXIe-5644/5645/5646, it may remain open but cannot be used while this method runs. + + - If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. Args: - steps_to_omit (enums.SelfCalibrateRangeStepsToOmit): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. **Defined Values** : + steps_to_omit (enums.SelfCalibrateRangeStepsToOmit): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. + + **Default Value**: SelfCalibrateRangeStepsToOmit.OMIT_NONE + + **Defined Values:** +-----------------------------------------------------+-----------+---------------------------------------------------------------------------------------------------------------------+ | Name | Value | Description | @@ -7189,15 +7915,35 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ def self_test(self, self_test_message): r'''self_test - Performs a self-test on the NI-RFSG device and returns the test results. This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. + Performs a self-test on the NI-RFSG device and returns the test results. + + This method performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding. + + This method does not affect external I/O connections or connections between devices. Complete functional testing and calibration are not performed by this method. The NI-RFSG device must be in the Configuration state before you call this method. + + **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Device Warm-Up `_ Args: self_test_message (str): Returns the self-test response string from the NI-RFSG device. For an explanation of the string contents, refer to the **status** parameter of this method. + You must pass a ViChar array with at least 256 bytes. + Returns: self_test_result (int): This parameter contains the value returned from the NI-RFSG device self test. + +----------------+------------------+ + | Self-Test Code | Description | + +================+==================+ + | 0 | Self test passed | + +----------------+------------------+ + | 1 | Self test failed | + +----------------+------------------+ + ''' self_test_result = self._interpreter.self_test(self_test_message) return self_test_result @@ -7205,17 +7951,20 @@ def self_test(self, self_test_message): def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offset): r'''set_arb_waveform_next_write_position - Configures the start position to use for writing a waveform before calling the WriteArbWaveform method. This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the allocate_arb_waveform method or the WriteArbWaveform method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. + Configures the start position to use for writing a waveform before calling the WriteArbWaveform method. - Note: If you use this method to write the waveform that is currently generating, an undefined output may result. + This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the allocate_arb_waveform method or the WriteArbWaveform method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. - Note: - One or more of the referenced methods are not in the Python API for this driver. + **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + Note: If you use this method to write the waveform that is currently generating, an undefined output may result. Args: - waveform_name (str): Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_ + waveform_name (str): Specifies the name of the waveform. This string is case-insensitive and alphanumeric, and it cannot use `reserved words `_. + + relative_to (enums.RelativeTo): Specifies the reference position in the waveform. The position and OFFSET together determine where to start loading data into the waveform. - relative_to (enums.RelativeTo): Specifies the reference position in the waveform. The position and OFFSET together determine where to start loading data into the waveform. **Defined Values** : + **Defined Values:** +------------------------------+---------------+------------------------------------------------------------------+ | Name | Value | Description | @@ -7238,18 +7987,40 @@ def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offse def wait_until_settled(self, max_time_milliseconds): r'''wait_until_settled - Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. Call this method after making a dynamic change to wait for the output signal to settle. + Waits until the RF output signal has settled. This method is useful for devices that support changes while in the Generation state. + + Call this method after making a dynamic change to wait for the output signal to settle. + + You can also call this method after calling the commit method to wait for changes to settle. The wait_until_settled method is not required after calling the _initiate method because the _initiate automatically waits for the output to settle. + + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Args: max_time_milliseconds (int): Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. + **Default Value**: 10000 + ''' self._interpreter.wait_until_settled(max_time_milliseconds) def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_data): r'''write_p2_p_endpoint_i16 - Writes an array of 16-bit integer data to the peer-to-peer endpoint. Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. + Writes an array of 16-bit integer data to the peer-to-peer endpoint. + + Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. + + **Supported Devices**: PXIe-5673E + + **Related Topics** + + `Peer-to-Peer Data Streaming `_--Refer to this topic for more information about configuring a stream. + + `Configuring Flow Control `_ + + `Starting Peer-to-Peer Generation `_ + + `Reconfiguring a Stream `_ Args: stream_endpoint (str): Specifies the stream endpoint FIFO to configure. @@ -7264,7 +8035,17 @@ def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_d def write_script(self, script): r'''write_script - Writes a script to the device to control waveform generation in Script mode. First, configure your device for Script mode by calling the configure_generation_mode method. The NI-RFSG device must be in the Configuration state before calling the write_script method. + Writes a script to the device to control waveform generation in Script mode. + + First, configure your device for Script mode by calling the configure_generation_mode method. The NI-RFSG device must be in the Configuration state before calling the write_script method. + + **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + + **Related Topics** + + `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts. + + `Common Scripting Use Cases `_ Note: If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported. @@ -7279,9 +8060,12 @@ def _close(self): Aborts any signal generation in progress and destroys the instrument driver session. - Note: After calling this method, you cannot use NI-RFSG again until you call the Init method or the __init__ method. + **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 - Note: - One or more of the referenced methods are not in the Python API for this driver. + **Related Topics** + + `NI-RFSG Instrument Driver Programming Flow `_ + + `NI-RFSG Programming State Model `_ ''' self._interpreter.close() From d44b8704592160e2d5684f289974d3f6d20d611f Mon Sep 17 00:00:00 2001 From: Vagupta Date: Wed, 16 Apr 2025 11:07:27 +0530 Subject: [PATCH 38/46] Removing nirfsg out of action workflows --- .github/workflows/github_actions_aws_rhel_python64.yml | 1 - .github/workflows/github_actions_aws_windows_python32.yml | 1 - .github/workflows/github_actions_aws_windows_python64.yml | 1 - 3 files changed, 3 deletions(-) diff --git a/.github/workflows/github_actions_aws_rhel_python64.yml b/.github/workflows/github_actions_aws_rhel_python64.yml index c8c75b094b..f602bb87d9 100644 --- a/.github/workflows/github_actions_aws_rhel_python64.yml +++ b/.github/workflows/github_actions_aws_rhel_python64.yml @@ -38,7 +38,6 @@ jobs: - niscope - niswitch - nitclk - - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python32.yml b/.github/workflows/github_actions_aws_windows_python32.yml index b40b86a958..da695f4bd9 100644 --- a/.github/workflows/github_actions_aws_windows_python32.yml +++ b/.github/workflows/github_actions_aws_windows_python32.yml @@ -41,7 +41,6 @@ jobs: - nimodinst - nise - niswitch - - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 diff --git a/.github/workflows/github_actions_aws_windows_python64.yml b/.github/workflows/github_actions_aws_windows_python64.yml index 68cbb02dc9..79faf63bf2 100644 --- a/.github/workflows/github_actions_aws_windows_python64.yml +++ b/.github/workflows/github_actions_aws_windows_python64.yml @@ -55,7 +55,6 @@ jobs: - nimodinst - nise - niswitch - - nirfsg steps: - name: checkout repository uses: actions/checkout@v3 From 57accc1b07021a3ad4236a2b1347d284cca9ad66 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Thu, 17 Apr 2025 14:05:34 +0530 Subject: [PATCH 39/46] Updated CHANGELOG.md and modified documentation --- CHANGELOG.md | 12 +++-- docs/nirfsg/class.rst | 86 +++++++++++++++--------------- docs/nirfsg/enums.rst | 18 +++++-- generated/nirfsg/nirfsg/enums.py | 12 +++-- generated/nirfsg/nirfsg/session.py | 86 +++++++++++++++--------------- src/nirfsg/metadata/attributes.py | 6 +-- src/nirfsg/metadata/enums.py | 7 +++ src/nirfsg/metadata/functions.py | 24 ++++++--- 8 files changed, 143 insertions(+), 108 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b67ee79e0a..dcbfa61b8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,15 +40,17 @@ All notable changes to this project will be documented in this file. ## Unreleased * ### ALL * #### Added - * Supported array versions of ViRsrc and ViAttr + * Added docs_static/nirfsg_*.inc files for nirfsg * #### Changed - * Updated conf.py to include RTD link for nirfsg + * Updated conf.py.mako to include RTD link for nirfsg. + * Updated about.inc, installation.inc, documentation.inc, README.rst, makefile, tox.ini and tox-travis.ini files to have nirsg generated. * #### Removed * ### `nirfsg` (NI-RFSG) * #### Added - * Enabled nirfsg module support and added metadata for public APIs - * Documentation for APIs - * Added basic system test for nirfsg + * Enabled nirfsg module support and added metadata for selected public APIs + * Added docs_static/nirfsg_*.inc files + * Basic example + * Documentation for APIs (not final) * #### Changed * #### Removed * ### `nidcpower` (NI-DCPower) diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index e208bac332..1c2547323e 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -1176,13 +1176,13 @@ configure_power_level_type Specifies the way the driver interprets the value of the :py:attr:`nirfsg.Session.power_level` property. NI-RFSG sets the :py:attr:`nirfsg.Session.power_level_type` property to this value. - +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Value | Description | - +=============================+==================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ - | **Average Power** (default) | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | - +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **Peak Power** | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. | - +-----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=========================+=======+==================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | Average Power (default) | 7000 | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | + +-------------------------+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Peak Power | 7001 | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. | + +-------------------------+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ :type power_level_type: int @@ -1254,21 +1254,21 @@ configure_ref_clock Specifies the source of Reference Clock signal. - +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Reference Clock Constant | Value | Description | - +===============================================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ - | **:py:data:`~nirfsg.NIRFSG_VAL_ONBOARD_CLOCK_STR` (default)** | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **:py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR`** | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **:py:data:`~nirfsg.ReferenceClockSource.PXI_CLK`** | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | - +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **:py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR`** | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | - +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **:py:data:`~nirfsg.ReferenceClockSource.REF_IN_2`** | RefIn2 | - | - +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **:py:data:`~nirfsg.ReferenceClockSource.PXI_CLK_MASTER`** | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | - +---------------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Reference Clock Constant | Value | Description | + +===========================================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.NIRFSG_VAL_ONBOARD_CLOCK_STR` (default) | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR` | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK` | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | + +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR` | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | + +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2` | RefIn2 | - | + +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK_MASTER` | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -2570,17 +2570,19 @@ send_software_edge_trigger **Defined Values:** - +-----------------------------------------------+----------------+-----------------------------+ - | Name | Value | Description | - +===============================================+================+=============================+ - | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER0` | scriptTrigger0 | Specifies Script Trigger 0. | - +-----------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER1` | scriptTrigger1 | Specifies Script Trigger 1. | - +-----------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER2` | scriptTrigger2 | Specifies Script Trigger 2. | - +-----------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.TriggerIdentifier.TRIGGER3` | scriptTrigger3 | Specifies Script Trigger 3. | - +-----------------------------------------------+----------------+-----------------------------+ + +------------------------------------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +======================================================+================+=============================+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER0` | scriptTrigger0 | Specifies Script Trigger 0. | + +------------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER1` | scriptTrigger1 | Specifies Script Trigger 1. | + +------------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER2` | scriptTrigger2 | Specifies Script Trigger 2. | + +------------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER3` | scriptTrigger3 | Specifies Script Trigger 3. | + +------------------------------------------------------+----------------+-----------------------------+ + | "" (empty string) | | None (no signal to export) | + +------------------------------------------------------+----------------+-----------------------------+ .. note:: One or more of the referenced properties are not in the Python API for this driver. @@ -6399,15 +6401,15 @@ exported_ref_clock_rate **Defined Values**: - +-------------------------------------------------------+---------------------+-------------------------------------+ - | Name | Value | Description | - +=======================================================+=====================+=====================================+ - | :py:data:`~nirfsg.ReferenceClockExportedRate._10mhz` | 10000000 (0x989680) | Uses a 10MHz Reference Clock rate. | - +-------------------------------------------------------+---------------------+-------------------------------------+ - | :py:data:`~nirfsg.ReferenceClockExportedRate._100mhz` | | Uses a 100MHz Reference Clock rate. | - +-------------------------------------------------------+---------------------+-------------------------------------+ - | :py:data:`~nirfsg.ReferenceClockExportedRate._1ghz` | | Uses a 1GHz Reference Clock rate. | - +-------------------------------------------------------+---------------------+-------------------------------------+ + +-------------------------------------------------------+--------------+-------------------------------------+ + | Name | Value | Description | + +=======================================================+==============+=====================================+ + | :py:data:`~nirfsg.ReferenceClockExportedRate._10mhz` | 10000000.0 | Uses a 10MHz Reference Clock rate. | + +-------------------------------------------------------+--------------+-------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportedRate._100mhz` | 100000000.0 | Uses a 100MHz Reference Clock rate. | + +-------------------------------------------------------+--------------+-------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockExportedRate._1ghz` | 1000000000.0 | Uses a 1GHz Reference Clock rate. | + +-------------------------------------------------------+--------------+-------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. diff --git a/docs/nirfsg/enums.rst b/docs/nirfsg/enums.rst index 8e80b72936..f92d567094 100644 --- a/docs/nirfsg/enums.rst +++ b/docs/nirfsg/enums.rst @@ -4747,7 +4747,7 @@ TriggerIdentifier .. py:class:: TriggerIdentifier - .. py:attribute:: TriggerIdentifier.TRIGGER0 + .. py:attribute:: TriggerIdentifier.SCRIPT_TRIGGER0 @@ -4757,7 +4757,7 @@ TriggerIdentifier - .. py:attribute:: TriggerIdentifier.TRIGGER1 + .. py:attribute:: TriggerIdentifier.SCRIPT_TRIGGER1 @@ -4767,7 +4767,7 @@ TriggerIdentifier - .. py:attribute:: TriggerIdentifier.TRIGGER2 + .. py:attribute:: TriggerIdentifier.SCRIPT_TRIGGER2 @@ -4777,7 +4777,7 @@ TriggerIdentifier - .. py:attribute:: TriggerIdentifier.TRIGGER3 + .. py:attribute:: TriggerIdentifier.SCRIPT_TRIGGER3 @@ -4787,6 +4787,16 @@ TriggerIdentifier + .. py:attribute:: TriggerIdentifier.NONE_EMPTY_STRING + + + + None (no signal to export) + + + + + UpconverterFrequencyOffsetMode ------------------------------ diff --git a/generated/nirfsg/nirfsg/enums.py b/generated/nirfsg/nirfsg/enums.py index ec57b1b81f..05cc3a1762 100644 --- a/generated/nirfsg/nirfsg/enums.py +++ b/generated/nirfsg/nirfsg/enums.py @@ -1966,22 +1966,26 @@ class StartedEventExportOutputTerm(Enum): class TriggerIdentifier(Enum): - TRIGGER0 = 'scriptTrigger0' + SCRIPT_TRIGGER0 = 'scriptTrigger0' r''' Specifies Script Trigger 0. ''' - TRIGGER1 = 'scriptTrigger1' + SCRIPT_TRIGGER1 = 'scriptTrigger1' r''' Specifies Script Trigger 1. ''' - TRIGGER2 = 'scriptTrigger2' + SCRIPT_TRIGGER2 = 'scriptTrigger2' r''' Specifies Script Trigger 2. ''' - TRIGGER3 = 'scriptTrigger3' + SCRIPT_TRIGGER3 = 'scriptTrigger3' r''' Specifies Script Trigger 3. ''' + NONE_EMPTY_STRING = '' + r''' + None (no signal to export) + ''' class UpconverterFrequencyOffsetMode(Enum): diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index 2c4c53a7da..cacfcd7a8c 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -2115,15 +2115,15 @@ class _SessionBase(object): **Defined Values**: - +------------------------------------+---------------------+-------------------------------------+ - | Name | Value | Description | - +====================================+=====================+=====================================+ - | ReferenceClockExportedRate._10mhz | 10000000 (0x989680) | Uses a 10MHz Reference Clock rate. | - +------------------------------------+---------------------+-------------------------------------+ - | ReferenceClockExportedRate._100mhz | | Uses a 100MHz Reference Clock rate. | - +------------------------------------+---------------------+-------------------------------------+ - | ReferenceClockExportedRate._1ghz | | Uses a 1GHz Reference Clock rate. | - +------------------------------------+---------------------+-------------------------------------+ + +------------------------------------+--------------+-------------------------------------+ + | Name | Value | Description | + +====================================+==============+=====================================+ + | ReferenceClockExportedRate._10mhz | 10000000.0 | Uses a 10MHz Reference Clock rate. | + +------------------------------------+--------------+-------------------------------------+ + | ReferenceClockExportedRate._100mhz | 100000000.0 | Uses a 100MHz Reference Clock rate. | + +------------------------------------+--------------+-------------------------------------+ + | ReferenceClockExportedRate._1ghz | 1000000000.0 | Uses a 1GHz Reference Clock rate. | + +------------------------------------+--------------+-------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -6038,17 +6038,19 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): **Defined Values:** - +----------------------------+----------------+-----------------------------+ - | Name | Value | Description | - +============================+================+=============================+ - | TriggerIdentifier.TRIGGER0 | scriptTrigger0 | Specifies Script Trigger 0. | - +----------------------------+----------------+-----------------------------+ - | TriggerIdentifier.TRIGGER1 | scriptTrigger1 | Specifies Script Trigger 1. | - +----------------------------+----------------+-----------------------------+ - | TriggerIdentifier.TRIGGER2 | scriptTrigger2 | Specifies Script Trigger 2. | - +----------------------------+----------------+-----------------------------+ - | TriggerIdentifier.TRIGGER3 | scriptTrigger3 | Specifies Script Trigger 3. | - +----------------------------+----------------+-----------------------------+ + +-----------------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +===================================+================+=============================+ + | TriggerIdentifier.SCRIPT_TRIGGER0 | scriptTrigger0 | Specifies Script Trigger 0. | + +-----------------------------------+----------------+-----------------------------+ + | TriggerIdentifier.SCRIPT_TRIGGER1 | scriptTrigger1 | Specifies Script Trigger 1. | + +-----------------------------------+----------------+-----------------------------+ + | TriggerIdentifier.SCRIPT_TRIGGER2 | scriptTrigger2 | Specifies Script Trigger 2. | + +-----------------------------------+----------------+-----------------------------+ + | TriggerIdentifier.SCRIPT_TRIGGER3 | scriptTrigger3 | Specifies Script Trigger 3. | + +-----------------------------------+----------------+-----------------------------+ + | "" (empty string) | | None (no signal to export) | + +-----------------------------------+----------------+-----------------------------+ Note: One or more of the referenced properties are not in the Python API for this driver. @@ -7041,13 +7043,13 @@ def configure_power_level_type(self, power_level_type): Args: power_level_type (int): Specifies the way the driver interprets the value of the power_level property. NI-RFSG sets the power_level_type property to this value. - +-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Value | Description | - +=============================+========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ - | **Average Power** (default) | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | - +-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **Peak Power** | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. | - +-----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-------------------------+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Name | Value | Description | + +=========================+=======+========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | Average Power (default) | 7000 | Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820. | + +-------------------------+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Peak Power | 7001 | Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. | + +-------------------------+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ''' self._interpreter.configure_power_level_type(power_level_type) @@ -7122,21 +7124,21 @@ def configure_ref_clock(self, ref_clock_source, ref_clock_rate): Args: ref_clock_source (str): Specifies the source of Reference Clock signal. - +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Reference Clock Constant | Value | Description | - +============================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ - | **NIRFSG_VAL_ONBOARD_CLOCK_STR (default)** | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **NIRFSG_VAL_REF_IN_STR** | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **ReferenceClockSource.PXI_CLK** | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | - +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **NIRFSG_VAL_CLK_IN_STR** | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | - +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **ReferenceClockSource.REF_IN_2** | RefIn2 | - | - +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | **ReferenceClockSource.PXI_CLK_MASTER** | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | - +--------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Reference Clock Constant | Value | Description | + +========================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | NIRFSG_VAL_ONBOARD_CLOCK_STR (default) | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_REF_IN_STR | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.PXI_CLK | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | + +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_CLK_IN_STR | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | + +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.REF_IN_2 | RefIn2 | - | + +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.PXI_CLK_MASTER | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. diff --git a/src/nirfsg/metadata/attributes.py b/src/nirfsg/metadata/attributes.py index 533fcbff71..2ef722a1ad 100644 --- a/src/nirfsg/metadata/attributes.py +++ b/src/nirfsg/metadata/attributes.py @@ -4534,17 +4534,17 @@ 'table_body': [ [ 'NIRFSG_VAL_10MHZ', - '10000000 (0x989680)', + '10000000.0', 'Uses a 10MHz Reference Clock rate.' ], [ 'NIRFSG_VAL_100MHZ', - '', + '100000000.0', 'Uses a 100MHz Reference Clock rate.' ], [ 'NIRFSG_VAL_1GHZ', - '', + '1000000000.0', 'Uses a 1GHz Reference Clock rate.' ] ], diff --git a/src/nirfsg/metadata/enums.py b/src/nirfsg/metadata/enums.py index 8968957b9d..d8c8fc5496 100644 --- a/src/nirfsg/metadata/enums.py +++ b/src/nirfsg/metadata/enums.py @@ -3753,6 +3753,13 @@ }, 'name': 'NIRFSG_VAL_SCRIPT_TRIGGER3', 'value': 'scriptTrigger3' + }, + { + 'documentation': { + 'description': 'None (no signal to export)' + }, + 'name': 'NIRFSG_VAL_NONE_EMPTY_STRING', + 'value': '' } ] }, diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index a0d1be5d2f..b0ed1ded53 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -1429,15 +1429,18 @@ 'description': ' Specifies the way the driver interprets the value of the NIRFSG_ATTR_POWER_LEVEL attribute. NI-RFSG sets the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute to this value.\n ', 'table_body': [ [ - '**Average Power** (default)', + 'Average Power (default)', + '7000', 'Indicates the desired power averaged in time. The driver maximizes the dynamic range by scaling the I/Q waveform so that its peak magnitude is equal to one. If you write more than one waveform, NI-RFSG scales each waveform without preserving the power level ratio between the waveforms. This value is not valid for the PXIe-5820.' ], [ - '**Peak Power**', + 'Peak Power', + '7001', 'Indicates the maximum power level of the RF signal averaged over one period of the RF carrier frequency (the peak envelope power). This setting requires the magnitude of the I/Q waveform to be less than or equal to one. When using peak power, the power level of the RF signal matches the specified power level at moments when the magnitude of the I/Q waveform equals one. If you write more than one waveform, the relative scaling between waveforms is preserved. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute.' ] ], 'table_header': [ + 'Name', 'Value', 'Description' ] @@ -1573,32 +1576,32 @@ 'description': ' Specifies the source of Reference Clock signal.\n ', 'table_body': [ [ - '**NIRFSG_VAL_ONBOARD_CLOCK_STR (default)**', + 'NIRFSG_VAL_ONBOARD_CLOCK_STR (default)', 'OnboardClock', ' Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument.' ], [ - '**NIRFSG_VAL_REF_IN_STR**', + 'NIRFSG_VAL_REF_IN_STR', 'RefIn', 'Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument.' ], [ - '**NIRFSG_VAL_PXI_CLK_STR**', + 'NIRFSG_VAL_PXI_CLK_STR', 'PXI_CLK', 'Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source.' ], [ - '**NIRFSG_VAL_CLK_IN_STR**', + 'NIRFSG_VAL_CLK_IN_STR', 'ClkIn', 'Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842.' ], [ - '**NIRFSG_VAL_REF_IN_2_STR**', + 'NIRFSG_VAL_REF_IN_2_STR', 'RefIn2', '-' ], [ - '**NIRFSG_VAL_PXI_CLK_MASTER_STR**', + 'NIRFSG_VAL_PXI_CLK_MASTER_STR', 'PXI_ClkMaster', 'This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' ] @@ -4207,6 +4210,11 @@ 'NIRFSG_VAL_SCRIPT_TRIGGER3', 'scriptTrigger3', 'Specifies Script Trigger 3.' + ], + [ + ' "" (empty string)', + '', + 'None (no signal to export)' ] ], 'table_header': [ From 442d3f3486461aa47b5ede1480fb6cb82d10bd89 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Tue, 22 Apr 2025 15:46:05 +0530 Subject: [PATCH 40/46] Resolved review comments --- CHANGELOG.md | 7 +- Makefile | 2 +- build/templates/conf.py.mako | 2 +- build/templates/index.rst.mako | 2 +- docs/nidcpower/index.rst | 2 +- docs/nidigital/index.rst | 2 +- docs/nidmm/index.rst | 2 +- docs/nifgen/index.rst | 2 +- docs/nimodinst/index.rst | 2 +- docs/nirfsg/class.rst | 206 +++++++++++------------ docs/nirfsg/index.rst | 2 +- docs/niscope/index.rst | 2 +- docs/nise/index.rst | 2 +- docs/niswitch/index.rst | 2 +- docs/nitclk/index.rst | 2 +- generated/nirfsg/nirfsg/session.py | 257 ++++++++++++++--------------- src/nirfsg/metadata/__init__.py | 7 - src/nirfsg/metadata/config.py | 3 +- src/nirfsg/metadata/functions.py | 199 +++++++++++----------- 19 files changed, 342 insertions(+), 363 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dcbfa61b8d..7bba22a5d3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,15 +40,12 @@ All notable changes to this project will be documented in this file. ## Unreleased * ### ALL * #### Added - * Added docs_static/nirfsg_*.inc files for nirfsg + * Enabled nirfsg module support * #### Changed - * Updated conf.py.mako to include RTD link for nirfsg. - * Updated about.inc, installation.inc, documentation.inc, README.rst, makefile, tox.ini and tox-travis.ini files to have nirsg generated. * #### Removed * ### `nirfsg` (NI-RFSG) * #### Added - * Enabled nirfsg module support and added metadata for selected public APIs - * Added docs_static/nirfsg_*.inc files + * Added metadata for selected public APIs * Basic example * Documentation for APIs (not final) * #### Changed diff --git a/Makefile b/Makefile index 2425a5e17e..bfbf7bf114 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # In alphabetical order except put nifake first and nimodinst/nitclk last # - nifake first to get the most code generator coverage # - nimodinst last so that the version from nimodinst is used for any global versions (docs/conf.py) -ALL_DRIVERS := nifake nirfsg nidcpower nidigital nidmm nifgen niscope niswitch nise nimodinst nitclk +ALL_DRIVERS := nifake nidcpower nidigital nidmm nifgen nirfsg niscope niswitch nise nimodinst nitclk DRIVERS ?= $(ALL_DRIVERS) ROOT_DIR := $(abspath .) diff --git a/build/templates/conf.py.mako b/build/templates/conf.py.mako index d2ed1d9724..8897db8adc 100644 --- a/build/templates/conf.py.mako +++ b/build/templates/conf.py.mako @@ -10,7 +10,7 @@ api_name = f"{config['driver_name']} Python API" api_name_no_spaces_or_hyphens = api_name.replace(" ", "").replace("-", "") api_name_no_spaces_or_hyphens_lower = api_name_no_spaces_or_hyphens.lower() -all_modules = {'nidcpower', 'nidigital', 'nidmm', 'nifgen', 'nimodinst', 'niscope', 'niswitch', 'nise', 'nitclk', 'nirfsg'} +all_modules = {'nidcpower', 'nidigital', 'nidmm', 'nifgen', 'nimodinst', 'nirfsg', 'niscope', 'niswitch', 'nise', 'nitclk'} module_name = config['module_name'] external_modules = all_modules - {module_name} %>\ diff --git a/build/templates/index.rst.mako b/build/templates/index.rst.mako index bdd2a78bfb..01cf906268 100644 --- a/build/templates/index.rst.mako +++ b/build/templates/index.rst.mako @@ -25,7 +25,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nidcpower/index.rst b/docs/nidcpower/index.rst index 2a68c96659..e3316ff9ea 100644 --- a/docs/nidcpower/index.rst +++ b/docs/nidcpower/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nidigital/index.rst b/docs/nidigital/index.rst index e743cca9c5..99a79bfddb 100644 --- a/docs/nidigital/index.rst +++ b/docs/nidigital/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nidmm/index.rst b/docs/nidmm/index.rst index 05d0f629db..61adbcbe74 100644 --- a/docs/nidmm/index.rst +++ b/docs/nidmm/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nifgen/index.rst b/docs/nifgen/index.rst index 2e348cf87a..79135d4538 100644 --- a/docs/nifgen/index.rst +++ b/docs/nifgen/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nimodinst/index.rst b/docs/nimodinst/index.rst index d797664e42..ba7846d7a3 100644 --- a/docs/nimodinst/index.rst +++ b/docs/nimodinst/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nirfsg/class.rst b/docs/nirfsg/class.rst index 1c2547323e..c35091f21e 100644 --- a/docs/nirfsg/class.rst +++ b/docs/nirfsg/class.rst @@ -11,7 +11,7 @@ Session This method also configures the device through the **:py:attr:`nirfsg.Session.OPTION_STRING`** input. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -46,7 +46,7 @@ Session Specifies whether you want NI-RFSG to perform an ID query. - **Defined Values**: + **Defined Values** : +-----------+--------------------------+ | Value | Description | @@ -64,7 +64,7 @@ Session Specifies whether you want to reset the NI-RFSG device during the initialization procedure. - **Defined Values**: + **Defined Values** : +-----------+----------------------+ | Value | Description | @@ -124,7 +124,7 @@ abort Stops signal generation. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -147,7 +147,7 @@ allocate_arb_waveform The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -474,7 +474,7 @@ check_generation_status Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. - **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -492,7 +492,7 @@ check_generation_status Returns information about the completion of signal generation. - **Defined Values**: + **Defined Values** : +-------+---------------------------------+ | Value | Description | @@ -513,7 +513,7 @@ check_if_script_exists Returns whether the script that you specify as **:py:attr:`nirfsg.Session.SCRIPT_NAME`** exists. - **Supported Devices**: PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860 + **Supported Devices** : PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860 @@ -537,7 +537,7 @@ check_if_script_exists Returns True if the script exists. - **Defined Values**: + **Defined Values** : +-------+----------------------------+ | Value | Description | @@ -558,7 +558,7 @@ check_if_waveform_exists Returns whether the waveform that you specify as **:py:attr:`nirfsg.Session.WAVEFORM_NAME`** exists. - **Supported Devices**: PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860 + **Supported Devices** : PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860 @@ -582,7 +582,7 @@ check_if_waveform_exists Returns True if the waveform exists. - **Defined Values**: + **Defined Values** : +-------+------------------------------+ | Value | Description | @@ -605,7 +605,7 @@ clear_all_arb_waveforms The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -622,7 +622,7 @@ clear_arb_waveform The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -651,7 +651,7 @@ clear_error The IVI Engine also maintains this error information separately for each thread. This feature of the IVI Engine is useful if you do not have a session handle to pass to the :py:meth:`nirfsg.Session.clear_error` method or the :py:meth:`nirfsg.Session.get_error` method, which occurs when a call to the :py:meth:`nirfsg.Session.Init` method or the :py:meth:`nirfsg.Session.__init__` method fails. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 @@ -670,7 +670,7 @@ clear_self_calibrate_range Clears the data obtained from the :py:meth:`nirfsg.Session.self_calibrate_range` method. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 @@ -685,7 +685,7 @@ close Aborts any signal generation in progress and destroys the instrument driver session. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -710,7 +710,7 @@ commit Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. - **Supported devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -731,7 +731,7 @@ configure_deembedding_table_interpolation_linear If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -784,7 +784,7 @@ configure_deembedding_table_interpolation_nearest NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -820,7 +820,7 @@ configure_deembedding_table_interpolation_spline If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -858,7 +858,7 @@ configure_digital_edge_script_trigger The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -909,7 +909,7 @@ configure_digital_edge_start_trigger The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -953,7 +953,7 @@ configure_digital_level_script_trigger The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1002,7 +1002,7 @@ configure_digital_modulation_user_defined_waveform Specifies the message signal used for digital modulation when the :py:attr:`nirfsg.Session.digital_modulation_waveform_type` property is set to :py:data:`~nirfsg.NIRFSG_VAL_USER_DEFINED`. - **Supported Devices**: PXI/PXIe-5650/5651/5652 + **Supported Devices** : PXI/PXIe-5650/5651/5652 @@ -1040,7 +1040,7 @@ configure_generation_mode The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1057,7 +1057,7 @@ configure_generation_mode Specifies the mode used by NI-RFSG for generating an RF output signal. - **Default Value**: :py:data:`~nirfsg.GenerationMode.CW` + **Default Value** : :py:data:`~nirfsg.GenerationMode.CW` **Defined Values** : @@ -1089,7 +1089,7 @@ configure_output_enabled Setting **:py:attr:`nirfsg.Session.output_enabled`** to False while in the Generation state attenuates the generated signal so that no signal is output. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1124,7 +1124,7 @@ configure_p2_p_endpoint_fullness_start_trigger Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the **:py:attr:`nirfsg.Session.P2P_ENDPOINT_FULLNESS_LEVEL`** parameter. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 **Related Topics** @@ -1159,7 +1159,7 @@ configure_power_level_type In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the :py:attr:`nirfsg.Session.arb_waveform_software_scaling_factor` property. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1198,7 +1198,7 @@ configure_pxi_chassis_clk10 This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXI-5610, PXI-5670/5671 + **Supported Devices** : PXI-5610, PXI-5670/5671 **Related Topics** @@ -1231,7 +1231,7 @@ configure_ref_clock The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1254,21 +1254,21 @@ configure_ref_clock Specifies the source of Reference Clock signal. - +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Reference Clock Constant | Value | Description | - +===========================================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ - | :py:data:`~nirfsg.NIRFSG_VAL_ONBOARD_CLOCK_STR` (default) | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR` | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK` | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | - +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR` | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | - +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2` | RefIn2 | - | - +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK_MASTER` | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | - +-----------------------------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +-----------------------------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Reference Clock Constant | Value | Description | + +===========================================================+===============+=================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | :py:data:`~nirfsg.NIRFSG_VAL_ONBOARD_CLOCK_STR` (default) | OnboardClock | Uses the onboard Reference Clock as the clock source. **PXIe-5830/5831/5832** :For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. **PXIe-5831 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. **PXIe-5832 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. **PXIe-5841 with PXIe-5655** :Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector. **PXIe-5842** :Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +-----------------------------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_REF_IN_STR` | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source. **PXIe-5830/5831/5832** :For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector. **PXIe-5831 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5832 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5841 with PXIe-5655** :Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector. **PXIe-5842** :Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +-----------------------------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK` | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | + +-----------------------------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.NIRFSG_VAL_CLK_IN_STR` | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | + +-----------------------------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.REF_IN_2` | RefIn2 | - | + +-----------------------------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | :py:data:`~nirfsg.ReferenceClockSource.PXI_CLK_MASTER` | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653. **PXIe-5831 with PXIe-5653** :NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. **PXIe-5832 with PXIe-5653** :NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +-----------------------------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. note:: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -1297,7 +1297,7 @@ configure_rf The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1312,7 +1312,7 @@ configure_rf Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal. - **Units**: hertz (Hz) + **Units** : hertz (Hz) @@ -1323,7 +1323,7 @@ configure_rf Specifies either the average power level or peak power level of the generated RF signal, depending on the :py:attr:`nirfsg.Session.power_level_type` property. - **Units**: dBm + **Units** : dBm @@ -1343,7 +1343,7 @@ configure_signal_bandwidth NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0Hz. In such cases, the signal bandwidth is simply the baseband signal minimum frequency subtracted from its maximum frequency, or *f* max minus *f* min. NI-RFSG uses this value to optimally configure the center frequency of the upconverter to help minimize phase noise. The generated signal is not filtered to achieve the set bandwidth. However, specifying a bandwidth smaller than the actual bandwidth of the signal could potentially result in spectral distortion. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -1372,7 +1372,7 @@ configure_software_script_trigger Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1405,7 +1405,7 @@ configure_software_start_trigger Refer to the :py:meth:`nirfsg.Session.send_software_edge_trigger` method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -1430,7 +1430,7 @@ create_deembedding_sparameter_table_s2_p_file If you only create one table for a port, NI-RFSG automatically selects that table to de-embed the measurement. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1494,7 +1494,7 @@ delete_all_deembedding_tables Deletes all configured de-embedding tables for the session. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -1509,7 +1509,7 @@ delete_deembedding_table Deletes the selected de-embedding table for a given port. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -1543,7 +1543,7 @@ disable Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E @@ -1560,7 +1560,7 @@ disable_script_trigger Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1591,7 +1591,7 @@ disable_start_trigger This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1614,7 +1614,7 @@ export_signal You can clear a previously routed signal by exporting the signal to "" (empty string). - **Supported Devices**:PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** :PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1667,13 +1667,13 @@ export_signal +-----------------------------------------------------+----------------+-----------------------------+ | Name | Value | Description | +=====================================================+================+=============================+ - | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT0` | | Specifies Marker 0. | + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT0` | marker0 | Specifies Marker 0. | +-----------------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT1` | | Specifies Marker 1. | + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT1` | marker1 | Specifies Marker 1. | +-----------------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT2` | | Specifies Marker 2. | + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT2` | marker2 | Specifies Marker 2. | +-----------------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT3` | | Specifies Marker 3. | + | :py:data:`~nirfsg.SignalIdentifier.MARKER_EVENT3` | marker3 | Specifies Marker 3. | +-----------------------------------------------------+----------------+-----------------------------+ | :py:data:`~nirfsg.SignalIdentifier.SCRIPT_TRIGGER0` | scriptTrigger0 | Specifies Script Trigger 0. | +-----------------------------------------------------+----------------+-----------------------------+ @@ -1721,7 +1721,7 @@ get_error Retrieves and then clears the IVI error information for the session or the current execution thread. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 @@ -1786,7 +1786,7 @@ get_max_settable_power Returns the maximum settable output power level for the current configuration. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 @@ -1832,7 +1832,7 @@ get_self_calibration_temperature Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. - **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860 @@ -1842,7 +1842,7 @@ get_self_calibration_temperature Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. - **Default Value**: :py:data:`~nirfsg.Module.PRIMARY_MODULE` + **Default Value** : :py:data:`~nirfsg.Module.PRIMARY_MODULE` **Defined Values** : +------------------------------------------+----------------+---------------------------------------------------------------------+ @@ -1877,7 +1877,7 @@ get_stream_endpoint_handle Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint. - **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 **Related Topics** @@ -1920,7 +1920,7 @@ initiate If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the :py:meth:`nirfsg.Session.abort` method. - **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -1943,7 +1943,7 @@ load_configurations_from_file The VI does an implicit reset before loading the configurations from the file. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2028,7 +2028,7 @@ perform_power_search Calling this method disables modulation for a short time while the device levels the output signal. - **Supported Devices**: PXIe-5654 with PXIe-5696 + **Supported Devices** : PXIe-5654 with PXIe-5696 **Related Topics** @@ -2053,7 +2053,7 @@ perform_thermal_correction Use this method when generating the same signal for an extended period of time in a temperature-fluctuating environment. The NI-RFSG device must be in the Generation state before calling this method. - **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -2076,7 +2076,7 @@ query_arb_waveform_capabilities These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2143,7 +2143,7 @@ read_and_download_waveform_from_file_tdms If RF blanking marker locations are present in the file but burst locations are not present, burst locations are calculated from RF blanking marker locations and stored in the NI-RFSG session. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 @@ -2196,7 +2196,7 @@ reset To avoid resetting routes on the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 that are in use by NI-RFSA sessions, NI recommends using the :py:meth:`nirfsg.Session.ResetWithOptions` method, with **stepsToOmit** set to :py:data:`~nirfsg.ResetWithOptionsStepsToOmit.ROUTES` . - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2213,7 +2213,7 @@ reset_attribute Resets the property to its default value. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2259,7 +2259,7 @@ reset_device - PXI-5610, PXI-5670/5671, PXIe-5672-- After calling this method, the device requires 25 seconds before returning to full functionality. NI-RFSG enforces this condition by adding a wait, if needed, the next time you try to access the device. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E **Related Topics** @@ -2280,7 +2280,7 @@ reset_with_defaults Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E @@ -2295,7 +2295,7 @@ save_configurations_to_file Saves the configurations of the session to the specified file. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2332,7 +2332,7 @@ select_arb_waveform You must specify a waveform using the :py:attr:`nirfsg.Session.NAME` parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -2367,7 +2367,7 @@ self_cal The PXIe-5841 maintains separate self-calibration data for both the PXIe-5841 standalone and when associated with the PXIe-5655. Use this method once for each intended configuration. - **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2390,7 +2390,7 @@ self_calibrate_range For best results, NI recommends that you perform self-calibration without omitting any steps. However, if certain aspects of performance are less important for your application, you can omit certain steps for faster calibration. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 @@ -2407,7 +2407,7 @@ self_calibrate_range Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. - **Default Value**: :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.OMIT_NONE` + **Default Value** : :py:data:`~nirfsg.SelfCalibrateRangeStepsToOmit.OMIT_NONE` **Defined Values:** @@ -2481,7 +2481,7 @@ self_test This method does not affect external I/O connections or connections between devices. Complete functional testing and calibration are not performed by this method. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -2530,7 +2530,7 @@ send_software_edge_trigger The specified trigger generates regardless of whether the trigger has been configured as a software trigger. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -2570,19 +2570,19 @@ send_software_edge_trigger **Defined Values:** - +------------------------------------------------------+----------------+-----------------------------+ - | Name | Value | Description | - +======================================================+================+=============================+ - | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER0` | scriptTrigger0 | Specifies Script Trigger 0. | - +------------------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER1` | scriptTrigger1 | Specifies Script Trigger 1. | - +------------------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER2` | scriptTrigger2 | Specifies Script Trigger 2. | - +------------------------------------------------------+----------------+-----------------------------+ - | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER3` | scriptTrigger3 | Specifies Script Trigger 3. | - +------------------------------------------------------+----------------+-----------------------------+ - | "" (empty string) | | None (no signal to export) | - +------------------------------------------------------+----------------+-----------------------------+ + +--------------------------------------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +========================================================+================+=============================+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER0` | scriptTrigger0 | Specifies Script Trigger 0. | + +--------------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER1` | scriptTrigger1 | Specifies Script Trigger 1. | + +--------------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER2` | scriptTrigger2 | Specifies Script Trigger 2. | + +--------------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.SCRIPT_TRIGGER3` | scriptTrigger3 | Specifies Script Trigger 3. | + +--------------------------------------------------------+----------------+-----------------------------+ + | :py:data:`~nirfsg.TriggerIdentifier.NONE_EMPTY_STRING` | | None (no signal to export) | + +--------------------------------------------------------+----------------+-----------------------------+ .. note:: One or more of the referenced properties are not in the Python API for this driver. @@ -2602,7 +2602,7 @@ set_arb_waveform_next_write_position This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the :py:meth:`nirfsg.Session.allocate_arb_waveform` method or the :py:meth:`nirfsg.Session.WriteArbWaveform` method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2672,7 +2672,7 @@ wait_until_settled You can also call this method after calling the :py:meth:`nirfsg.Session.commit` method to wait for changes to settle. The :py:meth:`nirfsg.Session.wait_until_settled` method is not required after calling the :py:meth:`nirfsg.Session._initiate` method because the :py:meth:`nirfsg.Session._initiate` automatically waits for the output to settle. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -2683,7 +2683,7 @@ wait_until_settled Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. - **Default Value**: 10000 + **Default Value** : 10000 @@ -2701,7 +2701,7 @@ write_p2_p_endpoint_i16 Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. - **Supported Devices**: PXIe-5673E + **Supported Devices** : PXIe-5673E **Related Topics** @@ -2756,7 +2756,7 @@ write_script First, configure your device for Script mode by calling the :py:meth:`nirfsg.Session.configure_generation_mode` method. The NI-RFSG device must be in the Configuration state before calling the :py:meth:`nirfsg.Session.write_script` method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** diff --git a/docs/nirfsg/index.rst b/docs/nirfsg/index.rst index 2ab3c1f3d8..b8e53fff98 100644 --- a/docs/nirfsg/index.rst +++ b/docs/nirfsg/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/niscope/index.rst b/docs/niscope/index.rst index 36274bcfee..0f3242acad 100644 --- a/docs/niscope/index.rst +++ b/docs/niscope/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nise/index.rst b/docs/nise/index.rst index 5221cda293..15817aa287 100644 --- a/docs/nise/index.rst +++ b/docs/nise/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/niswitch/index.rst b/docs/niswitch/index.rst index ac28a61bd0..94561485dd 100644 --- a/docs/niswitch/index.rst +++ b/docs/niswitch/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nitclk/index.rst b/docs/nitclk/index.rst index 508cec06b4..2f0e654f64 100644 --- a/docs/nitclk/index.rst +++ b/docs/nitclk/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/generated/nirfsg/nirfsg/session.py b/generated/nirfsg/nirfsg/session.py index cacfcd7a8c..c81c41bad1 100644 --- a/generated/nirfsg/nirfsg/session.py +++ b/generated/nirfsg/nirfsg/session.py @@ -5789,7 +5789,7 @@ def _get_waveform_burst_start_locations(self, number_of_locations): Returns the burst start locations of the waveform stored in the NI-RFSG session. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5826,7 +5826,7 @@ def _get_waveform_burst_stop_locations(self, number_of_locations): Returns the burst stop locations of the waveform stored in the NI-RFSG session. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5863,7 +5863,7 @@ def _get_waveform_marker_event_locations(self, number_of_locations): Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5899,7 +5899,7 @@ def load_configurations_from_file(self, file_path): The VI does an implicit reset before loading the configurations from the file. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5958,7 +5958,7 @@ def reset_attribute(self, attribute_id): Resets the property to its default value. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -5982,7 +5982,7 @@ def save_configurations_to_file(self, file_path): Saves the configurations of the session to the specified file. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -6008,7 +6008,7 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): The specified trigger generates regardless of whether the trigger has been configured as a software trigger. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6038,19 +6038,19 @@ def send_software_edge_trigger(self, trigger, trigger_identifier): **Defined Values:** - +-----------------------------------+----------------+-----------------------------+ - | Name | Value | Description | - +===================================+================+=============================+ - | TriggerIdentifier.SCRIPT_TRIGGER0 | scriptTrigger0 | Specifies Script Trigger 0. | - +-----------------------------------+----------------+-----------------------------+ - | TriggerIdentifier.SCRIPT_TRIGGER1 | scriptTrigger1 | Specifies Script Trigger 1. | - +-----------------------------------+----------------+-----------------------------+ - | TriggerIdentifier.SCRIPT_TRIGGER2 | scriptTrigger2 | Specifies Script Trigger 2. | - +-----------------------------------+----------------+-----------------------------+ - | TriggerIdentifier.SCRIPT_TRIGGER3 | scriptTrigger3 | Specifies Script Trigger 3. | - +-----------------------------------+----------------+-----------------------------+ - | "" (empty string) | | None (no signal to export) | - +-----------------------------------+----------------+-----------------------------+ + +-------------------------------------+----------------+-----------------------------+ + | Name | Value | Description | + +=====================================+================+=============================+ + | TriggerIdentifier.SCRIPT_TRIGGER0 | scriptTrigger0 | Specifies Script Trigger 0. | + +-------------------------------------+----------------+-----------------------------+ + | TriggerIdentifier.SCRIPT_TRIGGER1 | scriptTrigger1 | Specifies Script Trigger 1. | + +-------------------------------------+----------------+-----------------------------+ + | TriggerIdentifier.SCRIPT_TRIGGER2 | scriptTrigger2 | Specifies Script Trigger 2. | + +-------------------------------------+----------------+-----------------------------+ + | TriggerIdentifier.SCRIPT_TRIGGER3 | scriptTrigger3 | Specifies Script Trigger 3. | + +-------------------------------------+----------------+-----------------------------+ + | TriggerIdentifier.NONE_EMPTY_STRING | | None (no signal to export) | + +-------------------------------------+----------------+-----------------------------+ Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6095,11 +6095,7 @@ def _set_attribute_vi_boolean(self, attribute, value): value (bool): Pass the value to which you want to set the property. - -
- Some values may not be valid. The allowed values depend on the current settings of the instrument session. - -
+ Note: Some values may not be valid. The allowed values depend on the current settings of the instrument session. ''' self._interpreter.set_attribute_vi_boolean(self._repeated_capability, attribute, value) @@ -6134,10 +6130,7 @@ def _set_attribute_vi_int32(self, attribute, value): value (int): Specifies the value to which you want to set the property. - -
- Some values may not be valid. The allowed values depend on the current settings of the instrument session. -
+ Note: Some values may not be valid. The allowed values depend on the current settings of the instrument session. ''' self._interpreter.set_attribute_vi_int32(self._repeated_capability, attribute, value) @@ -6209,11 +6202,7 @@ def _set_attribute_vi_real64(self, attribute, value): value (float): Pass the value to which you want to set the property. - -
- - Some values may not be valid. The allowed values depend on the current settings of the instrument session. -
+ Note: Some values may not be valid. The allowed values depend on the current settings of the instrument session. ''' self._interpreter.set_attribute_vi_real64(self._repeated_capability, attribute, value) @@ -6279,11 +6268,7 @@ def _set_attribute_vi_string(self, attribute, value): value (str): Pass the value to which you want to set the property. - -
- Some values may not be valid. The allowed values depend on the current settings of the instrument session. - -
+ Note: Some values may not be valid. The allowed values depend on the current settings of the instrument session. ''' self._interpreter.set_attribute_vi_string(self._repeated_capability, attribute, value) @@ -6293,7 +6278,7 @@ def _set_waveform_burst_start_locations(self, number_of_locations): Configures the start location of the burst in samples where the burst refers to the active portion of a waveform. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -6325,7 +6310,7 @@ def _set_waveform_burst_stop_locations(self, number_of_locations): Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -6354,7 +6339,7 @@ def _set_waveform_marker_event_locations(self, number_of_locations): Configures the marker locations associated with waveform and marker in the NI-RFSG session. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 Tip: This method can be called on specific channels within your :py:class:`nirfsg.Session` instance. @@ -6389,16 +6374,16 @@ def unlock(self): class Session(_SessionBase): - '''An NI-RFSG session to the RFSG driver''' + '''An NI-RFSG session to the NI-RFSG driver''' def __init__(self, resource_name, id_query, reset_device, options={}): - r'''An NI-RFSG session to the RFSG driver + r'''An NI-RFSG session to the NI-RFSG driver Opens a session to the device you specify as the **RESOURCE_NAME** and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG method calls. This method also configures the device through the **OPTION_STRING** input. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6420,7 +6405,7 @@ def __init__(self, resource_name, id_query, reset_device, options={}): id_query (bool): Specifies whether you want NI-RFSG to perform an ID query. - **Defined Values**: + **Defined Values** : +-----------+--------------------------+ | Value | Description | @@ -6432,7 +6417,7 @@ def __init__(self, resource_name, id_query, reset_device, options={}): reset_device (bool): Specifies whether you want to reset the NI-RFSG device during the initialization procedure. - **Defined Values**: + **Defined Values** : +-----------+----------------------+ | Value | Description | @@ -6528,7 +6513,7 @@ def initiate(self): If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. - **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6544,7 +6529,7 @@ def close(self): Aborts any signal generation in progress and destroys the instrument driver session. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6569,7 +6554,7 @@ def abort(self): Stops signal generation. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6586,7 +6571,7 @@ def allocate_arb_waveform(self, waveform_name, size_in_samples): The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6622,7 +6607,7 @@ def check_generation_status(self): Call this method to check for any errors that might occur during the signal generation or to check whether the device has finished generating. - **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6633,7 +6618,7 @@ def check_generation_status(self): Returns: is_done (bool): Returns information about the completion of signal generation. - **Defined Values**: + **Defined Values** : +-------+---------------------------------+ | Value | Description | @@ -6652,7 +6637,7 @@ def check_if_script_exists(self, script_name): Returns whether the script that you specify as **SCRIPT_NAME** exists. - **Supported Devices**: PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860 + **Supported Devices** : PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860 Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6664,7 +6649,7 @@ def check_if_script_exists(self, script_name): Returns: script_exists (bool): Returns True if the script exists. - **Defined Values**: + **Defined Values** : +-------+----------------------------+ | Value | Description | @@ -6683,7 +6668,7 @@ def check_if_waveform_exists(self, waveform_name): Returns whether the waveform that you specify as **WAVEFORM_NAME** exists. - **Supported Devices**: PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860 + **Supported Devices** : PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860 Note: One or more of the referenced properties are not in the Python API for this driver. @@ -6695,7 +6680,7 @@ def check_if_waveform_exists(self, waveform_name): Returns: waveform_exists (bool): Returns True if the waveform exists. - **Defined Values**: + **Defined Values** : +-------+------------------------------+ | Value | Description | @@ -6716,7 +6701,7 @@ def clear_all_arb_waveforms(self): The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 ''' self._interpreter.clear_all_arb_waveforms() @@ -6727,7 +6712,7 @@ def clear_arb_waveform(self, name): The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Args: name (str): Name of the stored waveform to delete. @@ -6744,7 +6729,7 @@ def clear_error(self): The IVI Engine also maintains this error information separately for each thread. This feature of the IVI Engine is useful if you do not have a session handle to pass to the clear_error method or the get_error method, which occurs when a call to the Init method or the __init__ method fails. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860 Note: The get_error method clears the error information after it is retrieved. A call to the clear_error method is necessary only when you do not use a call to the get_error method to retrieve error information. @@ -6758,7 +6743,7 @@ def clear_self_calibrate_range(self): Clears the data obtained from the self_calibrate_range method. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 ''' self._interpreter.clear_self_calibrate_range() @@ -6769,7 +6754,7 @@ def commit(self): Calling this method moves the NI-RFSG device from the Configuration state to the Committed state. After this method executes, a change to any property reverts the NI-RFSG device to the Configuration state. - **Supported devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6784,7 +6769,7 @@ def configure_deembedding_table_interpolation_linear(self, port, table_name, for If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 Args: port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -6815,7 +6800,7 @@ def configure_deembedding_table_interpolation_nearest(self, port, table_name): NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 Args: port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -6832,7 +6817,7 @@ def configure_deembedding_table_interpolation_spline(self, port, table_name): If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 Args: port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -6851,7 +6836,7 @@ def configure_digital_edge_script_trigger(self, trigger_id, source, edge): The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6876,7 +6861,7 @@ def configure_digital_edge_start_trigger(self, source, edge): The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6901,7 +6886,7 @@ def configure_digital_level_script_trigger(self, trigger_id, source, level): The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6924,7 +6909,7 @@ def configure_digital_modulation_user_defined_waveform(self, number_of_samples, Specifies the message signal used for digital modulation when the digital_modulation_waveform_type property is set to NIRFSG_VAL_USER_DEFINED. - **Supported Devices**: PXI/PXIe-5650/5651/5652 + **Supported Devices** : PXI/PXIe-5650/5651/5652 Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -6944,7 +6929,7 @@ def configure_generation_mode(self, generation_mode): The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -6955,7 +6940,7 @@ def configure_generation_mode(self, generation_mode): Args: generation_mode (enums.GenerationMode): Specifies the mode used by NI-RFSG for generating an RF output signal. - **Default Value**: GenerationMode.CW + **Default Value** : GenerationMode.CW **Defined Values** : @@ -6985,7 +6970,7 @@ def configure_output_enabled(self, output_enabled): Setting **output_enabled** to False while in the Generation state attenuates the generated signal so that no signal is output. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7008,7 +6993,7 @@ def configure_p2_p_endpoint_fullness_start_trigger(self, p2p_endpoint_fullness_l Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the **P2P_ENDPOINT_FULLNESS_LEVEL** parameter. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 **Related Topics** @@ -7032,7 +7017,7 @@ def configure_power_level_type(self, power_level_type): In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the arb_waveform_software_scaling_factor property. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7061,7 +7046,7 @@ def configure_pxi_chassis_clk10(self, pxi_clk10_source): This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXI-5610, PXI-5670/5671 + **Supported Devices** : PXI-5610, PXI-5670/5671 **Related Topics** @@ -7082,7 +7067,7 @@ def configure_rf(self, frequency, power_level): The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this method. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7091,11 +7076,11 @@ def configure_rf(self, frequency, power_level): Args: frequency (float): Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal. - **Units**: hertz (Hz) + **Units** : hertz (Hz) power_level (float): Specifies either the average power level or peak power level of the generated RF signal, depending on the power_level_type property. - **Units**: dBm + **Units** : dBm ''' self._interpreter.configure_rf(frequency, power_level) @@ -7107,7 +7092,7 @@ def configure_ref_clock(self, ref_clock_source, ref_clock_rate): The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7124,21 +7109,21 @@ def configure_ref_clock(self, ref_clock_source, ref_clock_rate): Args: ref_clock_source (str): Specifies the source of Reference Clock signal. - +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | Reference Clock Constant | Value | Description | - +========================================+===============+===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ - | NIRFSG_VAL_ONBOARD_CLOCK_STR (default) | OnboardClock | Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | NIRFSG_VAL_REF_IN_STR | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | - +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ReferenceClockSource.PXI_CLK | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | - +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | NIRFSG_VAL_CLK_IN_STR | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | - +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ReferenceClockSource.REF_IN_2 | RefIn2 | - | - +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | ReferenceClockSource.PXI_CLK_MASTER | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | - +----------------------------------------+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +----------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Reference Clock Constant | Value | Description | + +========================================+===============+=================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================+ + | NIRFSG_VAL_ONBOARD_CLOCK_STR (default) | OnboardClock | Uses the onboard Reference Clock as the clock source. **PXIe-5830/5831/5832** :For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. **PXIe-5831 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. **PXIe-5832 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. **PXIe-5841 with PXIe-5655** :Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector. **PXIe-5842** :Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +----------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_REF_IN_STR | RefIn | Uses the clock signal present at the front panel REF IN connector as the clock source. **PXIe-5830/5831/5832** :For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector. **PXIe-5831 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5832 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5841 with PXIe-5655** :Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector. **PXIe-5842** :Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument. | + +----------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.PXI_CLK | PXI_CLK | Uses the PXI_CLK signal, which is present on the PXI backplane, as the clock source. | + +----------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | NIRFSG_VAL_CLK_IN_STR | ClkIn | Uses the clock signal present at the front panel CLK IN connector as the clock source. This value is not valid for the PXIe-5644/5645/5646 or PXIe-5820/5830/5831/5831 with PXIe-5653/5832/5832 with PXIe-5653/5840/5841/5841 with PXIe-5655/5842. | + +----------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.REF_IN_2 | RefIn2 | - | + +----------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | ReferenceClockSource.PXI_CLK_MASTER | PXI_ClkMaster | This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653. **PXIe-5831 with PXIe-5653** :NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. **PXIe-5832 with PXIe-5653** :NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. | + +----------------------------------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Note: One or more of the referenced values are not in the Python API for this driver. Enums that only define values, or represent True/False, have been removed. @@ -7160,7 +7145,7 @@ def configure_signal_bandwidth(self, signal_bandwidth): NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0Hz. In such cases, the signal bandwidth is simply the baseband signal minimum frequency subtracted from its maximum frequency, or *f* max minus *f* min. NI-RFSG uses this value to optimally configure the center frequency of the upconverter to help minimize phase noise. The generated signal is not filtered to achieve the set bandwidth. However, specifying a bandwidth smaller than the actual bandwidth of the signal could potentially result in spectral distortion. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Note: Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband. @@ -7177,7 +7162,7 @@ def configure_software_script_trigger(self, trigger_id): Refer to the send_software_edge_trigger method for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7198,7 +7183,7 @@ def configure_software_start_trigger(self): Refer to the send_software_edge_trigger method for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 @@ -7217,7 +7202,7 @@ def create_deembedding_sparameter_table_s2_p_file(self, port, table_name, s2p_fi If you only create one table for a port, NI-RFSG automatically selects that table to de-embed the measurement. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7252,7 +7237,7 @@ def delete_all_deembedding_tables(self): Deletes all configured de-embedding tables for the session. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 ''' self._interpreter.delete_all_deembedding_tables() @@ -7261,7 +7246,7 @@ def delete_deembedding_table(self, port, table_name): Deletes the selected de-embedding table for a given port. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 Args: port (str): Specifies the name of the port. The only valid value for the PXIe-5840/5841/5842/5860 is "" (empty string). @@ -7276,7 +7261,7 @@ def disable(self): Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E ''' self._interpreter.disable() @@ -7287,7 +7272,7 @@ def disable_script_trigger(self, trigger_id): Call this method only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7306,7 +7291,7 @@ def disable_start_trigger(self): This method is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7323,7 +7308,7 @@ def export_signal(self, signal, signal_identifier, output_terminal): You can clear a previously routed signal by exporting the signal to "" (empty string). - **Supported Devices**:PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** :PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7366,13 +7351,13 @@ def export_signal(self, signal, signal_identifier, output_terminal): +----------------------------------+----------------+-----------------------------+ | Name | Value | Description | +==================================+================+=============================+ - | SignalIdentifier.MARKER_EVENT0 | | Specifies Marker 0. | + | SignalIdentifier.MARKER_EVENT0 | marker0 | Specifies Marker 0. | +----------------------------------+----------------+-----------------------------+ - | SignalIdentifier.MARKER_EVENT1 | | Specifies Marker 1. | + | SignalIdentifier.MARKER_EVENT1 | marker1 | Specifies Marker 1. | +----------------------------------+----------------+-----------------------------+ - | SignalIdentifier.MARKER_EVENT2 | | Specifies Marker 2. | + | SignalIdentifier.MARKER_EVENT2 | marker2 | Specifies Marker 2. | +----------------------------------+----------------+-----------------------------+ - | SignalIdentifier.MARKER_EVENT3 | | Specifies Marker 3. | + | SignalIdentifier.MARKER_EVENT3 | marker3 | Specifies Marker 3. | +----------------------------------+----------------+-----------------------------+ | SignalIdentifier.SCRIPT_TRIGGER0 | scriptTrigger0 | Specifies Script Trigger 0. | +----------------------------------+----------------+-----------------------------+ @@ -7426,7 +7411,7 @@ def _get_external_calibration_last_date_and_time(self): 30 for the minutes parameter. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Returns: year (int): Returns the year of the last successful calibration. @@ -7474,7 +7459,7 @@ def get_max_settable_power(self): Returns the maximum settable output power level for the current configuration. - **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860 Returns: value (float): Returns maximum settable power level in dBm. @@ -7494,7 +7479,7 @@ def _get_self_calibration_date_and_time(self, module): 30 for the minutes parameter. - **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5644/5645/5646, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Args: module (int): Specifies from which stand-alone module to retrieve the last successful self-calibration date and time. @@ -7522,11 +7507,11 @@ def get_self_calibration_temperature(self, module): Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration. - **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860 Args: module (enums.Module): Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. - **Default Value**: Module.PRIMARY_MODULE + **Default Value** : Module.PRIMARY_MODULE **Defined Values** : +-----------------------+----------------+---------------------------------------------------------------------+ @@ -7554,7 +7539,7 @@ def get_stream_endpoint_handle(self, stream_endpoint): Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint. - **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842 **Related Topics** @@ -7580,7 +7565,7 @@ def _init_with_options(self, resource_name, id_query, reset_device, option_strin This method also configures the device through the **OPTION_STRING** input. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7602,7 +7587,7 @@ def _init_with_options(self, resource_name, id_query, reset_device, option_strin id_query (bool): Specifies whether you want NI-RFSG to perform an ID query. - **Defined Values**: + **Defined Values** : +-----------+--------------------------+ | Value | Description | @@ -7614,7 +7599,7 @@ def _init_with_options(self, resource_name, id_query, reset_device, option_strin reset_device (bool): Specifies whether you want to reset the NI-RFSG device during the initialization procedure. - **Defined Values**: + **Defined Values** : +-----------+----------------------+ | Value | Description | @@ -7665,7 +7650,7 @@ def _initiate(self): If the settings have not been committed to the device before you call this method, they are committed by this method. The operation returns when the RF output signal settles. To return to the Configuration state, call the abort method. - **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7680,7 +7665,7 @@ def perform_power_search(self): Calling this method disables modulation for a short time while the device levels the output signal. - **Supported Devices**: PXIe-5654 with PXIe-5696 + **Supported Devices** : PXIe-5654 with PXIe-5696 **Related Topics** @@ -7699,7 +7684,7 @@ def perform_thermal_correction(self): Use this method when generating the same signal for an extended period of time in a temperature-fluctuating environment. The NI-RFSG device must be in the Generation state before calling this method. - **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7716,7 +7701,7 @@ def query_arb_waveform_capabilities(self): These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Returns: max_number_waveforms (int): Returns the value of the arb_max_number_waveforms property. This value is the maximum number of waveforms you can write. @@ -7751,7 +7736,7 @@ def read_and_download_waveform_from_file_tdms(self, waveform_name, file_path, wa If RF blanking marker locations are present in the file but burst locations are not present, burst locations are calculated from RF blanking marker locations and stored in the NI-RFSG session. - **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842 Args: waveform_name (str): Specifies the name used to store the waveform. This string is case-insensitive. @@ -7778,7 +7763,7 @@ def reset(self): To avoid resetting routes on the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 that are in use by NI-RFSA sessions, NI recommends using the ResetWithOptions method, with **stepsToOmit** set to ResetWithOptionsStepsToOmit.ROUTES . - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Note: This method resets all configured routes for the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 in NI-RFSA and NI-RFSG. ''' @@ -7800,7 +7785,7 @@ def reset_device(self): - PXI-5610, PXI-5670/5671, PXIe-5672-- After calling this method, the device requires 25 seconds before returning to full functionality. NI-RFSG enforces this condition by adding a wait, if needed, the next time you try to access the device. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E **Related Topics** @@ -7815,7 +7800,7 @@ def reset_with_defaults(self): Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E ''' self._interpreter.reset_with_defaults() @@ -7826,7 +7811,7 @@ def select_arb_waveform(self, name): You must specify a waveform using the NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7850,7 +7835,7 @@ def self_cal(self): The PXIe-5841 maintains separate self-calibration data for both the PXIe-5841 standalone and when associated with the PXIe-5655. Use this method once for each intended configuration. - **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Note: If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842/5860 while this method runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate. ''' @@ -7867,7 +7852,7 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ For best results, NI recommends that you perform self-calibration without omitting any steps. However, if certain aspects of performance are less important for your application, you can omit certain steps for faster calibration. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842 Note: - This method does not update self-calibration date and temperature. @@ -7878,7 +7863,7 @@ def self_calibrate_range(self, steps_to_omit, min_frequency, max_frequency, min_ Args: steps_to_omit (enums.SelfCalibrateRangeStepsToOmit): Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted. - **Default Value**: SelfCalibrateRangeStepsToOmit.OMIT_NONE + **Default Value** : SelfCalibrateRangeStepsToOmit.OMIT_NONE **Defined Values:** @@ -7923,7 +7908,7 @@ def self_test(self, self_test_message): This method does not affect external I/O connections or connections between devices. Complete functional testing and calibration are not performed by this method. The NI-RFSG device must be in the Configuration state before you call this method. - **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -7957,7 +7942,7 @@ def set_arb_waveform_next_write_position(self, waveform_name, relative_to, offse This method allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the allocate_arb_waveform method or the WriteArbWaveform method. Subsequent writes to that waveform begin where the last write ended, unless this method is called again. - **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Note: If you use this method to write the waveform that is currently generating, an undefined output may result. @@ -7995,12 +7980,12 @@ def wait_until_settled(self, max_time_milliseconds): You can also call this method after calling the commit method to wait for changes to settle. The wait_until_settled method is not required after calling the _initiate method because the _initiate automatically waits for the output to settle. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 Args: max_time_milliseconds (int): Specifies the maximum time the method waits for the output to settle. If the maximum time is exceeded, this method returns an error. The units are expressed in milliseconds. - **Default Value**: 10000 + **Default Value** : 10000 ''' self._interpreter.wait_until_settled(max_time_milliseconds) @@ -8012,7 +7997,7 @@ def write_p2_p_endpoint_i16(self, stream_endpoint, number_of_samples, endpoint_d Use this method to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation. - **Supported Devices**: PXIe-5673E + **Supported Devices** : PXIe-5673E **Related Topics** @@ -8041,7 +8026,7 @@ def write_script(self, script): First, configure your device for Script mode by calling the configure_generation_mode method. The NI-RFSG device must be in the Configuration state before calling the write_script method. - **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** @@ -8062,7 +8047,7 @@ def _close(self): Aborts any signal generation in progress and destroys the instrument driver session. - **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 + **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860 **Related Topics** diff --git a/src/nirfsg/metadata/__init__.py b/src/nirfsg/metadata/__init__.py index a3666701cb..736945551f 100644 --- a/src/nirfsg/metadata/__init__.py +++ b/src/nirfsg/metadata/__init__.py @@ -14,13 +14,6 @@ config['modules'] = sys.modules helper.add_all_metadata(functions, attributes, enums, config) -#if 'note' not in config['functions']['_init_function']['parameters'][3]: -# config['functions']['_init_function']['parameters'][3]['note'] = [] -#if not isinstance(config['functions']['_init_function']['parameters'][3]['note'], list): -# config['functions']['_init_function']['parameters'][3]['note'] = [config['functions']['_init_function']['parameters'][3]['note']] -#import pdb; pdb.set_trace() - - __version__ = config['module_version'] diff --git a/src/nirfsg/metadata/config.py b/src/nirfsg/metadata/config.py index 196138f253..a4b2340071 100644 --- a/src/nirfsg/metadata/config.py +++ b/src/nirfsg/metadata/config.py @@ -13,7 +13,6 @@ ], 'driver_name': 'NI-RFSG', 'enum_whitelist_suffix': [ - '_POINT_FIVE' ], 'extra_errors_used': [ 'InvalidRepeatedCapabilityError', @@ -58,7 +57,7 @@ 'python_name': 'deembedding_port' } ], - 'session_class_description': 'An NI-RFSG session to the RFSG driver', + 'session_class_description': 'An NI-RFSG session to the NI-RFSG driver', 'session_handle_parameter_name': 'vi', 'uses_nitclk': True } diff --git a/src/nirfsg/metadata/functions.py b/src/nirfsg/metadata/functions.py index b0ed1ded53..b3dd8ba68c 100644 --- a/src/nirfsg/metadata/functions.py +++ b/src/nirfsg/metadata/functions.py @@ -4,7 +4,7 @@ 'Abort': { 'codegen_method': 'public', 'documentation': { - 'description': ' Stops signal generation.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Programming State Model `_\n ' + 'description': ' Stops signal generation.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Programming State Model `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -34,7 +34,7 @@ 'AllocateArbWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': ' Allocates onboard memory space for the arbitrary waveform. \n \n Use this function to specify the total size of a waveform before writing the data. Use this function only if you are calling the nirfsg_WriteArbWaveform function multiple times to write a large waveform in smaller blocks.\n\n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming Waveform Data `_\n ' + 'description': ' Allocates onboard memory space for the arbitrary waveform. \n \n Use this function to specify the total size of a waveform before writing the data. Use this function only if you are calling the nirfsg_WriteArbWaveform function multiple times to write a large waveform in smaller blocks.\n\n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Streaming Waveform Data `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -504,7 +504,7 @@ 'CheckGenerationStatus': { 'codegen_method': 'public', 'documentation': { - 'description': '\n Checks the status of the generation. \n \n Call this function to check for any errors that might occur during the signal generation or to check whether the device has finished generating.\n\n **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `Stopping Pear-to-Peer Generation `_\n ' + 'description': '\n Checks the status of the generation. \n \n Call this function to check for any errors that might occur during the signal generation or to check whether the device has finished generating.\n\n **Supported Devices** : PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `Stopping Pear-to-Peer Generation `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -530,7 +530,7 @@ { 'direction': 'out', 'documentation': { - 'description': ' Returns information about the completion of signal generation.\n\n **Defined Values**:\n ', + 'description': ' Returns information about the completion of signal generation.\n\n **Defined Values** :\n ', 'table_body': [ [ 'VI_TRUE', @@ -558,7 +558,7 @@ 'CheckIfScriptExists': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Returns whether the script that you specify as **NIRFSG_ATTR_SCRIPT_NAME** exists.\n\n **Supported Devices**: PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860\n ' + 'description': ' \n Returns whether the script that you specify as **NIRFSG_ATTR_SCRIPT_NAME** exists.\n\n **Supported Devices** : PXIe-5673/5673E. PXIe-5830/5831/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -594,7 +594,7 @@ { 'direction': 'out', 'documentation': { - 'description': ' Returns VI_TRUE if the script exists.\n\n **Defined Values**:\n ', + 'description': ' Returns VI_TRUE if the script exists.\n\n **Defined Values** :\n ', 'table_body': [ [ 'VI_TRUE', @@ -622,7 +622,7 @@ 'CheckIfWaveformExists': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Returns whether the waveform that you specify as **NIRFSG_ATTR_WAVEFORM_NAME** exists.\n\n **Supported Devices**: PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860\n ' + 'description': ' \n\n Returns whether the waveform that you specify as **NIRFSG_ATTR_WAVEFORM_NAME** exists.\n\n **Supported Devices** : PXIe-5673/5673E, PXIe-5830/5831/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -658,7 +658,7 @@ { 'direction': 'out', 'documentation': { - 'description': ' Returns VI_TRUE if the waveform exists.\n\n **Defined Values**:\n ', + 'description': ' Returns VI_TRUE if the waveform exists.\n\n **Defined Values** :\n ', 'table_body': [ [ 'VI_TRUE', @@ -686,7 +686,7 @@ 'ClearAllArbWaveforms': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Deletes all currently defined waveforms and scripts. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n Deletes all currently defined waveforms and scripts. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -716,7 +716,7 @@ 'ClearArbWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Deletes a specified waveform from the pool of currently defined waveforms. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n Deletes a specified waveform from the pool of currently defined waveforms. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -756,7 +756,7 @@ 'ClearError': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Clears the error information associated with the session. \n \n If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function clears the error information for the current execution thread.\n\n The IVI Engine also maintains this error information separately for each thread. This feature of the IVI Engine is useful if you do not have a session handle to pass to the nirfsg_ClearError function or the nirfsg_GetError function, which occurs when a call to the nirfsg_Init function or the nirfsg_InitWithOptions function fails.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ', + 'description': ' \n Clears the error information associated with the session. \n \n If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function clears the error information for the current execution thread.\n\n The IVI Engine also maintains this error information separately for each thread. This feature of the IVI Engine is useful if you do not have a session handle to pass to the nirfsg_ClearError function or the nirfsg_GetError function, which occurs when a call to the nirfsg_Init function or the nirfsg_InitWithOptions function fails.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ', 'note': 'The nirfsg_GetError function clears the error information after it is retrieved. A call to the nirfsg_ClearError function is necessary only when you do not use a call to the nirfsg_GetError function to retrieve error information.' }, 'included_in_proto': True, @@ -787,7 +787,7 @@ 'ClearSelfCalibrateRange': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Clears the data obtained from the nirfsg_SelfCalibrateRange function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n Clears the data obtained from the nirfsg_SelfCalibrateRange function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -817,7 +817,7 @@ 'Commit': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Programs the device with the correct settings. \n \n Calling this function moves the NI-RFSG device from the Configuration state to the Committed state. After this function executes, a change to any attribute reverts the NI-RFSG device to the Configuration state.\n\n **Supported devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Programming State Model `_\n ' + 'description': ' \n\n Programs the device with the correct settings. \n \n Calling this function moves the NI-RFSG device from the Configuration state to the Committed state. After this function executes, a change to any attribute reverts the NI-RFSG device to the Configuration state.\n\n **Supported devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Programming State Model `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -847,7 +847,7 @@ 'ConfigureDeembeddingTableInterpolationLinear': { 'codegen_method': 'public', 'documentation': { - 'description': ' Selects the linear interpolation method. \n \n If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' Selects the linear interpolation method. \n \n If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a linear interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.\n\n **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -930,7 +930,7 @@ 'ConfigureDeembeddingTableInterpolationNearest': { 'codegen_method': 'public', 'documentation': { - 'description': ' Selects the nearest interpolation method. \n \n NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' Selects the nearest interpolation method. \n \n NI-RFSG uses the parameters of the table nearest to the carrier frequency for de-embedding.\n\n **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -980,7 +980,7 @@ 'ConfigureDeembeddingTableInterpolationSpline': { 'codegen_method': 'public', 'documentation': { - 'description': ' Selects the spline interpolation method. \n \n If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' Selects the spline interpolation method. \n \n If the carrier frequency does not match a row in the de-embedding table, NI-RFSG performs a spline interpolation based on the entries in the de-embedding table to determine the parameters to use for de-embedding.\n\n **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1030,7 +1030,7 @@ 'ConfigureDigitalEdgeScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' Purpose\n\n Configures the specified Script Trigger for digital edge triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Edge Trigger `_\n ' + 'description': ' Purpose\n\n Configures the specified Script Trigger for digital edge triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Edge Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1090,7 +1090,7 @@ 'ConfigureDigitalEdgeStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Configures the Start Trigger for digital edge triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Digital Edge Trigger `_\n ', + 'description': ' \n\n Configures the Start Trigger for digital edge triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Digital Edge Trigger `_\n ', 'note': 'For the PXIe-5654/5654 with PXIe-5696, the Start Trigger is valid only with a timer-based list when RF list mode is enabled.' }, 'included_in_proto': True, @@ -1141,7 +1141,7 @@ 'ConfigureDigitalLevelScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Configures a specified Script Trigger for digital level triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Level Trigger `_\n ' + 'description': ' \n\n Configures a specified Script Trigger for digital level triggering. \n \n The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Digital Level Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1201,7 +1201,7 @@ 'ConfigureDigitalModulationUserDefinedWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Specifies the message signal used for digital modulation when the NIRFSG_ATTR_DIGITAL_MODULATION_WAVEFORM_TYPE attribute is set to NIRFSG_VAL_USER_DEFINED.\n\n **Supported Devices**: PXI/PXIe-5650/5651/5652\n ' + 'description': ' \n Specifies the message signal used for digital modulation when the NIRFSG_ATTR_DIGITAL_MODULATION_WAVEFORM_TYPE attribute is set to NIRFSG_VAL_USER_DEFINED.\n\n **Supported Devices** : PXI/PXIe-5650/5651/5652\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1255,7 +1255,7 @@ 'ConfigureGenerationMode': { 'codegen_method': 'public', 'documentation': { - 'description': '\n Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n\n `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts.\n ' + 'description': '\n Configures the NI-RFSG device to generate a continuous sine tone (CW), apply I/Q (vector) modulation to the RF output signal, or generate arbitrary waveforms according to scripts. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n\n `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1281,7 +1281,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies the mode used by NI-RFSG for generating an RF output signal.\n\n **Default Value**: NIRFSG_VAL_CW\n\n **Defined Values** :\n ', + 'description': 'Specifies the mode used by NI-RFSG for generating an RF output signal.\n\n **Default Value** : NIRFSG_VAL_CW\n\n **Defined Values** :\n ', 'note': '- For the PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, only NIRFSG_VAL_CW is supported.\n\n - If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported.', 'table_body': [ [ @@ -1319,7 +1319,7 @@ 'ConfigureOutputEnabled': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Enables or disables signal output. \n \n Setting **NIRFSG_ATTR_OUTPUT_ENABLED** to VI_FALSE while in the Generation state attenuates the generated signal so that no signal is output.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Output Enabled `_\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `RF List Mode `_\n ' + 'description': ' \n\n Enables or disables signal output. \n \n Setting **NIRFSG_ATTR_OUTPUT_ENABLED** to VI_FALSE while in the Generation state attenuates the generated signal so that no signal is output.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Output Enabled `_\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `RF List Mode `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1359,7 +1359,7 @@ 'ConfigureP2PEndpointFullnessStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Configures the Start Trigger to detect peer-to-peer endpoint fullness. \n \n Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the **NIRFSG_ATTR_P2P_ENDPOINT_FULLNESS_LEVEL** parameter. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Start Trigger `_\n ', + 'description': ' \n Configures the Start Trigger to detect peer-to-peer endpoint fullness. \n \n Generation begins when the number of samples in the peer-to-peer endpoint reaches the threshold specified by the **NIRFSG_ATTR_P2P_ENDPOINT_FULLNESS_LEVEL** parameter. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Start Trigger `_\n ', 'note': 'Due to an additional internal FIFO in the RF signal generator, the writer peer actually writes 2,304 bytes more than the quantity of data specified by this function to satisfy the trigger level.' }, 'included_in_proto': True, @@ -1400,7 +1400,7 @@ 'ConfigurePowerLevelType': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Specifies the way the driver interprets the NIRFSG_ATTR_POWER_LEVEL attribute. \n \n In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Spurious Performance `_\n\n `Optimizing for Low Power Generation `_\n ' + 'description': ' \n\n Specifies the way the driver interprets the NIRFSG_ATTR_POWER_LEVEL attribute. \n \n In average power mode, NI-RFSG automatically scales waveform data to use the maximum dynamic range. In peak power mode, waveforms are scaled according to the NIRFSG_ATTR_ARB_WAVEFORM_SOFTWARE_SCALING_FACTOR attribute.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Spurious Performance `_\n\n `Optimizing for Low Power Generation `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1457,7 +1457,7 @@ 'ConfigurePxiChassisClk10': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. \n \n This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXI-5610, PXI-5670/5671\n\n **Related Topics**\n\n `Timing Configurations `_\n\n `System Reference Clock `_\n ' + 'description': ' \n\n Specifies the signal to drive the 10MHz Reference Clock on the PXI backplane. \n \n This option can only be configured when the PXI-5610 is in Slot 2 of the PXI chassis. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXI-5610, PXI-5670/5671\n\n **Related Topics**\n\n `Timing Configurations `_\n\n `System Reference Clock `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1497,7 +1497,7 @@ 'ConfigureRF': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Configures the frequency and power level of the RF output signal. \n \n The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this function. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n ' + 'description': ' \n Configures the frequency and power level of the RF output signal. \n \n The PXI-5670/5671, PXIe-5672, and PXIe-5860 device must be in the Configuration state before calling this function. The PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXIe-5673/5673E, and PXIe-5830/5831/5832/5840/5841/5842 device can be in the Configuration or Generation state when you call this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1523,7 +1523,7 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal.\n\n **Units**: hertz (Hz)\n ' + 'description': ' Specifies the frequency of the generated RF signal, in hertz. For arbitrary waveform generation, this parameter specifies the center frequency of the signal.\n\n **Units** : hertz (Hz)\n ' }, 'name': 'frequency', 'type': 'ViReal64', @@ -1533,7 +1533,7 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies either the average power level or peak power level of the generated RF signal, depending on the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute.\n\n **Units**: dBm\n ' + 'description': ' Specifies either the average power level or peak power level of the generated RF signal, depending on the NIRFSG_ATTR_POWER_LEVEL_TYPE attribute.\n\n **Units** : dBm\n ' }, 'name': 'powerLevel', 'type': 'ViReal64', @@ -1547,7 +1547,7 @@ 'ConfigureRefClock': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Configures the NI-RFSG device Reference Clock. \n \n The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `PXIe-5672 Timing Configurations `_\n\n `PXIe-5673 Timing Configurations `_\n\n `PXIe-5673E Timing Configurations `_\n\n `PXIe-5830 Timing Configurations `_\n\n `PXIe-5831 Timing Configurations `_\n ' + 'description': ' \n\n Configures the NI-RFSG device Reference Clock. \n \n The Reference Clock ensures that the NI-RFSG devices are operating from a common timebase. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXI-5610, PXIe-5644/5645/5646, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `PXIe-5672 Timing Configurations `_\n\n `PXIe-5673 Timing Configurations `_\n\n `PXIe-5673E Timing Configurations `_\n\n `PXIe-5830 Timing Configurations `_\n\n `PXIe-5831 Timing Configurations `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1578,12 +1578,12 @@ [ 'NIRFSG_VAL_ONBOARD_CLOCK_STR (default)', 'OnboardClock', - ' Uses the onboard Reference Clock as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument.' + ' Uses the onboard Reference Clock as the clock source. **PXIe-5830/5831/5832** :For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. **PXIe-5831 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. **PXIe-5832 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. **PXIe-5841 with PXIe-5655** :Lock to the PXIe-5655 onboard clock. Connect the REF OUT connector on the PXIe-5655 to the PXIe-5841 REF IN connector. **PXIe-5842** :Lock to the PXIe-5655 onboard clock. Cables between modules are required as shown in the Getting Started Guide for the instrument.' ], [ 'NIRFSG_VAL_REF_IN_STR', 'RefIn', - 'Uses the clock signal present at the front panel REF IN connector as the clock source.
**PXIe-5830/5831/5832**:For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector.
**PXIe-5831 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5832 with PXIe-5653**:Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector.
**PXIe-5841 with PXIe-5655**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector.
**PXIe-5842**:Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument.' + 'Uses the clock signal present at the front panel REF IN connector as the clock source. **PXIe-5830/5831/5832** :For the PXIe-5830, connect the PXIe-5820 REF IN connector to the PXIe-3621 REF OUT connector. For the PXIe-5831, connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. For the PXIe-5832, connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. For the PXIe-5830, lock the external signal to the PXIe-3621 REF IN connector. For the PXIe-5831, lock the external signal to the PXIe-3622 REF IN connector. For the PXIe-5832, lock the external signal to the PXIe-3623 REF IN connector. **PXIe-5831 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3622 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3622 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5832 with PXIe-5653** :Connect the PXIe-5820 REF IN connector to the PXIe-3623 REF OUT connector. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXIe-3623 REF IN connector. Lock the external signal to the PXIe-5653 REF IN connector. **PXIe-5841 with PXIe-5655** :Lock to the signal at the REF IN connector on the associated PXIe-5655. Connect the PXIe-5655 REF OUT connector to the PXIe-5841 REF IN connector. **PXIe-5842** :Lock to the signal at the REF IN connector on the associated PXIe-5655. Cables between modules are required as shown in the Getting Started Guide for the instrument.' ], [ 'NIRFSG_VAL_PXI_CLK_STR', @@ -1603,7 +1603,7 @@ [ 'NIRFSG_VAL_PXI_CLK_MASTER_STR', 'PXI_ClkMaster', - 'This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653.
**PXIe-5831 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.
**PXIe-5832 with PXIe-5653**:NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' + 'This value is valid on only the PXIe-5831 with PXIe-5653 and PXIe-5832 with PXIe-5653. **PXIe-5831 with PXIe-5653** :NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3622 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector. **PXIe-5832 with PXIe-5653** :NI-RFSG configures the PXIe-5653 to export the Reference clock and configures the PXIe-5820 and PXIe-3623 to use PXI_Clk as the Reference Clock source. Connect the PXIe-5653 REF OUT (10 MHz) connector to the PXI chassis REF IN connector.' ] ], 'table_header': [ @@ -1634,7 +1634,7 @@ 'ConfigureSignalBandwidth': { 'codegen_method': 'public', 'documentation': { - 'description': ' Configures the signal bandwidth of the arbitrary waveform.\n\n The NI-RFSG device must be in the Configuration state before you call this function.\n\n NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0Hz. In such cases, the signal bandwidth is simply the baseband signal minimum frequency subtracted from its maximum frequency, or *f* max minus *f* min. NI-RFSG uses this value to optimally configure the center frequency of the upconverter to help minimize phase noise. The generated signal is not filtered to achieve the set bandwidth. However, specifying a bandwidth smaller than the actual bandwidth of the signal could potentially result in spectral distortion.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'description': ' Configures the signal bandwidth of the arbitrary waveform.\n\n The NI-RFSG device must be in the Configuration state before you call this function.\n\n NI-RFSG defines *signal bandwidth* as twice the maximum baseband signal deviation from 0 Hz. Usually, the baseband signal center frequency is 0Hz. In such cases, the signal bandwidth is simply the baseband signal minimum frequency subtracted from its maximum frequency, or *f* max minus *f* min. NI-RFSG uses this value to optimally configure the center frequency of the upconverter to help minimize phase noise. The generated signal is not filtered to achieve the set bandwidth. However, specifying a bandwidth smaller than the actual bandwidth of the signal could potentially result in spectral distortion.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', 'note': 'Based on your signal bandwidth, NI-RFSG decides whether to configure the upconverter center frequency on the PXI-5670/5671 or PXIe-5672 in increments of 1MHz or 5MHz. Failure to configure signal bandwidth may result in the signal being placed outside the upconverter passband.' }, 'included_in_proto': True, @@ -1675,7 +1675,7 @@ 'ConfigureSoftwareScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Configures the Script Trigger for software triggering. \n \n Refer to the nirfsg_SendSoftwareEdgeTrigger function for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Trigger Types `_\n ' + 'description': ' \n Configures the Script Trigger for software triggering. \n \n Refer to the nirfsg_SendSoftwareEdgeTrigger function for more information about using the software Script Trigger. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n\n `Trigger Types `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1715,7 +1715,7 @@ 'ConfigureSoftwareStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Configures the Start Trigger for software triggering. \n \n Refer to the nirfsg_SendSoftwareEdgeTrigger function for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Trigger Types `_\n ' + 'description': ' \n\n Configures the Start Trigger for software triggering. \n \n Refer to the nirfsg_SendSoftwareEdgeTrigger function for more information about using a software trigger. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n\n\n **Related Topics**\n\n `Start Trigger `_\n\n `Trigger Types `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1745,7 +1745,7 @@ 'CreateDeembeddingSparameterTableS2PFile': { 'codegen_method': 'public', 'documentation': { - 'description': ' Creates an S-parameter de-embedding table for the port based on the specified S2P file.\n\n If you only create one table for a port, NI-RFSG automatically selects that table to de-embed the measurement.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `De-embedding Overview `_\n\n `S-parameters `_\n ' + 'description': ' Creates an S-parameter de-embedding table for the port based on the specified S2P file.\n\n If you only create one table for a port, NI-RFSG automatically selects that table to de-embed the measurement.\n\n **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `De-embedding Overview `_\n\n `S-parameters `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1833,7 +1833,7 @@ 'DeleteAllDeembeddingTables': { 'codegen_method': 'public', 'documentation': { - 'description': ' Deletes all configured de-embedding tables for the session.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' Deletes all configured de-embedding tables for the session.\n\n **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1863,7 +1863,7 @@ 'DeleteDeembeddingTable': { 'codegen_method': 'public', 'documentation': { - 'description': ' Deletes the selected de-embedding table for a given port.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' Deletes the selected de-embedding table for a given port.\n\n **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1913,7 +1913,7 @@ 'Disable': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E\n ' + 'description': ' \n Places the instrument in a quiescent state where it has minimal or no impact on the system to which it is connected.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXI-5670/5671, PXIe-5672/5673/5673E\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1943,7 +1943,7 @@ 'DisableScriptTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Configures the device not to wait for the specified Script Trigger. \n \n Call this function only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n ' + 'description': ' \n Configures the device not to wait for the specified Script Trigger. \n \n Call this function only if you previously configured a Script Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Script Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -1983,7 +1983,7 @@ 'DisableStartTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Configures the device not to wait for a Start Trigger. \n \n This function is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n ' + 'description': ' \n\n Configures the device not to wait for a Start Trigger. \n \n This function is necessary only if you previously configured a Start Trigger and now want it disabled. The NI-RFSG device must be in the Configuration state before calling this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Start Trigger `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2013,7 +2013,7 @@ 'ExportSignal': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Routes signals (triggers, clocks, and events) to a specified output terminal. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n You can clear a previously routed signal by exporting the signal to "" (empty string).\n\n **Supported Devices**:PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n\n `Events `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n ' + 'description': ' \n\n Routes signals (triggers, clocks, and events) to a specified output terminal. \n \n The NI-RFSG device must be in the Configuration state before you call this function.\n\n You can clear a previously routed signal by exporting the signal to "" (empty string).\n\n **Supported Devices** :PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n\n `Events `_\n\n `PFI Lines `_\n\n `PXI Trigger Lines `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2101,22 +2101,22 @@ 'table_body': [ [ 'NIRFSG_VAL_MARKER_EVENT0', - '', + 'marker0', 'Specifies Marker 0.' ], [ 'NIRFSG_VAL_MARKER_EVENT1', - '', + 'marker1', 'Specifies Marker 1.' ], [ 'NIRFSG_VAL_MARKER_EVENT2', - '', + 'marker2', 'Specifies Marker 2.' ], [ 'NIRFSG_VAL_MARKER_EVENT3', - '', + 'marker3', 'Specifies Marker 3.' ], [ @@ -2575,7 +2575,7 @@ 'GetError': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Retrieves and then clears the IVI error information for the session or the current execution thread.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ', + 'description': ' \n Retrieves and then clears the IVI error information for the session or the current execution thread.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ', 'note': 'If the **bufferSize** parameter is 0, this function does not clear the error information. By passing 0 to the **bufferSize** parameter, you can determine the buffer size required to obtain the entire NIRFSG_ATTR_ERROR_DESCRIPTION string. You can then call this function again with a sufficiently large buffer. If you specify a valid IVI session for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the session. If you pass VI_NULL for the NIRFSG_ATTR_VI parameter, this function retrieves and clears the error information for the current execution thread. If the NIRFSG_ATTR_VI parameter is an invalid session, this function does nothing and returns an error. Normally, the error information describes the first error that occurred since the user last called this function or the niRFSG_ClearError function.' }, 'included_in_proto': True, @@ -2613,7 +2613,7 @@ 'default_value': '256', 'direction': 'in', 'documentation': { - 'description': ' Pass the number of bytes in the ViChar array you specify for the **description** parameter.\n\n If the NIRFSG_ATTR_ERROR_DESCRIPTION, including the terminating NULL byte, contains more bytes than you indicate in this parameter, the function copies **bufferSize** - 1 bytes into the buffer, places an ASCII NULL byte at the end of the buffer, and returns the buffer size you must pass to get the entire value. Forexample, if the value is 123456 and the buffer size is 4, the function places 123 into the buffer and returns 7. If you pass 0, you can pass VI_NULL for the **description** parameter.\n\n **Default Value**: None\n\n ' + 'description': ' Pass the number of bytes in the ViChar array you specify for the **description** parameter.\n\n If the NIRFSG_ATTR_ERROR_DESCRIPTION, including the terminating NULL byte, contains more bytes than you indicate in this parameter, the function copies **bufferSize** - 1 bytes into the buffer, places an ASCII NULL byte at the end of the buffer, and returns the buffer size you must pass to get the entire value. Forexample, if the value is 123456 and the buffer size is 4, the function places 123 into the buffer and returns 7. If you pass 0, you can pass VI_NULL for the **description** parameter.\n\n **Default Value** : None\n\n ' }, 'name': 'errorDescriptionBufferSize', 'type': 'ViInt32', @@ -2641,7 +2641,7 @@ 'GetExternalCalibrationLastDateAndTime': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n Returns the date and time of the last successful external calibration. \n \n The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this function returns\n\n 14 for the hours parameter and\n\n 30 for the minutes parameter.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n Returns the date and time of the last successful external calibration. \n \n The time returned is 24-hour (military) local time; for example, if the device was calibrated at 2:30PM, this function returns\n\n 14 for the hours parameter and\n\n 30 for the minutes parameter.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5696, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2794,7 +2794,7 @@ 'GetMaxSettablePower': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Returns the maximum settable output power level for the current configuration.\n\n **Supported Devices**: PXIe-5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n\n Returns the maximum settable output power level for the current configuration.\n\n **Supported Devices** : PXIe-5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2834,7 +2834,7 @@ 'GetSelfCalibrationDateAndTime': { 'codegen_method': 'private', 'documentation': { - 'description': '\n Returns the date and time of the last successful self-calibration. \n \n The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this function returns\n\n 14 for the hours parameter and\n\n 30 for the minutes parameter.\n\n **Supported Devices**: PXI-5610, PXIe-5644/5645/5646, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': '\n Returns the date and time of the last successful self-calibration. \n \n The time returned is 24-hour local time. For example, if the device was calibrated at 2:30PM, this function returns\n\n 14 for the hours parameter and\n\n 30 for the minutes parameter.\n\n **Supported Devices** : PXI-5610, PXIe-5644/5645/5646, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2935,7 +2935,7 @@ 'GetSelfCalibrationTemperature': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration.\n\n **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860\n ' + 'description': ' \n Returns the temperature, in degrees Celsius, of the device at the last successful self-calibration.\n\n **Supported Devices** : PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831 (IF only)/5832 (IF only)/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -2961,7 +2961,7 @@ { 'direction': 'in', 'documentation': { - 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. \n **Default Value**: NIRFSG_VAL_PRIMARY_MODULE\n **Defined Values** :\n ', + 'description': 'Specifies from which stand-alone module to retrieve the last successful self-calibration temperature. \n **Default Value** : NIRFSG_VAL_PRIMARY_MODULE\n **Defined Values** :\n ', 'table_body': [ [ 'NIRFSG_VAL_PRIMARY_MODULE', @@ -3008,7 +3008,7 @@ 'GetStreamEndpointHandle': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint.\n\n **Supported Devices**: PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Stream `_\n\n `Configuring Flow Control `_\n ' + 'description': ' \n\n Returns a reader endpoint handle that can be used with NI-P2P to configure a peer-to-peer stream with an RF signal generator endpoint.\n\n **Supported Devices** : PXIe-5673E, PXIe-5820/5830/5831/5832/5840/5841/5842\n\n **Related Topics**\n\n `Configuring a Peer-to-Peer Stream `_\n\n `Configuring Flow Control `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3058,7 +3058,7 @@ 'GetWaveformBurstStartLocations': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n Returns the burst start locations of the waveform stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n Returns the burst start locations of the waveform stored in the NI-RFSG session.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3128,7 +3128,7 @@ 'GetWaveformBurstStopLocations': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n\n Returns the burst stop locations of the waveform stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n\n Returns the burst stop locations of the waveform stored in the NI-RFSG session.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3198,7 +3198,7 @@ 'GetWaveformMarkerEventLocations': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n Returns the marker locations associated with the waveform and the marker stored in the NI-RFSG session.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3268,7 +3268,7 @@ 'InitWithOptions': { 'codegen_method': 'private', 'documentation': { - 'description': '\n Opens a session to the device you specify as the **NIRFSG_ATTR_RESOURCE_NAME** and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG function calls. \n \n This function also configures the device through the **NIRFSG_ATTR_OPTION_STRING** input.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Simulating an NI RF Signal Generator `_\n ', + 'description': '\n Opens a session to the device you specify as the **NIRFSG_ATTR_RESOURCE_NAME** and returns a ViSession handle that you use to identify the NI-RFSG device in all subsequent NI-RFSG function calls. \n \n This function also configures the device through the **NIRFSG_ATTR_OPTION_STRING** input.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Simulating an NI RF Signal Generator `_\n ', 'note': 'For multichannel devices such as the PXIe-5860, the resource name must include the channel number to use. The channel number is specified by appending /*ChannelNumber* to the device name, where *ChannelNumber* is the channel number (0, 1, etc.). For example, if the device name is PXI1Slot2 and you want to use channel 0, use the resource name PXI1Slot2/0.' }, 'included_in_proto': True, @@ -3297,7 +3297,7 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies whether you want NI-RFSG to perform an ID query.\n\n **Defined Values**:\n ', + 'description': ' Specifies whether you want NI-RFSG to perform an ID query.\n\n **Defined Values** :\n ', 'table_body': [ [ 'VI_TRUE (1)', @@ -3321,7 +3321,7 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies whether you want to reset the NI-RFSG device during the initialization procedure.\n\n **Defined Values**:\n\n ', + 'description': ' Specifies whether you want to reset the NI-RFSG device during the initialization procedure.\n\n **Defined Values** :\n\n ', 'table_body': [ [ 'VI_TRUE (1)', @@ -3395,7 +3395,7 @@ 'Initiate': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n\n Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. \n \n If the settings have not been committed to the device before you call this function, they are committed by this function. The operation returns when the RF output signal settles. To return to the Configuration state, call the nirfsg_Abort function.\n\n **Supported Devices**: PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n ' + 'description': ' \n\n Initiates signal generation, causing the NI-RFSG device to leave the Configuration state and enter the Generation state. \n \n If the settings have not been committed to the device before you call this function, they are committed by this function. The operation returns when the RF output signal settles. To return to the Configuration state, call the nirfsg_Abort function.\n\n **Supported Devices** : PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3417,7 +3417,7 @@ 'LoadConfigurationsFromFile': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Loads the configurations from the specified file to the NI-RFSG driver session. \n \n The VI does an implicit reset before loading the configurations from the file.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n Loads the configurations from the specified file to the NI-RFSG driver session. \n \n The VI does an implicit reset before loading the configurations from the file.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3467,7 +3467,7 @@ 'LockSession': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Obtains a multithread lock on the instrument session. \n \n Before doing so, this function waits until all other execution threads have released their locks on the instrument session.\n\n Other threads might have obtained a lock on this session in the following ways:\n\n - Your application already called the nirfsg_LockSession function.\n - A call to NI-RFSG locked the session.\n\n After the call to this function returns successfully, no other threads can access the instrument session until you call the nirfsg_UnlockSession function. Use the nirfsg_LockSession function and the nirfsg_UnlockSession function around a sequence of calls to NI-RFSG functions if you require that the NI-RFSG device retain its settings through the end of the sequence.\n\n You can safely make nested calls to the nirfsg_LockSession function within the same thread. To completely unlock the session, balance each call to the nirfsg_LockSession function with a call to the nirfsg_UnlockSession function. If, however, you use the **NIRFSG_ATTR_CALLER_HAS_LOCK** parameter in all calls to the nirfsg_LockSession function and the nirfsg_UnlockSession function within a function, the IVI Library locks the session only once within the function regardless of the number of calls you make to the nirfsg_LockSession function. Locking the session only once allows you to call nirfsg_UnlockSession just once at the end of the function.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ' + 'description': ' \n Obtains a multithread lock on the instrument session. \n \n Before doing so, this function waits until all other execution threads have released their locks on the instrument session.\n\n Other threads might have obtained a lock on this session in the following ways:\n\n - Your application already called the nirfsg_LockSession function.\n - A call to NI-RFSG locked the session.\n\n After the call to this function returns successfully, no other threads can access the instrument session until you call the nirfsg_UnlockSession function. Use the nirfsg_LockSession function and the nirfsg_UnlockSession function around a sequence of calls to NI-RFSG functions if you require that the NI-RFSG device retain its settings through the end of the sequence.\n\n You can safely make nested calls to the nirfsg_LockSession function within the same thread. To completely unlock the session, balance each call to the nirfsg_LockSession function with a call to the nirfsg_UnlockSession function. If, however, you use the **NIRFSG_ATTR_CALLER_HAS_LOCK** parameter in all calls to the nirfsg_LockSession function and the nirfsg_UnlockSession function within a function, the IVI Library locks the session only once within the function regardless of the number of calls you make to the nirfsg_LockSession function. Locking the session only once allows you to call nirfsg_UnlockSession just once at the end of the function.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3509,7 +3509,7 @@ 'PerformPowerSearch': { 'codegen_method': 'public', 'documentation': { - 'description': '\n Performs a power search if the NIRFSG_ATTR_ALC_CONTROL attribute is disabled. \n \n Calling this function disables modulation for a short time while the device levels the output signal.\n\n **Supported Devices**: PXIe-5654 with PXIe-5696\n\n **Related Topics**\n\n `Power Search `_\n ', + 'description': '\n Performs a power search if the NIRFSG_ATTR_ALC_CONTROL attribute is disabled. \n \n Calling this function disables modulation for a short time while the device levels the output signal.\n\n **Supported Devices** : PXIe-5654 with PXIe-5696\n\n **Related Topics**\n\n `Power Search `_\n ', 'note': 'Power search temporarily enables the ALC, so ensure the appropriate included cable is connected between the PXIe-5654 ALCIN connector and the PXIe-5696 ALCOUT connector to successfully perform a power search.' }, 'included_in_proto': True, @@ -3540,7 +3540,7 @@ 'PerformThermalCorrection': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. \n \n Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this function.\n\n Use this function when generating the same signal for an extended period of time in a temperature-fluctuating environment. The NI-RFSG device must be in the Generation state before calling this function.\n\n **Supported Devices**: PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Thermal Management `_\n\n `Impairment Calibration `_\n ' + 'description': ' \n Corrects for any signal drift due to environmental temperature variation when generating the same signal for extended periods of time without a parameter change. \n \n Under normal circumstances of short-term signal generation, NI-RFSG performs thermal correction automatically by ensuring stable power levels, and you do not need to call this function.\n\n Use this function when generating the same signal for an extended period of time in a temperature-fluctuating environment. The NI-RFSG device must be in the Generation state before calling this function.\n\n **Supported Devices** : PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Thermal Management `_\n\n `Impairment Calibration `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3570,7 +3570,7 @@ 'QueryArbWaveformCapabilities': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Queries and returns the waveform capabilities of the NI-RFSG device. \n \n These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n Queries and returns the waveform capabilities of the NI-RFSG device. \n \n These capabilities are related to the current device configuration. The NI-RFSG device must be in the Configuration or the Generation state before calling this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3640,7 +3640,7 @@ 'ReadAndDownloadWaveformFromFileTDMS': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators.\n\n This function reads the following information from the TDMS file and writes it into the NI-RFSG session:\n\n - Sample Rate\n - PAPR\n - Runtime Scaling\n - RF Blanking Marker Locations\n - RF Blanking Enabled\n - Burst Start Locations\n - Burst Stop Locations\n - RF Blanking Marker Source\n - Signal Bandwidth\n - Waveform Size\n\n If RF blanking marker locations are present in the file but burst locations are not present, burst locations are calculated from RF blanking marker locations and stored in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n Reads the waveforms from a TDMS file and downloads one waveform into each of the NI RF vector signal generators.\n\n This function reads the following information from the TDMS file and writes it into the NI-RFSG session:\n\n - Sample Rate\n - PAPR\n - Runtime Scaling\n - RF Blanking Marker Locations\n - RF Blanking Enabled\n - Burst Start Locations\n - Burst Stop Locations\n - RF Blanking Marker Source\n - Signal Bandwidth\n - Waveform Size\n\n If RF blanking marker locations are present in the file but burst locations are not present, burst locations are calculated from RF blanking marker locations and stored in the NI-RFSG session.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3700,7 +3700,7 @@ 'Reset': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Resets all attributes to their default values and moves the NI-RFSG device to the Configuration state. \n \n This function aborts the generation, deletes all de-embedding tables, clears all routes, and resets session attributes to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route.\n\n Generally, calling this function instead of the nirfsg_ResetDevice function is acceptable. The nirfsg_Reset function executes faster than the nirfsg_ResetDevice function.\n\n To avoid resetting routes on the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 that are in use by NI-RFSA sessions, NI recommends using the nirfsg_ResetWithOptions function, with **stepsToOmit** set to NIRFSG_VAL_RESET_WITH_OPTIONS_ROUTES .\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'description': ' \n\n Resets all attributes to their default values and moves the NI-RFSG device to the Configuration state. \n \n This function aborts the generation, deletes all de-embedding tables, clears all routes, and resets session attributes to their initial values. During a reset, routes of signals between this and other devices are released, regardless of which device created the route.\n\n Generally, calling this function instead of the nirfsg_ResetDevice function is acceptable. The nirfsg_Reset function executes faster than the nirfsg_ResetDevice function.\n\n To avoid resetting routes on the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 that are in use by NI-RFSA sessions, NI recommends using the nirfsg_ResetWithOptions function, with **stepsToOmit** set to NIRFSG_VAL_RESET_WITH_OPTIONS_ROUTES .\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', 'note': 'This function resets all configured routes for the PXIe-5644/5645/5646 and PXIe-5820/5830/5831/5832/5840/5841/5842/5860 in NI-RFSA and NI-RFSG.' }, 'included_in_proto': True, @@ -3731,7 +3731,7 @@ 'ResetAttribute': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Resets the attribute to its default value.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n\n Resets the attribute to its default value.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3781,7 +3781,7 @@ 'ResetDevice': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Performs a hard reset on the device which consists of the following actions:\n\n - Signal generation is stopped.\n - All routes are released.\n - External bidirectional terminals are tristated.\n - FPGAs are reset.\n - Hardware is configured to its default state.\n - All session attributes are reset to their default states.\n\n During a device reset, routes of signals between this and other devices are released, regardless of which device created the route.\n\n - PXI-5610, PXI-5670/5671, PXIe-5672-- After calling this function, the device requires 25 seconds before returning to full functionality. NI-RFSG enforces this condition by adding a wait, if needed, the next time you try to access the device.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Thermal Shutdown `_\n ', + 'description': ' \n Performs a hard reset on the device which consists of the following actions:\n\n - Signal generation is stopped.\n - All routes are released.\n - External bidirectional terminals are tristated.\n - FPGAs are reset.\n - Hardware is configured to its default state.\n - All session attributes are reset to their default states.\n\n During a device reset, routes of signals between this and other devices are released, regardless of which device created the route.\n\n - PXI-5610, PXI-5670/5671, PXIe-5672-- After calling this function, the device requires 25 seconds before returning to full functionality. NI-RFSG enforces this condition by adding a wait, if needed, the next time you try to access the device.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E\n\n **Related Topics**\n\n `Thermal Shutdown `_\n ', 'note': 'You must call the nirfsg_ResetDevice function if the NI-RFSG device has shut down because of a high-temperature condition.' }, 'included_in_proto': True, @@ -3812,7 +3812,7 @@ 'ResetWithDefaults': { 'codegen_method': 'public', 'documentation': { - 'description': '\n Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E\n ' + 'description': '\n Performs a software reset of the device, returning it to the default state and applying any initial default settings from the IVI Configuration Store.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696,PXI-5670/5671, PXIe-5672/5673/5673E\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3842,7 +3842,7 @@ 'SaveConfigurationsToFile': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Saves the configurations of the session to the specified file.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': ' \n\n Saves the configurations of the session to the specified file.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3892,7 +3892,7 @@ 'SelectArbWaveform': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Specifies the waveform that is generated upon a call to the nirfsg_Initiate function when the **generationMode** parameter of the nirfsg_ConfigureGenerationMode function is set to NIRFSG_VAL_ARB_WAVEFORM. \n \n You must specify a waveform using the NIRFSG_ATTR_NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n ' + 'description': ' \n\n Specifies the waveform that is generated upon a call to the nirfsg_Initiate function when the **generationMode** parameter of the nirfsg_ConfigureGenerationMode function is set to NIRFSG_VAL_ARB_WAVEFORM. \n \n You must specify a waveform using the NIRFSG_ATTR_NAME parameter if you have written multiple waveforms. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Assigning Properties or Attributes to a Waveform `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -3932,7 +3932,7 @@ 'SelfCal': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Performs an internal self-calibration on the device and associated modules that support self-calibration. \n \n If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module.\n\n The PXIe-5841 maintains separate self-calibration data for both the PXIe-5841 standalone and when associated with the PXIe-5655. Use this function once for each intended configuration.\n\n **Supported Devices**: PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'description': ' \n Performs an internal self-calibration on the device and associated modules that support self-calibration. \n \n If the calibration is successful, new calibration data and constants are stored in the onboard nonvolatile memory of the module.\n\n The PXIe-5841 maintains separate self-calibration data for both the PXIe-5841 standalone and when associated with the PXIe-5655. Use this function once for each intended configuration.\n\n **Supported Devices** : PXI-5610, PXIe-5653, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', 'note': 'If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842/5860 while this function runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate.' }, 'included_in_proto': True, @@ -3963,7 +3963,7 @@ 'SelfCalibrateRange': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Self-calibrates all configurations within the specified frequency and peak power level limits.\n\n Self-calibration range data is valid until you restart the system or call the nirfsg_ClearSelfCalibrateRange function.\n\n NI recommends that no external signals are present on the RF In or IQ In ports during the calibration.\n\n For best results, NI recommends that you perform self-calibration without omitting any steps. However, if certain aspects of performance are less important for your application, you can omit certain steps for faster calibration.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n ', + 'description': ' \n Self-calibrates all configurations within the specified frequency and peak power level limits.\n\n Self-calibration range data is valid until you restart the system or call the nirfsg_ClearSelfCalibrateRange function.\n\n NI recommends that no external signals are present on the RF In or IQ In ports during the calibration.\n\n For best results, NI recommends that you perform self-calibration without omitting any steps. However, if certain aspects of performance are less important for your application, you can omit certain steps for faster calibration.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842\n ', 'note': '- This function does not update self-calibration date and temperature.\n\n - If there is an existing NI-RFSA session open for the same PXIe-5644/5645/5646, it may remain open but cannot be used while this function runs.\n\n - If there is an existing NI-RFSA session open for the same PXIe-5820/5830/5831/5832/5840/5841/5842 while this function runs, it may remain open but cannot be used for operations that access the hardware, for example niRFSA_Commit or niRFSA_Initiate.' }, 'included_in_proto': True, @@ -3990,7 +3990,7 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted.\n\n **Default Value**: NIRFSG_VAL_SELF_CAL_OMIT_NONE\n\n **Defined Values:**\n ', + 'description': ' Specifies which calibration steps to skip during the self-calibration process. The default value is an empty array, which indicates that no calibration steps are omitted.\n\n **Default Value** : NIRFSG_VAL_SELF_CAL_OMIT_NONE\n\n **Defined Values:**\n ', 'table_body': [ [ 'NIRFSG_VAL_SELF_CAL_OMIT_NONE', @@ -4082,7 +4082,7 @@ 'SelfTest': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Performs a self-test on the NI-RFSG device and returns the test results. \n \n This function performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding.\n\n This function does not affect external I/O connections or connections between devices. Complete functional testing and calibration are not performed by this function. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Device Warm-Up `_\n ' + 'description': ' \n Performs a self-test on the NI-RFSG device and returns the test results. \n \n This function performs a simple series of tests to ensure that the NI-RFSG device is powered up and responding.\n\n This function does not affect external I/O connections or connections between devices. Complete functional testing and calibration are not performed by this function. The NI-RFSG device must be in the Configuration state before you call this function.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Device Warm-Up `_\n ' }, 'included_in_proto': True, 'parameters': [ @@ -4135,7 +4135,7 @@ 'SendSoftwareEdgeTrigger': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n Forces a trigger to occur. \n \n The specified trigger generates regardless of whether the trigger has been configured as a software trigger.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n ' + 'description': ' \n Forces a trigger to occur. \n \n The specified trigger generates regardless of whether the trigger has been configured as a software trigger.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Triggers `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4212,7 +4212,7 @@ 'Specifies Script Trigger 3.' ], [ - ' "" (empty string)', + 'NIRFSG_VAL_NONE_EMPTY_STRING', '', 'None (no signal to export)' ] @@ -4237,7 +4237,7 @@ 'SetArbWaveformNextWritePosition': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Configures the start position to use for writing a waveform before calling the nirfsg_WriteArbWaveform function. \n \n This function allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the nirfsg_AllocateArbWaveform function or the nirfsg_WriteArbWaveform function. Subsequent writes to that waveform begin where the last write ended, unless this function is called again.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', + 'description': ' \n\n Configures the start position to use for writing a waveform before calling the nirfsg_WriteArbWaveform function. \n \n This function allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the **name** input of the nirfsg_AllocateArbWaveform function or the nirfsg_WriteArbWaveform function. Subsequent writes to that waveform begin where the last write ended, unless this function is called again.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ', 'note': 'If you use this function to write the waveform that is currently generating, an undefined output may result.' }, 'included_in_proto': True, @@ -4362,7 +4362,8 @@ { 'direction': 'in', 'documentation': { - 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n\n
\n ' + 'description': ' Pass the value to which you want to set the attribute.\n ', + 'note': 'Some values may not be valid. The allowed values depend on the current settings of the instrument session.' }, 'name': 'value', 'type': 'ViBoolean', @@ -4376,7 +4377,7 @@ 'SetAttributeViInt32': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n\n Sets the value of a ViInt32 attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' + 'description': '\n Sets the value of a ViInt32 attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4422,7 +4423,8 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n
\n ' + 'description': ' Specifies the value to which you want to set the attribute.\n ', + 'note': 'Some values may not be valid. The allowed values depend on the current settings of the instrument session.' }, 'grpc_enum': 'NiRFSGInt32AttributeValues', 'name': 'value', @@ -4437,7 +4439,7 @@ 'SetAttributeViInt64': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n\n Sets the value of a ViInt64 attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' + 'description': '\n Sets the value of a ViInt64 attribute.\n\n Use this low-level function to set the values of inherent IVI attributes, class-defined attributes, and instrument-specific attributes. If the attribute represents an instrument state, this function performs instrument I/O in the following cases:\n\n - State caching is disabled for the entire session or for the particular attribute.\n - State caching is enabled, and the currently cached value is invalid or is different than the value you specify.\n\n NI-RFSG contains high-level functions that set most of the instrument attributes. Use the high-level driver functions as much as possible, as they handle order dependencies and multithread locking. The high-level functions also perform status checking only after setting all of the attributes. In contrast, when you set multiple attributes using the SetAttribute functions, the functions check the instrument status after each call.\n\n Also, when state caching is enabled, the high-level functions that configure multiple attributes perform instrument I/O only for the attributes whose value you change. Thus, you can safely call the high-level functions without the penalty of redundant instrument I/O.\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4544,7 +4546,8 @@ { 'direction': 'in', 'documentation': { - 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n \n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n
\n ' + 'description': ' Pass the value to which you want to set the attribute.\n ', + 'note': 'Some values may not be valid. The allowed values depend on the current settings of the instrument session.' }, 'grpc_enum': 'NiRFSGReal64AttributeValues', 'name': 'value', @@ -4605,7 +4608,8 @@ { 'direction': 'in', 'documentation': { - 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n\n
\n ' + 'description': ' Pass the value to which you want to set the attribute.\n ', + 'note': 'Some values may not be valid. The allowed values depend on the current settings of the instrument session.' }, 'name': 'value', 'type': 'ViSession', @@ -4665,7 +4669,8 @@ { 'direction': 'in', 'documentation': { - 'description': ' Pass the value to which you want to set the attribute.\n\n\n
\n Some values may not be valid. The allowed values depend on the current settings of the instrument session.\n\n
\n ' + 'description': ' Pass the value to which you want to set the attribute.\n ', + 'note': 'Some values may not be valid. The allowed values depend on the current settings of the instrument session.' }, 'grpc_mapped_enum': 'NiRFSGStringAttributeValuesMapped', 'name': 'value', @@ -4680,7 +4685,7 @@ 'SetWaveformBurstStartLocations': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n Configures the start location of the burst in samples where the burst refers to the active portion of a waveform.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n Configures the start location of the burst in samples where the burst refers to the active portion of a waveform.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4740,7 +4745,7 @@ 'SetWaveformBurstStopLocations': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n\n Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n\n Configures the stop location of the burst in samples where the burst refers to the active portion of a waveform.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4800,7 +4805,7 @@ 'SetWaveformMarkerEventLocations': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n\n Configures the marker locations associated with waveform and marker in the NI-RFSG session.\n\n **Supported Devices**: PXIe-5820/5830/5831/5832/5840/5841/5842\n ' + 'description': ' \n\n Configures the marker locations associated with waveform and marker in the NI-RFSG session.\n\n **Supported Devices** : PXIe-5820/5830/5831/5832/5840/5841/5842\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4860,7 +4865,7 @@ 'UnlockSession': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Releases a lock obtained on an NI-RFSG device session by calling the nirfsg_LockSession function.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ' + 'description': ' \n\n Releases a lock obtained on an NI-RFSG device session by calling the nirfsg_LockSession function.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4902,7 +4907,7 @@ 'WaitUntilSettled': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Waits until the RF output signal has settled. This function is useful for devices that support changes while in the Generation state. \n \n Call this function after making a dynamic change to wait for the output signal to settle.\n\n You can also call this function after calling the nirfsg_Commit function to wait for changes to settle. The nirfsg_WaitUntilSettled function is not required after calling the nirfsg_Initiate function because the nirfsg_Initiate automatically waits for the output to settle.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' + 'description': '\n Waits until the RF output signal has settled. This function is useful for devices that support changes while in the Generation state. \n \n Call this function after making a dynamic change to wait for the output signal to settle.\n\n You can also call this function after calling the nirfsg_Commit function to wait for changes to settle. The nirfsg_WaitUntilSettled function is not required after calling the nirfsg_Initiate function because the nirfsg_Initiate automatically waits for the output to settle.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -4928,7 +4933,7 @@ { 'direction': 'in', 'documentation': { - 'description': ' Specifies the maximum time the function waits for the output to settle. If the maximum time is exceeded, this function returns an error. The units are expressed in milliseconds.\n\n **Default Value**: 10000\n\n ' + 'description': ' Specifies the maximum time the function waits for the output to settle. If the maximum time is exceeded, this function returns an error. The units are expressed in milliseconds.\n\n **Default Value** : 10000\n\n ' }, 'name': 'maxTimeMilliseconds', 'type': 'ViInt32', @@ -4942,7 +4947,7 @@ 'WriteP2PEndpointI16': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Writes an array of 16-bit integer data to the peer-to-peer endpoint. \n \n Use this function to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation.\n\n **Supported Devices**: PXIe-5673E\n\n **Related Topics**\n\n `Peer-to-Peer Data Streaming `_--Refer to this topic for more information about configuring a stream.\n\n `Configuring Flow Control `_\n\n `Starting Peer-to-Peer Generation `_\n\n `Reconfiguring a Stream `_\n ' + 'description': ' \n\n Writes an array of 16-bit integer data to the peer-to-peer endpoint. \n \n Use this function to write initial data from the host to the endpoint before starting generation to avoid an underflow when you start the generation.\n\n **Supported Devices** : PXIe-5673E\n\n **Related Topics**\n\n `Peer-to-Peer Data Streaming `_--Refer to this topic for more information about configuring a stream.\n\n `Configuring Flow Control `_\n\n `Starting Peer-to-Peer Generation `_\n\n `Reconfiguring a Stream `_\n ' }, 'included_in_proto': True, 'is_error_handling': False, @@ -5006,7 +5011,7 @@ 'WriteScript': { 'codegen_method': 'public', 'documentation': { - 'description': ' \n\n Writes a script to the device to control waveform generation in Script mode. \n \n First, configure your device for Script mode by calling the nirfsg_ConfigureGenerationMode function. The NI-RFSG device must be in the Configuration state before calling the nirfsg_WriteScript function.\n\n **Supported Devices**: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts.\n\n `Common Scripting Use Cases `_\n ', + 'description': ' \n\n Writes a script to the device to control waveform generation in Script mode. \n \n First, configure your device for Script mode by calling the nirfsg_ConfigureGenerationMode function. The NI-RFSG device must be in the Configuration state before calling the nirfsg_WriteScript function.\n\n **Supported Devices** : PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `Scripting Instructions `_--Refer to this topic for more information about VST restrictions on scripts.\n\n `Common Scripting Use Cases `_\n ', 'note': 'If you are using an RF vector signal transceiver (VST) device, some script instructions may not be supported.' }, 'included_in_proto': True, @@ -5047,7 +5052,7 @@ 'close': { 'codegen_method': 'private', 'documentation': { - 'description': ' \n Aborts any signal generation in progress and destroys the instrument driver session.\n\n **Supported Devices**: PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `NI-RFSG Programming State Model `_\n ' + 'description': ' \n Aborts any signal generation in progress and destroys the instrument driver session.\n\n **Supported Devices** : PXI-5610, PXIe-5611, PXIe-5644/5645/5646, PXI/PXIe-5650/5651/5652, PXIe-5653/5654/5654 with PXIe-5696, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842/5860\n\n **Related Topics**\n\n `NI-RFSG Instrument Driver Programming Flow `_\n\n `NI-RFSG Programming State Model `_\n ' }, 'grpc_name': 'Close', 'included_in_proto': True, From d8cd904a4b66e18f7f948f6d49d240a4c456bdc7 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Wed, 23 Apr 2025 11:30:51 +0530 Subject: [PATCH 41/46] Modified CHANGELOG.md --- CHANGELOG.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b99ed41cc7..e894c3a6e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ - [nidmm (NI-DMM)](#nidmm-ni-dmm) - [nifgen (NI-FGEN)](#nifgen-ni-fgen) - [nimodinst (NI-ModInst)](#nimodinst-ni-modinst) +- [nirfsg (NI-RFSG)](#nirfsg-ni-rfsg) - [niscope (NI-SCOPE)](#niscope-ni-scope) - [nise (NI Switch Executive)](#nise-ni-switch-executive) - [niswitch (NI-SWITCH)](#niswitch-ni-switch) @@ -1660,6 +1661,26 @@ - Initial release --- +### nirfsg (NI-RFSG) + +- [Unreleased](#nirfsg-unreleased) + +#### [nirfsg] Unreleased +- Added + - Added metadata for selected public APIs + - Basic example + - Documentation for APIs (not final) +- Changed +- Removed + +#### [niscope] 1.4.9 - 2025-02-26 +- Added + - (Common) Support for Python 3.13 +- Changed + - (Common) Fix [#2069](https://github.com/ni/nimi-python/issues/2069) +- Removed + - (Common) Support for Python 3.8 + ### niscope (NI-SCOPE) - [Unreleased](#niscope-unreleased) From 5d268edda7ef117718af8a38bda85455574151ce Mon Sep 17 00:00:00 2001 From: Vagupta Date: Wed, 23 Apr 2025 11:49:24 +0530 Subject: [PATCH 42/46] Modified CHANGELOG.md --- CHANGELOG.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e894c3a6e3..33bcdfd238 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1673,14 +1673,6 @@ - Changed - Removed -#### [niscope] 1.4.9 - 2025-02-26 -- Added - - (Common) Support for Python 3.13 -- Changed - - (Common) Fix [#2069](https://github.com/ni/nimi-python/issues/2069) -- Removed - - (Common) Support for Python 3.8 - ### niscope (NI-SCOPE) - [Unreleased](#niscope-unreleased) From 79512f8383fd3892fd0f451fbc8b10bf40d01977 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 25 Apr 2025 07:19:54 +0000 Subject: [PATCH 43/46] Resolved comments --- CHANGELOG.md | 2 +- build/templates/index.rst.mako | 8 +++++++- docs/nidcpower/index.rst | 2 +- docs/nidigital/index.rst | 2 +- docs/nidmm/index.rst | 2 +- docs/nifgen/index.rst | 2 +- docs/nimodinst/index.rst | 2 +- docs/nirfsg/index.rst | 1 - docs/niscope/index.rst | 2 +- docs/nise/index.rst | 2 +- docs/niswitch/index.rst | 2 +- docs/nitclk/index.rst | 2 +- 12 files changed, 17 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 33bcdfd238..c3563df429 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1667,7 +1667,7 @@ #### [nirfsg] Unreleased - Added - - Added metadata for selected public APIs + - Enabled selected public APIs - Basic example - Documentation for APIs (not final) - Changed diff --git a/build/templates/index.rst.mako b/build/templates/index.rst.mako index 01cf906268..0060475472 100644 --- a/build/templates/index.rst.mako +++ b/build/templates/index.rst.mako @@ -3,6 +3,10 @@ doc_header = f"{config['driver_name']} Python API Documentation" module_name = config['module_name'] driver_name = config['driver_name'] + mi_drivers = ['nidcpower', 'nidigital', 'nidmm', 'nifgen', 'nimodinst', 'niscope', 'niswitch', 'nise', 'nitclk'] + read_the_docs_note = ( + "Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier." + ) %>\ ${doc_header} @@ -25,7 +29,9 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +% if module_name in mi_drivers: +${read_the_docs_note} +% endif .. include:: ../_static/license.inc diff --git a/docs/nidcpower/index.rst b/docs/nidcpower/index.rst index e3316ff9ea..2a68c96659 100644 --- a/docs/nidcpower/index.rst +++ b/docs/nidcpower/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nidigital/index.rst b/docs/nidigital/index.rst index 99a79bfddb..e743cca9c5 100644 --- a/docs/nidigital/index.rst +++ b/docs/nidigital/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nidmm/index.rst b/docs/nidmm/index.rst index 61adbcbe74..05d0f629db 100644 --- a/docs/nidmm/index.rst +++ b/docs/nidmm/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nifgen/index.rst b/docs/nifgen/index.rst index 79135d4538..2e348cf87a 100644 --- a/docs/nifgen/index.rst +++ b/docs/nifgen/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nimodinst/index.rst b/docs/nimodinst/index.rst index ba7846d7a3..d797664e42 100644 --- a/docs/nimodinst/index.rst +++ b/docs/nimodinst/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nirfsg/index.rst b/docs/nirfsg/index.rst index b8e53fff98..773b055477 100644 --- a/docs/nirfsg/index.rst +++ b/docs/nirfsg/index.rst @@ -19,7 +19,6 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/niscope/index.rst b/docs/niscope/index.rst index 0f3242acad..36274bcfee 100644 --- a/docs/niscope/index.rst +++ b/docs/niscope/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nise/index.rst b/docs/nise/index.rst index 15817aa287..5221cda293 100644 --- a/docs/nise/index.rst +++ b/docs/nise/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/niswitch/index.rst b/docs/niswitch/index.rst index 94561485dd..ac28a61bd0 100644 --- a/docs/niswitch/index.rst +++ b/docs/niswitch/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc diff --git a/docs/nitclk/index.rst b/docs/nitclk/index.rst index 2f0e654f64..508cec06b4 100644 --- a/docs/nitclk/index.rst +++ b/docs/nitclk/index.rst @@ -19,7 +19,7 @@ Additional Documentation Refer to your driver documentation for device-specific information and detailed API documentation. -For drivers other than nirfsg, refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. +Refer to the `nimi-python Read the Docs project `_ for documentation of versions 1.4.4 of the module or earlier. .. include:: ../_static/license.inc From 0d4fc7ff1fed49beab5a0bfb9357f33a4b515e88 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Fri, 25 Apr 2025 13:32:31 +0530 Subject: [PATCH 44/46] Updated latest nirfsg installer version --- src/nirfsg/metadata/config_addon.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nirfsg/metadata/config_addon.py b/src/nirfsg/metadata/config_addon.py index 623a2bd07c..8cc2474c64 100644 --- a/src/nirfsg/metadata/config_addon.py +++ b/src/nirfsg/metadata/config_addon.py @@ -1,7 +1,7 @@ # We need to maintain the version here since it needs to be updated by the build process on GitHub config_additional_config = { 'module_version': '0.2.0', - 'latest_runtime_version_tested_against': '2025 Q1', + 'latest_runtime_version_tested_against': '2025 Q2', 'initial_release_year': '2025', 'custom_types': [ ] From f31bdb1331778ee90ebf3b65f0e02fbc2086e3d0 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Sat, 26 Apr 2025 11:36:57 +0000 Subject: [PATCH 45/46] Reran codegen and updated generated files --- README.rst | 2 +- docs/nirfsg/status.inc | 2 +- generated/nirfsg/README.rst | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.rst b/README.rst index 7cf3e55766..6fb058022a 100644 --- a/README.rst +++ b/README.rst @@ -296,7 +296,7 @@ NI-RFSG Python API Status +-------------------------------+-----------------------+ | NI-RFSG (nirfsg) | | +===============================+=======================+ -| Driver Version Tested Against | 2025 Q1 | +| Driver Version Tested Against | 2025 Q2 | +-------------------------------+-----------------------+ | PyPI Version | |nirfsgLatestVersion| | +-------------------------------+-----------------------+ diff --git a/docs/nirfsg/status.inc b/docs/nirfsg/status.inc index cf12cefcb4..2e34f4eea5 100644 --- a/docs/nirfsg/status.inc +++ b/docs/nirfsg/status.inc @@ -5,7 +5,7 @@ NI-RFSG Python API Status +-------------------------------+-----------------------+ | NI-RFSG (nirfsg) | | +===============================+=======================+ -| Driver Version Tested Against | 2025 Q1 | +| Driver Version Tested Against | 2025 Q2 | +-------------------------------+-----------------------+ | PyPI Version | |nirfsgLatestVersion| | +-------------------------------+-----------------------+ diff --git a/generated/nirfsg/README.rst b/generated/nirfsg/README.rst index 98b3136f52..19e1d03c08 100644 --- a/generated/nirfsg/README.rst +++ b/generated/nirfsg/README.rst @@ -53,7 +53,7 @@ NI-RFSG Python API Status +-------------------------------+-----------------------+ | NI-RFSG (nirfsg) | | +===============================+=======================+ -| Driver Version Tested Against | 2025 Q1 | +| Driver Version Tested Against | 2025 Q2 | +-------------------------------+-----------------------+ | PyPI Version | |nirfsgLatestVersion| | +-------------------------------+-----------------------+ From cc31893e7ff3223b9d3c116dc39a48e8d25bcc66 Mon Sep 17 00:00:00 2001 From: Vagupta Date: Sun, 27 Apr 2025 00:04:11 +0530 Subject: [PATCH 46/46] Updated files --- LICENSE | 2 +- docs/nirfsg/about_nirfsg.inc | 2 ++ docs/nirfsg/examples.rst | 4 ++-- generated/nifake/README.rst | 2 +- generated/nirfsg/README.rst | 4 +++- 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/LICENSE b/LICENSE index 11ee035d1b..4d4e4901e2 100644 --- a/LICENSE +++ b/LICENSE @@ -1,7 +1,7 @@ This is the MIT license: http://www.opensource.org/licenses/mit-license.php Copyright (c) 2017-2022, National Instruments Corporation. -NI-Digital Pattern Driver, NI-DMM, NI-DCPower, NI-FGEN, NI-SCOPE, NI-SWITCH, NI Switch Executive, +NI-Digital Pattern Driver, NI-DMM, NI-DCPower, NI-FGEN, NI-RFSG, NI-SCOPE, NI-SWITCH, NI Switch Executive, NI-ModInst, NI-TClk are trademarks of National Instruments. Permission is hereby granted, free of charge, to any person obtaining a copy of this diff --git a/docs/nirfsg/about_nirfsg.inc b/docs/nirfsg/about_nirfsg.inc index 90b7d372a4..f3d1bb4d3c 100644 --- a/docs/nirfsg/about_nirfsg.inc +++ b/docs/nirfsg/about_nirfsg.inc @@ -11,3 +11,5 @@ Support Policy It follows `Python Software Foundation `_ support policy for different versions of CPython. +NI created and supports **nirfsg**. + diff --git a/docs/nirfsg/examples.rst b/docs/nirfsg/examples.rst index 3700766e04..aeaca2c243 100644 --- a/docs/nirfsg/examples.rst +++ b/docs/nirfsg/examples.rst @@ -1,7 +1,7 @@ Examples ======== -`You can download all nirfsg examples here `_ +`You can download all nirfsg examples here `_ nirfsg_cw.py ------------ @@ -10,5 +10,5 @@ nirfsg_cw.py :language: python :linenos: :encoding: utf8 - :caption: `(nirfsg_cw.py) `_ + :caption: `(nirfsg_cw.py) `_ diff --git a/generated/nifake/README.rst b/generated/nifake/README.rst index 11ee035d1b..4d4e4901e2 100644 --- a/generated/nifake/README.rst +++ b/generated/nifake/README.rst @@ -1,7 +1,7 @@ This is the MIT license: http://www.opensource.org/licenses/mit-license.php Copyright (c) 2017-2022, National Instruments Corporation. -NI-Digital Pattern Driver, NI-DMM, NI-DCPower, NI-FGEN, NI-SCOPE, NI-SWITCH, NI Switch Executive, +NI-Digital Pattern Driver, NI-DMM, NI-DCPower, NI-FGEN, NI-RFSG, NI-SCOPE, NI-SWITCH, NI Switch Executive, NI-ModInst, NI-TClk are trademarks of National Instruments. Permission is hereby granted, free of charge, to any person obtaining a copy of this diff --git a/generated/nirfsg/README.rst b/generated/nirfsg/README.rst index 19e1d03c08..ba06d375bf 100644 --- a/generated/nirfsg/README.rst +++ b/generated/nirfsg/README.rst @@ -8,7 +8,7 @@ Overall Status +----------------------+------------------------------------------------------------------------------------------------------------------------------------+ =========== ============================================================================================================================ -Info Python bindings for NI Modular Instrument drivers. See `GitHub `_ for the latest source. +Info NI Modular Instrument driver APIs for Python. Author NI =========== ============================================================================================================================ @@ -46,6 +46,8 @@ Support Policy It follows `Python Software Foundation `_ support policy for different versions of CPython. +NI created and supports **nirfsg**. + NI-RFSG Python API Status -------------------------