PST SDK

RELEASE NOTES

*******************************************************************************

RELEASE DATE: 2026-03-31

VERSION: 7.0.0

*******************************************************************************

BINARY COMPATIBILIY
===================
Applications built with earlier version of the PST SDK are incompatible with version 7.0.0

CHANGELOG
=========
NEW FEATURES
------------
* PST SDK: Added support for setting detection regions on supported PST systems. When available,
           the function allows switching between Full or Optimal detection regions. The Full 
		   region uses the complete PST field of view for tracking while the Optimal region 
		   limits the field of view and tracking distance to a characterized area with optimal 
		   tracking performance.
* PST SDK: Added detection region member to all point objects across all APIs.
* PST SDK: Detected tracking targets now report a matching error as part of the target pose in 
           the API. This error represents the RMS error of the detected markers compared to the 
		   known target model markers.
* PST SDK: Added matching error member to all target pose objects in all APIs.
* PST SDK: The SHA1 hash of local cam files can now be retrieved through the API, enabling easy 
           comparison of the local cam files to the server stored ones.
* PST SDK: Added new GetConnectedCameraInfo() function to get camera information. This function
           replaces GetConnectedCameraUrls(), which has been deprecated.
		   
IMPROVEMENTS
------------
* PST SDK: Improved stability of Tracker object instances. Improved handling of multiple Tracker 
           instances.
* PST SDK: Improved listener lifetime handling. Users should remove registered listeners before 
           destroying the tracker to avoid lifetime issues. When using the C++ API, the Implementation
           of the Listener destructor is recommended.
* PST SDK: AddTrackerListener() and RemoveTrackerListener() in the C++ API are made static to enable
           listener removal from inside Listener destructor.
* PST SDK: AddTrackerListener() and RemoveTrackerListener() in the C# API no longer require ref for 
           the listener parameter.
* PST SDK: Updated C# examples supported .NET versions.
* PST SDK: Improved usability of Python API documentation.
* PST SDK: Python API can now be installed via pip on Windows without admin rights.
* camera plugins: Updated plugins for compatibility with PST server 7.0.0.

BUGFIXES
--------
* PST SDK: Fixed a crash that could occur when the PST configuration folder contained a camera 
           calibration file for only one camera.
* PST SDK: PST REST API now correctly pauses the tracker when requested.
* PST SDK: Fixed an issue where disconnecting a PST unit during operation could occasionally 
           cause the C# API to crash. Stability improvements now prevent crashes when 
		   disconnecting the tracker.
* PST SDK: Fixed issue where not all tracker error codes were properly converted between APIs.
* PST SDK: 32-bit Python API installation now correctly includes the nlopt-0.dll dependency.



*******************************************************************************

RELEASE DATE: 2023-10-16

VERSION: 6.0.0

*******************************************************************************

BINARY COMPATIBILIY
===================
Applications built with earlier version of the PST SDK are incompatible with version 6.0.0

CHANGELOG
=========
NEW FEATURES
------------
* PST SDK: Added new get single measurement functionality that enables the user to
           poll for the latest 6DoF 3D pose measurement once instead of listening to
           the data stream continuously. This functionality is mostly useful when
           measurements are only required at irregular times upon user request.
* PST SDK: Added tracker status listener functionality. The listener class now allows
           a user to implement the OnTrackerMode status listener function, providing 
           real-time status information from the PST system. The status listener will 
           receive updates on events like the PST system starting, pausing or being 
           disconnected.
* PST SDK: Extended the target pose information received from the PST SDK with information
           on the markers used to determine the target pose. This information is provided
           as a list of the markers used and their measured 3D position. Note that this
           additional information makes the target pose data retrieved from the PST SDK
           incompatible with previous versions of the PST SDK.
* PST SDK: Added LoadCalibrationFromLocalPath option to load camera calibration files from 
           a local path. This way a user can initialize a new PST system through the PST SDK.
* PST SDK: Added GetConnectedCameraUrls option to get URLs for downloading the camera
           calibration files necessary to initialize the currently connected PST system.
* PST SDK: Added ImportJSONModel option to Import a JSON-formatted target model to the
           model database. The function takes a SJON-formatted string according to the 
           specification found in Appendix A of the PST Manual.
* PST SDK: Added ExportJSONModel option to export a target model from the model database as
           a JSON-formatted string. The function returns a SJON-formatted string according 
           to the specification found in Appendix A of the PST Manual.
* PST SDK: Added RemoveTargetModel option to remove any target model from the target database.
              
IMPROVEMENTS
------------
* General: Improved PST connection stability. PST tools will no longer crash
           when the PST gets disconnected while in operation. Instead, tools
           will detect disconnects and can be resumed after the PST has been
           reconnected. When using the PST SDK, the user will have to call
           Start to resume tracking.
           The changes made to improve connection stability make all individual
           components of version 6.0.0 incompatible with previous releases of
           the software.
* General: Improved target detection and tracking when 3-marker detection is enabled.
           3-marker detection now also works for targets with up to 5 markers.
* PST SDK: Improved Python deployment instructions in the PST SDK Manual.

BUGFIXES
--------
* General: Fixed issue where under certain conditions filtering would be enabled for some targets
           while being disabled for others.
* General: Fixed issue where filtering settings would not be maintained correctly when switching between
           different tracker modes.
* PST SDK: Calling Tracker Start() no longer implicitly enables filtering.
* PST SDK: Fixed issue where changing filtering state before starting the tracker had no effect.