This article describes the release version 3.0.1 (including that of 3.0.0) of the PyRF3 Python language Application Programming Interface (API) for command, control and data acquisition using ThinkRF Real-Time Spectrum Analyzer products.
The release package consists of the *.egg files for installation, source code, documentation with installation instructions, and examples.
This version of the API is compatible with all ThinkRF R55x0 and R57x0 products.
The following issues are fixed in this version.
1. Fixed issues found in pyrf version and added more error handling.
2. Fixed SweepEntry class of pyrf.config.py to handle the parameters properly.
3. Fixed handling of IQ_OUTPUT_CONNECTOR for R57x0
4. Fixed compute_usable_bins() handling of SHN mode and providing undesired 'usable bins' during decimation.
5. Corrected the center frequency value for DD mode to 0, not 31.25 MHz.
The following new features and capabilities were added to this version.
1. Migrated and upgraded former `pyRF v2.x.0 source `_ to work with Python3.
2. Added spectral flattening methods to support RTSA devices with flattening vectors.
3. scpiget() of pyrf.devices.thinkrf now has a timeout option.
4. Increased SPP max to 65504.
5. RBW could go down to Hz range.
6. Added support for R55x0-408P products.
7. Added 2 new examples to show how to use sync setup or Twisted async, with flattening.
8. New algorithm for calculate_occupied_bw() of pyrf.numpy_util method.
The following changes were made.
1. Updated source code and examples to work with pyqtgraph and PySide2 in Python3.
2. Adjusted twisted_async.py to work Twisted in Python3.
3. Restructured thinkrf_properties.py.
4. Improved handling of data capture in capture_device.py, as well as RBW, SPP and PPB parameters.
5. Improved sweep-device handling, including allow for smaller RBWs due to larger SPPs used.
6. Removed support for legacy ThinkRF products (WSA4000, WSA5000 and their equivalent) and their associated features.
7. Updated the documentation for PyRF3.
8. Updated existing examples to work with PyRF3 changes.
Known Issues and Limitations