Merge pull request 'start adding improved CCSDS packet support' (#172) from add-better-ccsds-packet-support into main

Reviewed-on: #172
This commit was merged in pull request #172.
This commit is contained in:
2025-10-29 15:44:38 +01:00
5 changed files with 1084 additions and 25 deletions

View File

@@ -13,6 +13,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- `CdsCommon` renamed to `CdsBase` - `CdsCommon` renamed to `CdsBase`
- Simplified CDS short timestamp, contains one less field which reduced serialization length. - Simplified CDS short timestamp, contains one less field which reduced serialization length.
## Added
- Added `CcsdsPacketCreator`, `CcsdsPacketReader` and `CcsdsPacketCreatorWithReservedData`
which simplify the process of creating full CCSDS space packets.
# [v0.16.1] 2025-09-26 # [v0.16.1] 2025-09-26
## Fixed ## Fixed

View File

@@ -1,3 +1,7 @@
//! # CRC checksum support.
//!
//! Thin wrapper around the [crc] crate.
/// CRC algorithm used by the PUS standard, the CCSDS TC standard and the CFDP standard, using /// CRC algorithm used by the PUS standard, the CCSDS TC standard and the CFDP standard, using
/// a [crc::NoTable] as the CRC implementation. /// a [crc::NoTable] as the CRC implementation.
pub const CRC_CCITT_FALSE_NO_TABLE: crc::Crc<u16, crc::NoTable> = pub const CRC_CCITT_FALSE_NO_TABLE: crc::Crc<u16, crc::NoTable> =

1093
src/lib.rs

File diff suppressed because it is too large Load Diff

View File

@@ -1,3 +1,8 @@
//! # Sequence counter module.
//!
//! CCSDS and ECSS packet standard oftentimes use sequence counters, for example to allow detecting
//! packet gaps. This module provides basic abstractions and helper components to implement
//! sequence counters.
use crate::MAX_SEQ_COUNT; use crate::MAX_SEQ_COUNT;
use arbitrary_int::traits::Integer; use arbitrary_int::traits::Integer;
use core::cell::Cell; use core::cell::Cell;

View File

@@ -1,4 +1,4 @@
/// # Support of the CCSDS Unified Space Data Link Protocol (USLP) //! # Support of the CCSDS Unified Space Data Link Protocol (USLP)
use crate::{crc::CRC_CCITT_FALSE, ByteConversionError}; use crate::{crc::CRC_CCITT_FALSE, ByteConversionError};
/// Only this version is supported by the library /// Only this version is supported by the library