FAQ
Common questions and solutions for Voyant LiDAR tools and API usage.
Version Compatibility
I’m getting repeated warnings about dropped packets that fail to parse
If the receiver logs warnings like this, over and over:
[WARN carbon_receiver] Dropping packet with opcode 0x05: Failed to parse HeartbeatMessage
[WARN carbon_receiver] Dropping packet with opcode 0x04: Failed to parse PeaksMessage
The sensor is sending messages whose byte layout doesn’t match what your build of the tools expects, so each packet is dropped instead of decoded. Every Carbon message has a fixed size defined by the device interface contract — the heartbeat (opcode 0x05) and the per-ramp peaks message (opcode 0x04) are the two you’ll see here. When those sizes don’t line up, it almost always means the SDK/tools and the device firmware were built against different versions of that contract. The solution is to bring both sides back in sync by upgrading to the latest version of the Voyant SDK and the latest device firmware.
To upgrade the SDK:
-
Check the latest release: Visit the voyant-sdk/releases/latest GitHub page to see the current version.
- Follow the installation instructions: See the Installation Guide for your platform.
-
For Docker users: You can force a rebuild that will update to the latest release by adding the
--no-cacheflag:docker build --no-cache -t voyant-sdk-container -f docker/Dockerfile .
After upgrading, the version warnings should disappear and you’ll have access to the latest features and compatibility improvements.
To upgrade the device firmware:
Please contact support@voyantphotonics.com for the current firmware-update procedure.
Installation
Installing a .deb fails with a GLIBC version error
If installing the compiled tools reports something like:
version `GLIBC_2.xx' not found (required by voyant_visualizer)
Your operating system is older than the release’s Debian packages require. The compiled .deb tools target Ubuntu 22.04+ (x86-64 or arm64), Raspberry Pi OS Bookworm, or Jetson JetPack 6 (or newer).
- Upgrade the OS to a supported release, or
- On older ARM systems (e.g. Raspberry Pi OS Bullseye, Jetson JetPack 5), access the API through the Python bindings — their wheels support those releases (note the compiled GUI tools such as the Voyant Visualizer are not available there), or
- If you need to stay on a legacy system (for example Ubuntu 20.04 for ROS Noetic), reach out to us — we can look into whether supporting it is feasible.
Once you’re on a supported OS, see Compute Requirements for hardware sizing (CPU, GPU, RAM).
Docker usage
Accessing a Running Container
When working with Docker containers, you may need to access a running container from a new terminal session. This is particularly useful when you need multiple terminal windows or want to run commands in parallel.
You can access a running container with the docker exec command by providing the container’s name:
docker exec -it <CONTAINER_NAME> bash
For example:
docker exec -it voyant-sdk-container bash