refactor(firmware): simplify configuration and diagnostics

This commit is contained in:
Onur Özkan committed 2026-08-23 00:40:36 +03:00
1 parent ba9c97ed3b
commit fdf82a5114
96 files changed
+1612 -2772

No files matched your search

+1 -1
View File
@@ -9,5 +9,5 @@ version.workspace = true
workspace = true
[dependencies]
kaptan-log = { path = "../kaptan-log" }
kaptan-err-propagate = { path = "../kaptan-err-propagate" }
kaptan-time = { path = "../kaptan-time" }
+9 -1
View File
@@ -7,7 +7,7 @@
#![no_std]
use kaptan_log::KaptanError;
use kaptan_err_propagate::KaptanError;
use kaptan_time::Timestamp;
/// Supervisor arming state.
@@ -27,18 +27,25 @@ pub enum SafetyState {
#[derive(Clone, Copy, Debug, Eq, PartialEq, KaptanError)]
pub enum SafetyFailure {
/// Estimator is absent, stale, or non-finite.
#[kaptan_error(id = 9001)]
EstimatorUnhealthy,
/// Required inertial sensor stream is stale.
#[kaptan_error(id = 9002)]
ImuStale,
/// Required command/link stream is stale.
#[kaptan_error(id = 9003)]
LinkStale,
/// Actuator transport reports a fault.
#[kaptan_error(id = 9004)]
ActuatorFault,
/// No current explicit arm transaction exists.
#[kaptan_error(id = 9005)]
ArmNotRequested,
/// The platform supplied time that moved backwards.
#[kaptan_error(id = 9006)]
ClockRegression,
/// A non-wrapping actuator-permit epoch could not be allocated.
#[kaptan_error(id = 9007)]
PermitEpochExhausted,
}
@@ -46,6 +53,7 @@ pub enum SafetyFailure {
#[derive(Clone, Copy, Debug, Eq, PartialEq, KaptanError)]
pub enum SafetyConfigError {
/// A zero dwell would permit two evaluations at one timestamp to arm.
#[kaptan_error(id = 9101)]
ZeroPrearmDwell,
}