From f4bc33aefa6079c5b1760ef8b3e91d7d70992b7c Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Mon, 12 Feb 2024 17:25:22 +0100 Subject: [PATCH 1/4] link corrections --- satrs-book/src/communication.md | 8 ++++---- satrs-book/src/constrained-systems.md | 10 +++++----- satrs-book/src/example.md | 12 ++++++------ satrs/README.md | 8 ++++---- 4 files changed, 19 insertions(+), 19 deletions(-) diff --git a/satrs-book/src/communication.md b/satrs-book/src/communication.md index 4976d7b..9e7a4ac 100644 --- a/satrs-book/src/communication.md +++ b/satrs-book/src/communication.md @@ -17,14 +17,14 @@ it is still centered around small packets. `sat-rs` provides support for these E standards and also attempts to fill the gap to the internet protocol by providing the following components. -1. [UDP TMTC Server](https://docs.rs/satrs-core/0.1.0-alpha.0/satrs_core/hal/host/udp_server/index.html). +1. [UDP TMTC Server](https://docs.rs/satrs/latest/satrs/hal/host/udp_server/index.html). UDP is already packet based which makes it an excellent fit for exchanging space packets. -2. [TCP TMTC Server Components](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/hal/std/tcp_server/index.html). +2. [TCP TMTC Server Components](https://docs.rs/satrs/latest/satrs/hal/std/tcp_server/index.html). TCP is a stream based protocol, so the framework provides building blocks to parse telemetry from an arbitrary bytestream. Two concrete implementations are provided: - - [TCP spacepackets server](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/hal/std/tcp_server/struct.TcpSpacepacketsServer.html) + - [TCP spacepackets server](https://docs.rs/satrs/latest/satrs/hal/std/tcp_server/struct.TcpSpacepacketsServer.html) to parse tightly packed CCSDS Spacepackets. - - [TCP COBS server](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/hal/std/tcp_server/struct.TcpTmtcInCobsServer.html) + - [TCP COBS server](https://docs.rs/satrs/latest/satrs/hal/std/tcp_server/struct.TcpTmtcInCobsServer.html) to parse generic frames wrapped with the [COBS protocol](https://en.wikipedia.org/wiki/Consistent_Overhead_Byte_Stuffing). diff --git a/satrs-book/src/constrained-systems.md b/satrs-book/src/constrained-systems.md index c032cd0..73149ce 100644 --- a/satrs-book/src/constrained-systems.md +++ b/satrs-book/src/constrained-systems.md @@ -26,15 +26,15 @@ For example, a very small telecommand (TC) pool might look like this: ![Example Pool](images/pools/static-pools.png) The core of the pool abstractions is the -[PoolProvider trait](https://docs.rs/satrs-core/0.1.0-alpha.3/satrs_core/pool/trait.PoolProvider.html). +[PoolProvider trait](https://docs.rs/satrs/latest/satrs/pool/trait.PoolProvider.html). This trait specifies the general API a pool structure should have without making assumption of how the data is stored. This trait is implemented by a static memory pool implementation. The code to generate this static pool would look like this: -```rust -use satrs_core::pool::{StaticMemoryPool, StaticPoolConfig}; +```rust, ignore +use satrs::pool::{StaticMemoryPool, StaticPoolConfig}; let tc_pool = StaticMemoryPool::new(StaticPoolConfig::new(vec![ (6, 16), @@ -52,8 +52,8 @@ inter-process communication (IPC) data. You can read -- [`StaticPoolConfig` API](https://docs.rs/satrs-core/0.1.0-alpha.3/satrs_core/pool/struct.StaticPoolConfig.html) -- [`StaticMemoryPool` API](https://docs.rs/satrs-core/0.1.0-alpha.3/satrs_core/pool/struct.StaticMemoryPool.html) +- [`StaticPoolConfig` API](https://docs.rs/satrs/latest/satrs/pool/struct.StaticPoolConfig.html) +- [`StaticMemoryPool` API](https://docs.rs/satrs/latest/satrs/pool/struct.StaticMemoryPool.html) for more details. diff --git a/satrs-book/src/example.md b/satrs-book/src/example.md index 9152a18..12fec83 100644 --- a/satrs-book/src/example.md +++ b/satrs-book/src/example.md @@ -23,11 +23,11 @@ Some additional explanation is provided for the various components. The example includes a UDP and TCP server to receive telecommands and poll telemetry from. This might be an optional component for an OBSW which is only used during the development phase on ground. The UDP server is strongly based on the -[UDP TC server](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/hal/std/udp_server/struct.UdpTcServer.html). +[UDP TC server](https://docs.rs/satrs/latest/satrs/hal/std/udp_server/struct.UdpTcServer.html). This server component is wrapped by a TMTC server which handles all telemetry to the last connected client. -The TCP server is based on the [TCP Spacepacket Server](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/hal/std/tcp_server/struct.TcpSpacepacketsServer.html) +The TCP server is based on the [TCP Spacepacket Server](https://docs.rs/satrs/latest/satrs/hal/std/tcp_server/struct.TcpSpacepacketsServer.html) class. It parses space packets by using the CCSDS space packet ID as the packet start delimiter. All available telemetry will be sent back to a client after having read all telecommands from the client. @@ -51,13 +51,13 @@ services. This currently includes the following services: - Service 1 for telecommand verification. The verification handling is handled locally: Each component which generates verification telemetry in some shape or form receives a - [reporter](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/pus/verification/struct.VerificationReporterWithSender.html) + [reporter](https://docs.rs/satrs/latest/satrs/pus/verification/struct.VerificationReporterWithSender.html) object which can be used to send PUS 1 verification telemetry to the TM funnel. - Service 3 for housekeeping telemetry handling. - Service 5 for management and downlink of on-board events. - Service 8 for handling on-board actions. - Service 11 for scheduling telecommands to be released at a specific time. This component - uses the [PUS scheduler class](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/pus/scheduler/alloc_mod/struct.PusScheduler.html) + uses the [PUS scheduler class](https://docs.rs/satrs/latest/satrs/pus/scheduler/alloc_mod/struct.PusScheduler.html) which performs the core logic of scheduling telecommands. All telecommands released by the scheduler are sent to the central TC source using a message. - Service 17 for test purposes like pings. @@ -65,10 +65,10 @@ services. This currently includes the following services: ### Event Management Component An event manager based on the sat-rs -[event manager component](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/event_man/index.html) +[event manager component](https://docs.rs/satrs/latest/satrs/event_man/index.html) is provided to handle the event IPC and FDIR mechanism. The event message are converted to PUS 5 telemetry by the -[PUS event dispatcher](https://docs.rs/satrs-core/0.1.0-alpha.1/satrs_core/pus/event_man/alloc_mod/struct.PusEventDispatcher.html). +[PUS event dispatcher](https://docs.rs/satrs/latest/satrs/pus/event_man/alloc_mod/struct.PusEventDispatcher.html). You can read the [events](./events.md) chapter for more in-depth information about event management. diff --git a/satrs/README.md b/satrs/README.md index 763a2ac..61a4f3d 100644 --- a/satrs/README.md +++ b/satrs/README.md @@ -1,8 +1,8 @@ -[![Crates.io](https://img.shields.io/crates/v/satrs-core)](https://crates.io/crates/satrs-core) -[![docs.rs](https://img.shields.io/docsrs/satrs-core)](https://docs.rs/satrs-core) +[![Crates.io](https://img.shields.io/crates/v/satrs)](https://crates.io/crates/satrs) +[![docs.rs](https://img.shields.io/docsrs/satrs)](https://docs.rs/satrs) -satrs-core +sat-rs ====== -This crate contains the core components of the sat-rs framework. +This crate contains the primary components of the sat-rs framework. You can find more information on the [homepage](https://egit.irs.uni-stuttgart.de/rust/sat-rs). From 9cf80b44ead643d4509fcc5fd6f9ab9da8eb0702 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Mon, 12 Feb 2024 17:29:48 +0100 Subject: [PATCH 2/4] homepage link corrections --- satrs-book/src/constrained-systems.md | 2 ++ satrs-mib/Cargo.toml | 2 +- satrs-shared/Cargo.toml | 2 +- satrs/Cargo.toml | 2 +- 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/satrs-book/src/constrained-systems.md b/satrs-book/src/constrained-systems.md index 73149ce..43b6aa5 100644 --- a/satrs-book/src/constrained-systems.md +++ b/satrs-book/src/constrained-systems.md @@ -33,6 +33,8 @@ of how the data is stored. This trait is implemented by a static memory pool implementation. The code to generate this static pool would look like this: + ```rust, ignore use satrs::pool::{StaticMemoryPool, StaticPoolConfig}; diff --git a/satrs-mib/Cargo.toml b/satrs-mib/Cargo.toml index c0f6a0d..e701fc8 100644 --- a/satrs-mib/Cargo.toml +++ b/satrs-mib/Cargo.toml @@ -7,7 +7,7 @@ authors = ["Robin Mueller "] description = """ Helper crate of the sat-rs framework to build a mission information base (MIB) from the On-Board Software (OBSW) code directly.""" -homepage = "https://absatsw.uni-stuttgart.de/projects/sat-rs" +homepage = "https://absatsw.irs.uni-stuttgart.de/projects/sat-rs/" repository = "https://egit.irs.uni-stuttgart.de/rust/sat-rs" license = "Apache-2.0" keywords = ["no-std", "space", "aerospace"] diff --git a/satrs-shared/Cargo.toml b/satrs-shared/Cargo.toml index f9e76f4..e1eb77b 100644 --- a/satrs-shared/Cargo.toml +++ b/satrs-shared/Cargo.toml @@ -4,7 +4,7 @@ description = "Components shared by multiple sat-rs crates" version = "0.1.1" edition = "2021" authors = ["Robin Mueller "] -homepage = "https://absatsw.uni-stuttgart.de/projects/sat-rs" +homepage = "https://absatsw.irs.uni-stuttgart.de/projects/sat-rs/" repository = "https://egit.irs.uni-stuttgart.de/rust/sat-rs" license = "Apache-2.0" diff --git a/satrs/Cargo.toml b/satrs/Cargo.toml index 55b9ba0..cdf7e24 100644 --- a/satrs/Cargo.toml +++ b/satrs/Cargo.toml @@ -5,7 +5,7 @@ edition = "2021" rust-version = "1.61" authors = ["Robin Mueller "] description = "A framework to build software for remote systems" -homepage = "https://absatsw.uni-stuttgart.de/projects/sat-rs" +homepage = "https://absatsw.irs.uni-stuttgart.de/projects/sat-rs/" repository = "https://egit.irs.uni-stuttgart.de/rust/sat-rs" license = "Apache-2.0" keywords = ["no-std", "space", "aerospace"] From 44ff62e9478b0bc036da5c683564920de45351c4 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Mon, 12 Feb 2024 17:34:16 +0100 Subject: [PATCH 3/4] more link corrections --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e7931b2..6d5669f 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ This is the repository of the sat-rs framework. Its primary goal is to provide r to write on-board software for remote systems like rovers or satellites. It is specifically written for the special requirements for these systems. You can find an overview of the project and the link to the [more high-level sat-rs book](https://absatsw.irs.uni-stuttgart.de/projects/sat-rs/) -at the [IRS documentation website](https://absatsw.irs.uni-stuttgart.de/sat-rs.html). +at the [IRS software projects website](https://absatsw.irs.uni-stuttgart.de/projects/sat-rs/). A lot of the architecture and general design considerations are based on the [FSFW](https://egit.irs.uni-stuttgart.de/fsfw/fsfw) C++ framework which has flight heritage @@ -41,7 +41,7 @@ Each project has its own `CHANGELOG.md`. * [`spacepackets`](https://egit.irs.uni-stuttgart.de/rust/spacepackets): Basic ECSS and CCSDS packet protocol implementations. This repository is re-exported in the - [`satrs-core`](https://egit.irs.uni-stuttgart.de/rust/satrs-launchpad/src/branch/main/satrs-core) + [`satrs`](https://egit.irs.uni-stuttgart.de/rust/satrs/src/branch/main/satrs) crate. # Coverage From 24f82d4c5e1422830a087e2fd92a9234f0063218 Mon Sep 17 00:00:00 2001 From: Robin Mueller Date: Mon, 12 Feb 2024 17:56:01 +0100 Subject: [PATCH 4/4] prep v0.1.1 --- satrs/CHANGELOG.md | 4 ++++ satrs/Cargo.toml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/satrs/CHANGELOG.md b/satrs/CHANGELOG.md index 4418e68..cc788fa 100644 --- a/satrs/CHANGELOG.md +++ b/satrs/CHANGELOG.md @@ -8,6 +8,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/). # [unreleased] +# [v0.1.1] 2024-02-12 + +- Minor fixes for crate config `homepage` entries and links in documentation. + # [v0.1.0] 2024-02-12 Initial release. diff --git a/satrs/Cargo.toml b/satrs/Cargo.toml index cdf7e24..b7501cc 100644 --- a/satrs/Cargo.toml +++ b/satrs/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "satrs" -version = "0.1.0" +version = "0.1.1" edition = "2021" rust-version = "1.61" authors = ["Robin Mueller "]