diff --git a/src/ecss/event.rs b/src/ecss/event.rs index 622ab5b..23c1cc6 100644 --- a/src/ecss/event.rs +++ b/src/ecss/event.rs @@ -1,7 +1,7 @@ //! PUS Service 5 Events +use num_enum::{IntoPrimitive, TryFromPrimitive}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; -use num_enum::{IntoPrimitive, TryFromPrimitive}; #[derive(Debug, Eq, PartialEq, Copy, Clone, IntoPrimitive, TryFromPrimitive)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] diff --git a/src/ecss/hk.rs b/src/ecss/hk.rs index 2c9f330..5bf7ce5 100644 --- a/src/ecss/hk.rs +++ b/src/ecss/hk.rs @@ -1,15 +1,31 @@ //! PUS Service 3 Housekeeping +use num_enum::{IntoPrimitive, TryFromPrimitive}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; -use num_enum::{IntoPrimitive, TryFromPrimitive}; #[derive(Debug, Eq, PartialEq, Copy, Clone, IntoPrimitive, TryFromPrimitive)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] #[repr(u8)] pub enum Subservice { - TcEnableGeneration = 5, - TcDisableGeneration = 6, + // Regular HK + TcCreateHkReportStructure = 1, + TcDeleteHkReportStructures = 3, + TcEnableHkGeneration = 5, + TcDisableHkGeneration = 6, + TcReportHkReportStructures = 9, TmHkPacket = 25, TcGenerateOneShotHk = 27, - TcModifyCollectionInterval = 31, + TcModifyHkCollectionInterval = 31, + + // Diagnostics HK + TcCreateDiagReportStructure = 2, + TcDeleteDiagReportStructures = 4, + TcEnableDiagGeneration = 7, + TcDisableDiagGeneration = 8, + TmHkStructuresReport = 10, + TcReportDiagReportStructures = 11, + TmDiagStructuresReport = 12, + TmDiagPacket = 26, + TcGenerateOneShotDiag = 28, + TcModifyDiagCollectionInterval = 32, } diff --git a/src/ecss/mod.rs b/src/ecss/mod.rs index b46f10d..8f5cd74 100644 --- a/src/ecss/mod.rs +++ b/src/ecss/mod.rs @@ -13,10 +13,10 @@ use serde::{Deserialize, Serialize}; #[cfg(feature = "std")] use std::error::Error; -pub mod scheduling; pub mod event; -pub mod verification; pub mod hk; +pub mod scheduling; +pub mod verification; pub type CrcType = u16; @@ -68,7 +68,7 @@ pub enum PusServiceId { /// Service 22 PositionBasedScheduling = 22, /// Service 23 - FileManagement = 23 + FileManagement = 23, } /// All PUS versions. Only PUS C is supported by this library. diff --git a/src/ecss/scheduling.rs b/src/ecss/scheduling.rs index e9f3e1b..c6c36ea 100644 --- a/src/ecss/scheduling.rs +++ b/src/ecss/scheduling.rs @@ -1,7 +1,7 @@ //! PUS Service 11 Scheduling +use num_enum::{IntoPrimitive, TryFromPrimitive}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; -use num_enum::{IntoPrimitive, TryFromPrimitive}; #[derive(Debug, PartialEq, Eq, Copy, Clone, IntoPrimitive, TryFromPrimitive)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] diff --git a/src/ecss/verification.rs b/src/ecss/verification.rs index 9c0b709..cd89b46 100644 --- a/src/ecss/verification.rs +++ b/src/ecss/verification.rs @@ -1,7 +1,7 @@ //! PUS Service 1 Verification +use num_enum::{IntoPrimitive, TryFromPrimitive}; #[cfg(feature = "serde")] use serde::{Deserialize, Serialize}; -use num_enum::{IntoPrimitive, TryFromPrimitive}; #[derive(Debug, Eq, PartialEq, Copy, Clone, IntoPrimitive, TryFromPrimitive)] #[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] @@ -32,4 +32,4 @@ mod tests { let subservice: Subservice = 7.try_into().unwrap(); assert_eq!(subservice, Subservice::TmCompletionSuccess); } -} \ No newline at end of file +}