The ADI ToF SDK is a cross platform library for the Analog Devices depth cameras based on the ADSD3100 TOF Signal Processor. It provides support for data processing on the embedded processor platform as well as for USB, Ethernet or Wi-Fi to connect to a host computer. This flexibility enables evaluation across a wide range of use cases and environments.
The SDK provides an API to control the ToF camera, IR stream and depth data. Windows support are built into the SDK as well as sample code and wrappers for various languages including Python and C/C++.
For more details on building the SDK on a host platform please check the User Guide specified below:.
Operating System | Documentation | GitHub master status | Downloads |
---|---|---|---|
Windows | Build Instructions | ||
Linux | Build Instructions |
For more details on building the SDK on an embedded platform please check the User Guide specified below:
Operating system | Documentation |
---|---|
NXP | Build instructions |
How to write the SD card image onto the SD card?
From an architectural point of view, the SDK consists of two layers. One layer is the high level API that allows clients to easily grab a camera object, configure it and request frames. The other layer is the low level API which exposes the interface through which low level operations can be made to the camera hardware.
For more details about the SDK check the links below:
Building and installing the SDK
Example | Language | Description |
---|---|---|
tof-viewer | C++ | Graphical User interface for visualising stream from depth camera |
data-collect | C++ | A command line application that takes in command line input arguments (like number of frames, mode to be set, folder location to save frame data) and captures the frames and stores in path provided |
first-frame | C++ Python |
An example code that shows the steps required to get to the point where camera frames can be captured. |
first-frame-network | C++ | An application that shows how to use the aditof sdk to talk to a remote ToF camera over the network. |
low_level_example | Python | A simple example of how to get access to the low-level API of the camera. |
ROS over network | C++ | ROS binding that publishes topics over network |
Directory | Description |
---|---|
apps | Applications specific to various targets and hosts |
bindings | SDK bindings to other languages |
ci | Useful scripts for continuous integration |
cmake | Helper files for cmake |
doc | Documentation |
examples | Example code for the supported programming languages |
scripts | Useful development scripts |
sdcard-images-utils | Things required to build a SD card image for targets |
sdk | SDK source code |
Known issues
On a PC where Linux kernel version 5.13 is installed, a USB connected camera cannot be detected. The v4l device name that we expect is not being set properly. However it works for older and newer versions.