From 20acc5b1b5d3dde07c73f61c968c4ee71b40f01b Mon Sep 17 00:00:00 2001 From: John Lettman Date: Tue, 16 Jul 2024 14:24:19 -0400 Subject: [PATCH] metadata: add imu-data-format --- metadata/imu-data-format.go | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 metadata/imu-data-format.go diff --git a/metadata/imu-data-format.go b/metadata/imu-data-format.go new file mode 100644 index 0000000..3e58faa --- /dev/null +++ b/metadata/imu-data-format.go @@ -0,0 +1,24 @@ +package metadata + +import "github.com/johnlettman/oyster/types" + +// IMUDataFormat represents the format of IMU data from an Ouster sensor. +// +// For additional information, refer to [Ouster docs: imu_data_format]. +// +// [Ouster docs: imu_data_format]: https://static.ouster.dev/sensor-docs/image_route1/image_route2/common_sections/API/http-api-v1.html#get-api-v1-sensor-metadata-imu-data-format +type IMUDataFormat struct { + // AccelerationFullScaleRange is the full-scale range of the accelerometer. + // + // Settings: + // - types.FullScaleRangeNormal (default): digital output X-, Y-, Z-axis with a range fixed at ±2g. + // - types.FullScaleRangeExtended: digital-output X-, Y-, Z-axis with an expanded full-scale range of ±16g. + AccelerationFullScaleRange types.FullScaleRange `json:"accel_fsr"` + + // GyroscopeFullScaleRange is the full-scale range of the gyroscope. + // + // Settings: + // - types.FullScaleRangeNormal (default): digital output X-, Y-, Z-axis with a range fixed at ±250°/sec. + // - types.FullScaleRangeExtended: digital-output X-, Y-, Z-axis with a programmable full-scale range of ±2000°/sec. + GyroscopeFullScaleRange types.FullScaleRange `json:"gyro_fsr"` +}