Generic implementations for various CCSDS and ECSS packet standards in Rust
.github/workflows | ||
automation | ||
src | ||
Cargo.toml | ||
CHANGELOG.md | ||
LICENSE-APACHE | ||
NOTICE | ||
README.md |
ECSS and CCSDS Spacepackets
This package contains generic implementations for various CCSDS (Consultative Committee for Space Data Systems) and ECSS (European Cooperation for Space Standardization) packet standards.
Currently, this includes the following components:
- Space Packet implementation according to CCSDS Blue Book 133.0-B-2
- PUS Telecommand and PUS Telemetry implementation according to the ECSS-E-ST-70-41C standard.
- CDS Short Time Code implementation according to CCSDS 301.0-B-4 3.3
- Some helper types to support ASCII timecodes ad specified in CCSDS 301.0-B-4 3.5
Features
spacepackets
supports various runtime environments and is also suitable for no_std
environments.
It also offers optional support for serde
. This allows serializing and
deserializing them with an appropriate serde
provider like
postcard
.
Default features:
std
: Enables functionality relying on the standard library.alloc
: Enables features which operate on containers likealloc::vec::Vec
. Enabled by thestd
feature.serde
: Addsserde
support for most types by addingSerialize
andDeserialize
derive
s
Examples
You can check the documentation of individual modules for various usage examples.