5.4 KiB
LivoxGen1Lidar Device Attachment Protocol (DAP) Specification
Overview
The LivoxGen1Lidar DAP specification defines how to attach to Livox Gen1 LiDAR devices and access their various data streams using a unified API with mode-based parameter selection.
API Structure
The LivoxGen1Lidar DAP uses a unified API name livoxGen1 with mode-based parameters to specify which data interface to present.
Device Attachment Specifications
1. Point Cloud Intensity Data Device (Interoceptor)
Purpose: Provides light intensity/reflectivity data from the LiDAR point cloud.
Syntax:
+idev | avia0 | structural-implexor | livoxGen1(mode=pointCloudIntensity) | livoxProto1(retry-delay-ms=3000) | 3JEDK380010Z39
Alternative Syntax (all equivalent):
+idev | avia0 | structural-implexor | livoxGen1(stim=pcloudIntensity) | livoxProto1(retry-delay-ms=3000) | 3JEDK380010Z39
+idev | avia0 | structural-implexor | livoxGen1(affordance=pCloudI) | livoxProto1(retry-delay-ms=3000) | 3JEDK380010Z39
Mode Parameter Values (synonymous):
pointCloudIntensitypcloudIntensitypCloudIntensitypCloudIpcloudI
2. Point Cloud Coordinate Data Device (Extrospector)
Purpose: Provides spatial coordinate data from the LiDAR point cloud.
Syntax:
+edev | avia0 | structural-implexor | livoxGen1(mode=pcloud,format=xyz) | livoxProto1(retry-delay-ms=3000) | 3JEDK380010Z39
Mode Parameter Values (synonymous):
pcloudpCloudpointCloud
Format Parameter (for point cloud modes):
xyz: Standard Cartesian coordinates (X, Y, Z)spherical: Raw spherical coordinatesspherical-cartesian: Spherical coordinates converted to Cartesiandual-cartesian: Dual Cartesian coordinate systemdual-spherical: Dual spherical coordinate system
Alternative Format Parameter Names (synonymous):
formatorfmt
3. IMU Gyroscope Data Device (Interoceptor)
Purpose: Provides gyroscope data from the LiDAR's internal IMU.
Syntax:
+idev | avia0 | gyro-implexor | livoxGen1(mode=gyro) | livoxProto1(retry-delay-ms=3000) | 3JEDK380010Z39
Mode Parameter Values:
gyro
4. IMU Accelerometer Data Device (Interoceptor)
Purpose: Provides accelerometer data from the LiDAR's internal IMU.
Syntax:
+idev | avia0 | accel-implexor | livoxGen1(mode=accel) | livoxProto1(retry-delay-ms=3000) | 3JEDK380010Z39
Mode Parameter Values:
accel
Provider Parameters
livoxProto1 Provider
The livoxProto1 provider accepts the following parameters:
retry-delay-ms (required):
- Specifies how long to wait for broadcast messages to arrive after attempting an initial direct connection
- Value: Integer number of milliseconds
- Example:
retry-delay-ms=3000(wait 3 seconds) - Default: 3000ms if not specified
Parameter Summary
Mode/Stim/Affordance Parameter Values
| Data Type | Mode Values | Description |
|---|---|---|
| Point Cloud Intensity | pointCloudIntensity, pcloudIntensity, pCloudIntensity, pCloudI, pcloudI |
Light intensity/reflectivity data |
| Point Cloud Coordinates | pcloud, pCloud, pointCloud |
Spatial coordinate data |
| Gyroscope | gyro |
Angular velocity measurements |
| Accelerometer | accel |
Linear acceleration measurements |
Format Parameter Values (for point cloud modes)
| Format | Description |
|---|---|
xyz |
Standard Cartesian coordinates (X, Y, Z) |
spherical |
Raw spherical coordinates (range, azimuth, elevation) |
spherical-cartesian |
Spherical coordinates converted to Cartesian |
dual-cartesian |
Dual Cartesian coordinate system |
dual-spherical |
Dual spherical coordinate system |
Device Discovery and Connection
The specification uses a retry-based connection strategy:
- Initial Check: Check if device is already known from broadcasts
- Direct Connect: Attempt direct connection based on calculated IP address
- Retry Wait: If direct connect fails, wait for
retry-delay-msfor broadcast messages - Final Check: Check known devices again after retry delay
- Report Result: Success or failure based on final check
Data Formats
Point Cloud Coordinate Formats
-
XYZ Format: Standard 3D Cartesian coordinates
- X, Y, Z in meters
- Standard coordinate system orientation
-
Spherical Format: Raw spherical coordinates
- Range (distance) in meters
- Azimuth angle in degrees/radians
- Elevation angle in degrees/radians
-
Spherical-Cartesian Format: Spherical coordinates converted to Cartesian
- Range, azimuth, elevation converted to X, Y, Z
- Maintains spherical measurement precision
-
Dual Formats: Support for dual-coordinate systems
- Useful for devices with multiple measurement modes
- Provides redundancy and validation capabilities
Intensity Data
- Reflectivity values typically in the range 0-255
- Normalized intensity measurements
- Calibrated for material reflectivity analysis
IMU Data
- Gyroscope: Angular velocity measurements (rad/s)
- Accelerometer: Linear acceleration measurements (m/s²)
- Timestamped data synchronized with point cloud measurements
Error Handling
The specification includes comprehensive error handling for:
- Network connectivity issues
- Device communication timeouts
- Invalid coordinate format requests
- IMU data stream interruptions
- Device discovery failures
- Connection retry timeouts