Ouster Sensor SDK

The Ouster Sensor SDK provides developers with a comprehensive set of interfaces for interacting with Ouster sensor hardware. The SDK includes a suite of tools, libraries, and APIs to access the full range of sensor features and generate recorded sensor data. It is designed to support prototyping, evaluation, and other non-safety-critical applications for both Python and C++ development environments.

Core capabilities:

  • Querying and setting sensor configuration

  • Recording and reading data in pcap format

  • Recording and reading data in Open Sensor Format (OSF)

  • Reading and buffering sensor UDP data streams reliably

  • Conversion of raw data to range/signal/near_ir/reflectivity images (destaggering)

  • Efficient projection of range measurements to Cartesian (x, y, z) coordinates

  • Visualization of multi-beam flash lidar data

  • Mapping

  • Pose Optimizer

  • Localization

  • Zone monitor

Additionally, in Python, the SDK also provides:

  • Frame-based access to lidar data as numpy datatypes

  • A responsive visualizer utility for pcap and sensor

Ouster SDK CLI visualization of OS1 128 Rev 7 sample data

Supported Devices

The SDK supports the following Ouster sensors:

You can obtain detailed specs sheets for the sensors and obtain updated firmware through the website downloads section.

Compatibility with Firmware (FW)

All current SDK releases are backward compatible with sensor firmware version 2.4 and later. Older SDK versions are not guaranteed to function with newer firmware (“forward compatibility” is not assured). e.g., the SDK version 20210608 (ouster-sdk 0.2.0) is not compatible with FW 3.0.

Note

Compatibility does not imply a frictionless upgrade; review the Changelog for breaking changes before migrating.

The following table indicates the compatibility of each released SDK version and its FW compatibility:

SDK Tag (Release) / Python SDK

FW 2.0

FW 2.1

FW 2.2

FW 2.3

FW 2.4

FW 2.5

FW 3.0

FW 3.1

FW 3.2

C++ SDK 2026XXXX / Python SDK 1.0.0

C++ SDK 2025XXXX / Python SDK 0.16.0

C++ SDK 20250408 / Python SDK 0.15.0

C++ SDK 20250117 / Python SDK 0.14.0

C++ SDK 20240703 / Python SDK 0.13.1

C++ SDK 20240703 / Python SDK 0.13.0

C++ SDK 20240703 / Python SDK 0.12.0

C++ SDK 20240423 / Python SDK 0.11.1

C++ SDK 20240423 / Python SDK 0.11.0

C++ SDK 20231031 / Python SDK 0.10.0

C++ SDK 20230710 / Python SDK 0.9.0

C++ SDK 20230403 / Python SDK 0.8.1

C++ SDK 20230114 / Python SDK 0.7.1

C++ SDK 20220927 / Python SDK 0.5.2

C++ SDK 20220826 / Python SDK 0.5.1

C++ SDK 20220608 / Python SDK 0.4.1

C++ SDK 20220504 / Python SDK 0.4.0

C++ SDK 20220107 / Python SDK 0.3.0

C++ SDK 20210608 / Python SDK 0.2.1

C++ SDK 20201209 / n/a

C++ SDK v1.13.0 / n/a

If you are a C++ SDK user who has upgraded to the latest FW but requires an older SDK version, please contact our customer support or the Field Applications Engineer who works with you.

See the following section regarding when we will drop support for various FWs.

Supported Platforms

Upcoming deprecations/dropped support can be found at our GH announcement of Lifecycle Policies

Deprecations

Deprecations are announced in the Changelog. To help you transition smoothly, we provide detailed migration guides for upgrading your projects.

Get Help and Stay Updated

We are continuously working to improve Ouster SDK. For questions about using your Ouster hardware, you may find it useful to reference the Ouster sensor documentation and/or contact Ouster support .

For issues specific to the SDK please use the GitHub issue tracker . Announcements for the Ouster SDK are posted in the Ouster Github announcements

ROS Integration

Ouster’s ROS support is in a dedicated repository. Visit the ouster-ros project on GitHub for setup instructions, launch file examples, and detailed usage guidance.