DriveWorks SDK Reference
4.0.0 Release
For Test and Development only

Basic Tutorials

If you are new to this SDK, begin with this section to get a general overview of DriveWorks. Ensure you have a firm understanding
before proceeding to the Intermediate Tutorials and Advanced Tutorials.

These basic tutorials teach you how to re-build existing samples, learn about the foundation modules, and create your first application.
They also teach you how to access all supported sensors and replay recorded data.

DriveWorks 101

Tutorial Description
Building DriveWorks Samples Compiling DriveWorks samples from sources on multiple platforms.
DriveWorks Conventions An overview on naming conventions, coordinate systems, and alignment.
Context Understanding the DriveWorks context.
System and Platform Information Retrieving system and platform information.
Hello World Application Putting it all together: creating your first DriveWorks based application.
Choosing the GPU for Execution Switching between iGPU and dGPU.
Logging Leveraging DriveWorks logging mechanisms.
Memory Management Policies and Multithreading Conventions for avoiding runtime memory corruption.

Modules used: Core.

Accessing Sensors

Sensors Overview

Tutorial Description
Sensors Life Cycle The general workflow required to use all supported sensors.
Sensor Querying Querying all supported sensors on a given platform.
Sensors Serialization Converting raw sensor data into a byte stream.
Sensor Timestamping Obtaining accurate timing information.
Replaying Sensors Using virtual sensors to replay pre-recorded data.

Modules used: Core | Sensors.

Camera Usage

Tutorial Description
Camera Workflow An example on accessing camera sensors.
SIPL-based Image Sensors (Live) Using the NvMedia Sensor Input Processing Library on live sensors.
SIPL-based Image Sensors (Virtual) Using the NvMedia Sensor Input Processing Library on recordings.

Modules used: Core | Sensors | Camera.

CANBUS Usage

Tutorial Description
Receiving and Sending Data An example on accessing the CANBUS.
Reading CAN Messages from Raw Data (Binary) Parsing raw CANBUS data.
CAN Interpreter The DriveWorks interpreter for the DBC format.

Modules used: Core | Sensors | CAN Bus.

GPS Usage

Tutorial Description
Reading GPS data from sensor An example on accessing GPS sensors.
Reading GPS data from raw (binary) data. An example on reading GPS data in raw format.

Modules used: Core | Sensors | GPS.

IMU Usage

Tutorial Description
Reading IMU data from sensor An example on accessing IMU sensors.
Reading IMU data from raw (binary) data. An example on reading IMU data in raw format.

Modules used: Core | Sensors | IMU.

Lidar Usage

Tutorial Description
Get Decoded Data Reading Lidar decoded data from live and virtual sensors.
Decode Raw Data Reading and decoding Lidar raw data.
Increase Packet Queue Size Reducing packet loss.

Modules used: Core | Sensors | Lidar.

Radar Usage

Tutorial Description
Radar Workflow An example on accessing Radar sensors.

Modules used: Core | Sensors | Radar.

Time Usage

Tutorial Description
Get Time Synchronized Data An example on receiving time synchronized Lidar packets from a live Lidar sensor.

Modules used: Core | Sensors | Time.

Accessing Rig Configurations

Tutorial Description
Rig File Format How rigs are described in DriveWorks.
Accessing Vehicle Properties and Sensors From a Rig File Accessing Vehicle Properties and Sensors From a Rig File

Modules used: Core | Rig Configuration.

Utilities

Tutorial Description
IPC Workflow Inter Process Communication with Sockets.
Renderer Workflow An introduction on low level rendering APIs.
Renderer Engine Workflow A more advanced method for drawing points, lines, triangles, boxes, ellipses, and grids.

Modules used: IPC | Renderer.

Static Calibration and Recording Data

Tutorial Description
Calibration Overview Overview over the static calibration tools.
Static Camera Calibration Tutorial An in-depth guide for how to statically calibrate your cameras.
Recording Sensor Data Everything you need to know about the DriveWorks recording tool.