PolySync Workflows

Once PolySync is installed on the host ECU, you can take advantage of the massive amount of provided developer resources. Each section may be pursued independent of completing other sections, with the exception of connecting to hardware before recording sensor data. ### 1. Connecting to hardware PolySync supports a wide array of sensors used in autonomous vehicles. Each hardware device follows the same high-level configuration paradigm: 1. Physically connect the hardware device to the ECU 2. Configure the host ECU network IP address, CAN channel, or serial connection 3. Define a PolySync Dynamic Driver node using the SDF Configurator 4. Enter the sensor's IO configuration information in the SDF 5. Start the Dynamic Driver node All required configuration information specific to a hardware device or sensor is detailed within the [Supported Sensors](https://help.polysync.io/releases/2.0.8//sensors/) sub-article. Follow these tutorials for examples on setting up different types of sensor nodes in PolySync: * [Connecting to a CAN sensor](https://help.polysync.io/releases/2.0.8//articles/connecting-to-a-can-radar-sensor/) * [Connecting to a USB webcam](https://help.polysync.io/releases/2.0.8//articles/connecting-to-a-sensor-webcam/) ### 2. Record sensor data The Dynamic Driver nodes mentioned above are capable of recording the incoming sensor data for future playback. The data is stored in the form of a plog file. When PolySync nodes are operating in the hardware state they can be commanded to start and stop recording logfile data at any time. Studio provides a handy interface to initiate and halt [recording of logfile sessions](https://help.polysync.io/releases/2.0.8//articles/recording-data/). The C and C++ APIs have the ability to command nodes to record and replay data too: * [polysync_rnr_control](https://github.com/PolySync/PolySync-C-Examples/tree/master/rnr_control) * C example used for both record and replay (rnr) operations * [Record](https://github.com/PolySync/PolySync-CPP-Examples/tree/master/Record) * C++ example to command nodes to record a logfile session with a unique session ID * [Replay](https://github.com/PolySync/PolySync-CPP-Examples/tree/master/Replay) * C++ example to select a logfile session, and pause/play the playback ### 3. Replay logfile sessions PolySync is able to replay pre-recorded logfile data from any other PolySync system. This does not require hardware to be connected to the ECU. To import logfile data recorded from another machine, read [here](/articles/?p=2344). To learn the process of replaying logfile sessions, follow this article which will [replay sample data](https://help.polysync.io/releases/2.0.8//articles/replay-logs-and-visualize-sample-data-2-0-pr-8/) provided with the PolySync release package. ### 4. HelloWorld with the C and C++ APIs The PolySync C and C++ APIs allow you to access data originating from sensor nodes on the system. The [Publishing and Subscribing tutorial](https://help.polysync.io/releases/2.0.8//articles/publishing-and-subscribing-tutorial/) is a lot like the classic HelloWorld, and introduces the concept of a C++ PolySync node. This does not require that hardware is connected to the ECU.