@@ -22,6 +22,7 @@ pub(crate) const DELAY_MS: u32 = 2;
2222/// Maximum allowed deviation from zero after calibration
2323#[ derive( Copy , Clone , Debug ) ]
2424#[ cfg_attr( feature = "defmt-03" , derive( defmt:: Format ) ) ]
25+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
2526pub struct CalibrationThreshold {
2627 value : i16 ,
2728}
@@ -108,6 +109,7 @@ impl CalibrationThreshold {
108109/// - Zero: No gravity compensation
109110#[ derive( Copy , Clone , Debug ) ]
110111#[ cfg_attr( feature = "defmt-03" , derive( defmt:: Format ) ) ]
112+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
111113pub enum ReferenceGravity {
112114 Zero ,
113115 XN ,
@@ -150,6 +152,7 @@ impl ReferenceGravity {
150152/// - Bits 3-5: Gyroscope (X,Y,Z)
151153#[ derive( Copy , Clone , Debug ) ]
152154#[ cfg_attr( feature = "defmt-03" , derive( defmt:: Format ) ) ]
155+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
153156pub struct CalibrationActions {
154157 flags : u8 ,
155158}
@@ -248,6 +251,7 @@ impl CalibrationActions {
248251/// - Gravity compensation direction
249252#[ derive( Copy , Clone , Debug ) ]
250253#[ cfg_attr( feature = "defmt-03" , derive( defmt:: Format ) ) ]
254+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
251255pub struct CalibrationParameters {
252256 /// Acceleration scale
253257 pub accel_scale : AccelFullScale ,
@@ -325,6 +329,7 @@ impl CalibrationParameters {
325329/// - Running sum of gyroscope readings
326330/// - Gravity compensation vector
327331#[ cfg_attr( feature = "defmt-03" , derive( defmt:: Format ) ) ]
332+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
328333pub struct MeanAccumulator {
329334 pub ax : i32 ,
330335 pub ay : i32 ,
0 commit comments