Developer Quickstart Guide
This guide will help you verify your Voyant API installation by building and running a simple example.
This is intended for developers who aim to build their own programs using the Voyant SDK.
Prerequisites
- Voyant API installed (see Installation)
Building the Examples
To build the examples:
- From
/workspace/
if building in provided docker container. - From
voyant-sdk/
if building on your native system.
mkdir build && cd build
cmake ..
make
The built executables will be in the build/bin
directory.
Running the Basic Client Example
The basic client example (voyant_client_basic
) by default connects to a local stream of simulated Voyant LiDAR sensor data and displays the incoming data stream.
You can run the example with:
./bin/voyant_client_basic
See Basic Frame Capture example documentation for more details.
Simulating a Device
To test the API without connecting a device, you can simulate a data stream from another terminal.
Remember: You can access a running docker container from another terminal with:
docker exec -it voyant-sdk-container bash
# Run the mock stream with the network configuration expected by the example
voyant_points_mock_stream --bind-addr 127.0.0.1:0 --group-addr 224.0.0.0:4444
You will see a rapid stream indicating data is being sent:
Sent message 1405 for frame 1 (range: 5.10m)
Sent message 1406 for frame 1 (range: 5.10m)
Sent message 1407 for frame 1 (range: 5.10m)
Sent message 1408 for frame 1 (range: 5.10m)
Check the output
If properly configured, your basic client will display a stream of received full LiDAR frames:
###############
Received frame:
Header{message type:2, device id:MDL-000, frame idx:35, stamp:1691391379.087802875, proto version:0.1.0, api version:0.1.0, fw version:0.1.0, hdl version:0.0.34}
Config{ len: 0 }
Points[24384] {{idx:6238209,ts:163840,pos:[43.984,0.193966,11.0427],v:1.22985,snr:12.3234,refl:0,noise:34.0003,min_snr:-0.00802298,drop reason:1},...}
Debugging
If you don’t see the expected output, try running (outside the docker container):
sudo ip route add 224.0.0.0/24 dev lo
And restart your examples.
Refer to our Connections Guide for more details.
Understanding the Output
The example output shows:
- Header: Information about the frame, device, and versions
- Config: Any configuration settings (empty in this example)
- Points: An array of point data with position, velocity, signal-to-noise ratio, and other metrics
Next Steps
Now that you’ve confirmed your installation works:
- Explore the pre-packaged tools to understand what functionality is available
- Try the example applications to learn how to use the API
- Begin developing your own applications with the Voyant API
For more advanced usage, refer to the API documentation.