Dear Customers,

The PolySync Support Center is now just for submitting tickets to our support team. All articles and tutorials have been moved to the new PolySync Help Center and the content below will be removed shortly.

Thank you,
The PolySync Team

Release Notes

Version 2.0.7-pr7
September 6th, 2016

New

  • A Host Wizard was added to the SDF Configurator to help with network setup, and to warn of mismatched network settings
    • Use the SDF Configurator to select the host configuration and IP address that matches your machine/ECU
  • The C++ Logfile API was added, along with examples on how to record, replay, iterate and connect to a logfile queue
  • A Vehicle OBD-II interface was added to the list of supported sensors
    • 99 common CAN ID’s supported, which can be queried on a vehicle-by-vehicle basis
    • Publishes the `ps_platform_obd_msg` message
  • The Neobotix USBoard Ultrasonics sensor interface was added to the list of supported sensors
    • Connect up to 16 Ultrasonic sensors to the USBoard and access zone message data from the PolySync bus
  • The Video plugin has a toggle for object message overlay
    • For objects without a 3D size, such as the MobilEye 560 which only provides width, the object is represented with a line rather than a 2D rectangle:
      • <-------->
  • 3D View can visualize zone messages, which are commonly output by Ultrasonic sensors
  • New message support for the OxTS RT3000 interface
    • Now supporting Batch 2 and Batch 3 channel data

Fixed

  • Fixed the GUI installers premature file-copy bug
  • Squashed a bug causing the license tool Host ID field to change, when a new network device was connected
  • Resolved a bug that was causing the license tool Host ID field to change, when a new network device was connected
    • A persistent Host ID can be set in the `polysync/utils/<arch>/etc/config/ospl.xml` file
  • Fixed a bug within Studio causing the application to hang on startup when the license was invalid
  • Fixed a threading issue within Studio causing a crash when closing plugins
  • Fixed a bug with the MobilEye driver, which caused the lane model to have an inverse curvature value
  • Fixed the Velodyne LiDAR points message timestamping mismatch in the replay queue
    • The replay `message->header.timestamp` value is now preserved from the recorded data (`ps_byte_array_msg`)
    • This allows a custom application to access the native timestamp data, before the data is published to the PolySync bus
  • Fixed the Video plugin bug so that the aspect ratio is maintained during decoding
  • Fixed the C++ CANChannel object constructor bug following the changes in PR6

Changed

  • The default PolySync IP address was changed from `AUTO`, to `127.0.0.1`
    • Multicast must be enabled for PolySync's DDS communication layer to work on the loopback interface
    • It's recommended to use the loopback (lo, 127.0.0.1) for single machine PolySync systems
      • The IP address can be changed with the command `polysync-manager -s xxx.xxx.xxx.xxx`
    • The `polysync_post_install.sh` script persistently enables multicast across reboots for the loopback interface
  • The Logfile API has a new ‘Readying’ state which has been added to the state machine to handle the intermediate management between activation and ready
    • The Asynchronous Record & Replay  log session management previously blocked during activation and deactivation
    • The blocking state was moved to the synchronous version of Record & Replay
  • The license tool indicates directly whether a license is valid or not
    • Call `polysync-license-tool` to check your license status
  • The C++ Application Node was updated
    • Previously the Application Node was calling `std::future::get()` when the method had already finished giving undefined behaviour
  • The Node destructor will wait for release state to finish before destructing
    • The Application Node destructor does not call `disconnectFromPolySync`, as this was already happening on the Node destructor
  • Studio Trace prints double types with full precision
  • The C++ System API now has appropriate `const` usage throughout the `get` routines
  • Xsens debug flag added to print position, orientation and acceleration data to stdout for testing
  • Supported sensor links from the SDF Configurator updated to point to the new polysync.io URL
  • Optimized Studio’s shared-data module behaviour to decrease system load on the System Hierarchy rendering process
    • This affected systems with 15+ nodes being spawned at the same time

Version 2.0.6-pr6
Internal

 New

  •  Scrolling interface for the SDF Configurator parameter table
  • We have added a File Transfer API, which will facilitate the new logfile management features and also allow you to pass data around, anywhere!

Fixed

  • Fixed a bug in the C++ polysync::Node empty constructor, causing undefined behaviour in unused event methods
  • Fixed the issue causing Studio to lock up, when the polysync.log file contained 5k+ entries
    • The zlog configuration file is configurable to limit the size, or rotate the log to save all data
    • Studio Console limits the number of entries it will load on startup to prevent similar issues
  • Fixed the Trace plugin when one or more column of data would stop updating
  • Fixed the Replay control module usage for node synchronization
  • Found a bug within the Video plugin image decoder, where the output resolution was a constant 640x480
    • Now the displayed aspect ratio will always match the published aspect ratio
  • Fixed the missing SDF IO parameters for the Ibeo family of sensors for the default SDF shipped in the release

