Download C API 3.8.1

View Release Notes


This articledescribes version 3.8.1 of the ThinkRF C language Application Programming Interface (API) for command, control and data acquisition using ThinkRF Real-Time Spectrum Analyzer (RTSA) products. This product is distributed as a single file archive in .zip format containing Microsoft Windows library file (.a and .lib) in 32- and 64-bit, interface (.h) files, and example files. This version of the API is compatible with all ThinkRF R55x0, R57x0 and WSA5000 products. 

1 Fixed Defects 

The following issues have been fixed in this version. 

    1. Fixed GNSS enable detection. Added note that if enabling GNSS while it is already ON will cause the GNSS module to re-acquire a fix, which could affect the data collected for up to a few seconds. 

    2. Corrected wsa_compute_fft() calculation of I-data’s power output and improved its computation. 

    3. Fixed SHN’s usable bandwidth for when used with decimation 4 and 8 to be 10 MHz. 

2 New Features 

The following new features and capabilities were added to this version. 

    1. Added the following 2 new functions: 

        a) wsa_clean_cmd_socket() 

        b) wsa_compute_fft_corr_options() 

    2. Added IQ imbalance correction (correction on always for wsa_compute_fft() and user controllable with wsa_compute_fft_corr_options()). However, recommend to turn on IQ imbalance correction for ZIF mode only (see examples). 

3 Other Changes 

The following other changes were made. 

    1. Improved handling of wsa_send_command() for SCPI and to no longer mask the SCPI error with WSA_ERR_SETFAILED error but send the actual SCPI error code instead. 

    2. Improved wsa_query_error() and does command socket clean-up if a command socket timeout occurred by using wsa_clean_cmd_socket(). 

    3. Removed unused struct members: ‘ant_port’ of wsa_sweep_list struct, and ‘temperature’ of wsa_receiver_packet struct. 

    4. Handled spectral inversion in time-domain data such that users no longer require to do spectral bins swapping after an FFT computation. However, the indicator is still made available for when handling SH/SHN output with IF frequency not at zero. 

    5. Improved the occupied bandwidth calculation method. 

    6. Improved wsa_flush_data(), wsa_system_abort_capture() and wsa_clean_data_socket() to properly handle socket timeout. 

    7. Improved sweep’s and stream’s start and stop handling to properly checking and clean-up. 

    8. Improved handling of WSA_WARNING_SOCKETTIMEOUT error in capture, especially for triggering and VRT GNSS related capture. 

    9. Added to README.txt instructions for using *.lib libray with Microsoft Visual Studio. 

    10. Updated examples to use the new functions and due to the changes. 

4 Known Issues and Limitations 

The following are the known limitations or other issues present in this version. 

    1. The message logging capability implemented in wsa_debug.* is suspected to cause intermittent problems after hours of intense sweeping activity. To avoid potential issues, disable message logging using “DEBUGLEVEL DNO” in wsa_debug.h. 

    2. The source code has only been partially documented using Doxygen.

Download C API 3.8.1

View Release Notes