32 lines
1.1 KiB
Rust
32 lines
1.1 KiB
Rust
//! LIDAR-Lite v3 operation errors.
|
|
|
|
use kaptan_log::KaptanError;
|
|
|
|
/// LIDAR-Lite v3 operation failure.
|
|
#[derive(Debug, Eq, PartialEq, KaptanError)]
|
|
pub enum Error<BusError> {
|
|
/// The selected I²C route rejected a transaction submission.
|
|
Start(BusError),
|
|
/// An acquisition request arrived while another measurement was active.
|
|
NotReady,
|
|
/// The selected I²C route reported a terminal transaction fault.
|
|
TransferFault,
|
|
/// The device reported a process error for the completed measurement.
|
|
ProcessError,
|
|
/// The device reported that its reference or receiver bias is unhealthy.
|
|
Unhealthy,
|
|
/// The device reported that no usable signal peak was detected.
|
|
InvalidSignal,
|
|
/// A measurement remained busy beyond the driver's bounded acquisition interval.
|
|
MeasurementTimeout,
|
|
/// The device reported a documented no-signal sentinel distance of zero or one centimetre.
|
|
NoSignal,
|
|
}
|
|
|
|
/// LIDAR-Lite v3 startup lifecycle failure.
|
|
#[derive(Clone, Copy, Debug, Eq, PartialEq, KaptanError)]
|
|
pub enum StartupError {
|
|
/// Startup completion was reported when the driver was not settling.
|
|
NotSettling,
|
|
}
|