Changed

  • The PolySync Manager will no longer update the SDF when the PolySync interface is set with the ‘-s’ flag
    • The IP address must be entered in the SDF through the SDF Configurator
    • Once the host is defined in the SDF Configurator, each host must execute the ‘polysync-manager -s xxx.xxx.xxx.xxx’ command once
  • We fixed the accessibility of the timing interval for C++ API Node event methods
    • Previously the default sleep occurring under the hood of each occurrence of Node::okStateEvent(), which was adjustable by calling Node::setOkStateTimingInterval()
    • We’ve brought the default timing for all states to the default virtual event functions in the base class, allowing full control when each event method is overridden
  • Studio Console will expand and line wrap when you double-click on a log message
  • Optimization in the C++ PolySync bus-to-node message passing by removing unnecessary MessageListener::executeListener sleeps
  • Revised the replay module publish timestamp behavior
    • Replay module will only update a message.header.timestamp value when the node is configured to publish the message type
    • If it’s configured to only use the replay queue, then the message.header.timestamp value is preserved
      • This lets the driver/interface/user decide how to use the native timing data if desired

 

Version 2.0.5-pr5
June 15th, 2016

New

  • The MobilEye Lane Keeping Assist (LKA) protocol was added to the MobilEye 560 interface
    • You’re able to access and view multiple lane models (multiple lanes) and determine the lane model degree
    • Event and traffic sign stream are also published to the PolySync bus as ps_event_msg and ps_traffic_sign_msg
  • The Video API was extended to include compression profiles, and the encoder was opened up to allow for custom configuration through extended parameter support
    • The new features are available for both Point Grey GigE and video-device interfaces
  • A new Echo C++ example, which is a sophisticated reader and debugging command line tool
  • A new article is available detailing the steps to extend the PolySync data model

Fixed

  • Fixed a bug that blocked the C++ SDF API from setting the parameters value field through “parameter.setValue()”
  • Fixed the permissions on the zlog lockfile to be readable and writable by all users.
    • This allows PTP to start at boot as root user, and not effect the PolySync nodes during runtime running under the normal user context
  • Added a warning dialog when a duplicate host name is detected in the SDF Configurator
  • Fixed a visual bug where debug console “All” label remained checked when all log levels were deselected

Changed

  • We’ve moved the sleep intervals in the PolySync C++ API State Handler to the Node and Application base class event
    • Previously there was a default sleep occurring under the hood after each occurrence of Node::okStateEvent(), which was adjustable by calling Node::setOkStateTimingInterval
    • We've brought out the default timing for unused states to the default virtual event functions in the base class
    • Now, when you override an event method you have full control over timing with the node template (state machine)
  • The license tool does not ping the license server by default
    • You must pass in the ‘-a’ flag to ping the license server and download license rights from or upload a capability response to the license server
  • Studio’s Trace plugin had a major overhaul, extending its functionality
    • Each trace starts by selecting a message from a list of active message types being published to the PolySync bus
    • Filter data structures and individual fields from incoming messages
    • Option to export the selected data to a CSV file
  • The Dynamic Driver was updated to update get/set parameter commands while in the PolySync node template Error state
  • The C++ Serial API was abstracted away from the underlying Operating System, allowing you to have control over the serial configuration and not be bound to Linux
    • You can set flow control, data bits, parity and stop bits
  • The Dynamic Driver will not enter the Fatal state while in replay (no-hardware) mode upon receiving an invalid logfile session ID to load
    • This avoids stopping and restarting all nodes if you accidently selected the wrong or an invalid logfile session

Known Issues

  • We're aware of a memory leak within DDS that affects systems looping logfiles larger than 75GB

 


 

Version 2.0.4-pr4
May 18th, 2016
Note: Do not install PolySync as root. Simply follow the installation guide. The installer will request root-level password as needed. 

New

  • The Debug console displays errors, warnings and other PolySync log messages within Studio
    • Quickly filter for messages of interest, and avoid that extra terminal window!
  • The newest example application Echo allows you to quickly print, filter and log CSV data from the command line, neat!
  • Self-managed and cloud floating license servers for your Autonomy  / ADAS / HMI  development teams
    • Floating license server allows you to manage a pool of PolySync licences on a local server

Fixed

  • Fixed a bug causing logfile replay issues with sessions recorded in sequence
  • Studio was being rude and sometimes consuming all the processing time of a single CPU. Studio apologizes.
  • Fixed a bug within the Replay module when a logfile session that’s already playing is reselected
  • Fixed a bug within the C++ API that prevented applications from printing messages to stdout
  • Fixed a bug that disallowed double types to accept negative values in the SDF Configurator
  • Fixed a bug to allow C++ record and replay examples to compile

