voyant_lidar_client

Configure and control your Voyant LiDAR device through its HTTP interface. Manage device configuration, calibration, firmware updates, and data streaming.

Use voyant_lidar_client --help to see all available options.

⚠️ Critical Safety Warning: Always safely stop the device with --endpoint stop (without --skip-disable) before powering off. This ensures internal components shut down safely and prevents hardware damage.

Usage

Start Data Stream

Your Voyant sensor does not start the laser and data stream on boot. Instead, the sensor waits for your command. The startup procedure can take ~10 seconds as it enables hardware components and begins data processing.

voyant_lidar_client --endpoint start

Upon successful completion, you will see:

✅ LiDAR service started successfully

Stop Data Stream (Safe Shutdown)

To protect the internal components of your sensor, you should disable the LiDAR stream before powering the system down. The shutdown procedure can take ~10 seconds as it safely disables hardware components.

voyant_lidar_client --endpoint stop

Upon successful completion, you will see:

✅ LiDAR service stopped and system disabled

Quick Restart (Skip Enable/Disable)

If you want to temporarily disable the on-device processing and streaming of LiDAR points, you can skip the lengthy disable/enable steps.

# Stop without disabling hardware
voyant_lidar_client --endpoint stop --skip-disable

# Start without re-enabling hardware (saves ~10 seconds)
voyant_lidar_client --endpoint start --skip-enable

⚠️ Critical Safety Warning: Always stop the device with --endpoint stop (without --skip-disable) before powering off. This ensures internal components shut down safely and prevents hardware damage.

Upload Device Configuration

If you want to change the configuration of your sensor (e.g., UDP port, frames per second, etc.), you can use the config endpoint to take full advantage of your software-defined LiDAR.

More info coming soon!

voyant_lidar_client --endpoint config --file my_config.json

Upload Calibration

When Voyant provides you with a new calibration file, use this endpoint to apply it to your device.

voyant_lidar_client --endpoint calibration --file calibration_data.tar.gz

Update Firmware

When a firmware update becomes available, Voyant will share it with you. Use this endpoint to apply the update to your device.

voyant_lidar_client --endpoint update --file firmware_v1.0.1.tar.gz

Check Device Health

This is currently only to verify the config server is reachable.

voyant_lidar_client --endpoint health

Connect to Custom IP

If you change the IP address of your sensor with the voyant_ip_client, use the --url flag to specify the new address, without changing the 8080 port.

voyant_lidar_client --url http://192.168.100.200:8080 --endpoint health

File Requirements

  • Config files: JSON format with device parameters. Documentation for available configuration options is coming soon.
  • Calibration files: .tar.gz archives provided by Voyant Photonics
  • Firmware files: .tar.gz archives provided by Voyant Photonics (e.g., es_v1.0.1-dev_20250627T161948.tar.gz)

Expected Output

Successful Operations

voyant_lidar_client --endpoint health
Connecting to: http://192.168.20.20:8080
Hitting the /health endpoint...
Status: 200 OK
Response: HealthResponse { message: Some("Server is healthy"), lidar_service_running: Some(false), ... }

Connection Failure

Connecting to: http://192.168.20.20:8080
Error: reqwest::Error { kind: Request, url: Url { scheme: "http", ... }, source: hyper::Error(Connect, ConnectError("tcp connect error", Os { code: 113, kind: HostUnreachable, message: "No route to host" })) }

Configuration Errors

# Missing required file
voyant_lidar_client --endpoint config
error: the following required arguments were not provided:
  --file <FILE>
# Invalid JSON format
voyant_lidar_client --endpoint config --file invalid.json
Status: 400 Bad Request
Error: {"error": "Invalid JSON format", "details": "expected `:` at line 1 column 10"}

Workflow Integration

This tool is part of the standard workflow described in the Sensor Quickstart Guide:

  1. Start → Begin data streaming
  2. Stop → Safe shutdown before power-off

Options

  • --endpoint <ENDPOINT> - API endpoint to call (health, config, calibration, update, start, stop)
  • --url <URL> - Device URL (default: http://192.168.20.20:8080)
  • --file <FILE> - File to upload (required for config, calibration, update)
  • --force-overwrite - Replace existing calibration (calibration endpoint only)
  • --force-restart - Restart service if already running (start endpoint only)
  • --skip-enable - Skip hardware enable step (start endpoint only)
  • --skip-disable - Skip hardware disable step (stop endpoint only)

Troubleshooting

If commands fail:

  • Verify device is powered on and network accessible
  • Check that your PC is on the same subnet as the device
  • Ensure the device IP address and port (8080) are correct
  • For file uploads, verify the file exists and is the correct format
  • For start/stop operations, check device logs if operations fail

Copyright © Voyant Photonics, Inc.