Changed

  • The C++ application node abstraction hides a lot of the nitty-gritty details and provides a clean interface to the PolySync bus
  • Core logging utility migrated to use a central, configurable logging system
    • Applications log to the PSYNC_HOME/polysync.log file for all error, warn, info and debug messages
    • Default configuration does not log to the Linux syslog
  • Studio backend refactored to use the updated application node
    • Enforce applications to maintain a single instance of polysync::node
  • Ibeo ScaLa interface visualization updates
    • ScaLa reports two messages, one per mirror side
      • We added parameters to allow publishing of one or both mirror sides, and a basic stitching parameter to combine mirror sides

Known Issues

  • We're aware of a memory leak within DDS that affects systems looping logfiles larger than 75GB

Version 2.0.3-pr3
April 20th, 2016
Note: Do not install PolySync as root. Simply follow the installation guide. The installer will request root-level password as needed. 

New

  • New custom data model and logfile API examples
  • Excellent new lane model visualization in the Studio World 3D plugin
  • Export logfile data quickly into custom formats or applications
    • Logfile for-each iterator processes logfiles outside the PolySync time-domain
  • Logfile record sessions now have a duration indicator
  • Diagnostic Trouble Code (DTC) module added to the default data model
    • This flexible module allows you to add custom DTCs to your PolySync applications
  • Point Grey GigE interface now allows you to set the operation mode
  • Snazzy new splash screens and desktop icons for PolySync Studio and SDF Configurator
  • SDF Configurator node entries link directly to Supported Sensors page
  • Activation is now handled in the GUI installer. Simply enter your Activation ID when prompted and we’ll take care of the rest. If you have an existing license, the installer will download it for you automagically. High five.

Fixed

  • Destroyed an issue where World 3D plugin (while drawing objects) would cause Studio to crash
  • Zapped a memory leak by fixing our read thread mechanism for copying dynamic terminal types within the Logfile API
  • Fixed time alignment issues with overlayed data in the Video plugin
  • Improved seek logic for replay operations within the logfile API
  • C++ vectors can now be set to empty or size 0
  • Fixed an issue where the reference count for nodes recording logfile data was not reporting accurately.
  • Added a missing delimiter to the C++ parameter get/set object
  • Annihilated an issue where CAN devices would hang while they parsed the sensor identifier
  • Schooled polysync::Message::print to accept std::ostream argument
  • Destroyed a null string bug in SDF API
  • Buried an issue where the Host tab name wouldn’t update until SDF Configurator restarted
  • Resurrected the tree-view file browser in our API docs
  • Blasted a bug where logfile replay timestamps did not reflect the published timestamp
  • Law & Order: Xsens data transformation is now applied prior to being published on the bus
  • KO’d an issue where MobilEye timestamps were not properly reported during replay
  • Ibeo devices now accept custom port values from the SDF Configurator. Friends4ever.

Changed

  • System Hierarchy plugin no longer displays disabled nodes from the SDF Configurator
    • Because you disabled them...
  • Node Template API now returns specific DTCs for application exit status from psync_node_main_entry()
  • Dynamic driver interfaces default to vehicle platform coordinate frame, instead of the sensor local frame
    • Now you can view all sensor data in a unified coordinate frame
  • PolySync Manager can now accept commands, and return responses through two new message types
    • This makes it easier to manage the PolySync runtime
  • All C++ character sequences are returned as std::string
    • The old way would flip-flop between returning std::string or std::vector, and we’re sorry
  • Reset schema function has been moved to the menu bar of the SDF Configurator.  You'll get a warning dialog, too.
  • The logfile session browser populates faster and more dependably
    • Because you’ve got better things to do.
  • PolySync Installer package is now 400MB lighter
    • Because compression.

New Documentation

Known Issues

  • We're aware of a memory leak within DDS that affects systems looping logfiles larger than 75GB

 


Version 2.0.2-pr2
March 22nd, 2016
Note: Do not install PolySync as root. Simply follow the installation guide. The installer will request root-level password as needed.

Updates to PolySync Studio

  • Fixed an issue where System Hierarchy was causing Studio to crash
  • Lane model in Video Overlay
    • See lane models drawn over video stream, live and in replay
  • LiDAR in Video Overlay
    • See LiDAR points drawn over video stream, live and in replay
  • Parameter Get/Set capability
    • Set mount position live and see sensor data transformed in the 3D Viewer
  • Holding CTRL-Alt-R-A-1_n parts the clouds and brings out the sun in Portland, Oregon.
    • Not really.

Bug fixes

  • Installer
    • Installer now manages root access so sudo is no longer required.
    • Updated LinuxCAN to 5.14.
    • Fixed permissions bug
  • Ibeo fusion ECU CAN writer yaw rate signal fix
    • Yaw rate now scales correctly.
  • Manager node not killing all nodes fix
    • Manager can now kill any nodes it spawns.

Improvements

  • MobilEye 560 publishing lane model messages
    • Subscribe to lane model messages with MobilEye dynamic driver

New hardware support

  • SainSmart 16 channel USB controller support
    • Control power for up to 16 sensors using the SDF Configurator and toggle states with Get/Set in Studio.

 

 

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.