Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix outdated links and cross-reference docs locally #3153

Merged
merged 1 commit into from
Jan 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Feel free to contribute any way that suits your skills and enjoy.
## Where to Start

First, contributors should build some understanding of F´. Read through the documentation, try a tutorial, or run a
reference application. Contributors can find information in our [documentation](https://nasa.github.io/fprime/). Keep
reference application. Contributors can find information in our [documentation](https://fprime.jpl.nasa.gov/latest/docs). Keep
track of inconsistencies or bugs as these should be reported!

When you are ready to join discussions and submit bug reports use one of the above links!
Expand Down
2 changes: 1 addition & 1 deletion FppTest/settings.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
; Ref requires no specific settings thus the [fprime] configuration block is empty
; For more information: https://nasa.github.io/fprime/UsersGuide/user/settings.html
; For more information: https://fprime.jpl.nasa.gov/latest/docs/user-manual/framework/settings/
[fprime]
framework_path: ..
default_cmake_options: FPRIME_SKIP_TOOLS_VERSION_CHECK=ON FPRIME_ENABLE_FRAMEWORK_UTS=OFF FPRIME_ENABLE_AUTOCODER_UTS=OFF
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
</p>

#
F´ (F Prime) is a component-driven framework that enables rapid development and deployment of spaceflight and other embedded software applications. Originally developed at the [Jet Propulsion Laboratory](https://www.jpl.nasa.gov/), F´ has been successfully deployed on [several space applications](https://nasa.github.io/fprime/projects.html). It is tailored but not limited to small-scale spaceflight systems such as CubeSats, SmallSats, and instruments.
F´ (F Prime) is a component-driven framework that enables rapid development and deployment of spaceflight and other embedded software applications. Originally developed at the [Jet Propulsion Laboratory](https://www.jpl.nasa.gov/), F´ has been successfully deployed on [several space applications](https://fprime.jpl.nasa.gov/overview/projects/). It is tailored but not limited to small-scale spaceflight systems such as CubeSats, SmallSats, and instruments.

**Please Visit the F´ Website:** [https://fprime.jpl.gov/](https://fprime.jpl.nasa.gov/) for more information.
**Please Visit the F´ Website:** [https://fprime.jpl.nasa.gov](https://fprime.jpl.nasa.gov/) for more information.


## What does F´ provide
Expand All @@ -17,7 +17,7 @@ F´ (F Prime) is a component-driven framework that enables rapid development and
- A growing collection of ready-to-use components
- Testing tools for testing flight software at the unit and integration levels.

Learn more about [F´ key features](https://fprime.jpl.nasa.gov/).
Learn more about [F´ key features](https://fprime.jpl.nasa.gov/overview).


## System Requirements
Expand All @@ -41,9 +41,9 @@ Then, create a new project with:
fprime-bootstrap project
```

See the [HelloWorld Tutorial](https://fprime-community.github.io/fprime-tutorial-hello-world/) to guide you through all the steps of developing an F´ project.
See the [HelloWorld Tutorial](https://fprime.jpl.nasa.gov/latest/tutorials-hello-world/docs/hello-world/) to guide you through all the steps of developing an F´ project.

New users are encouraged to read through the [User Guide](https://nasa.github.io/fprime/UsersGuide/guide.html) and explore the [other tutorials](https://nasa.github.io/fprime/Tutorials/README.html).
New users are encouraged to read through the [User Manual](https://fprime.jpl.nasa.gov/latest/docs/user-manual/) and explore the [other tutorials](https://fprime.jpl.nasa.gov/latest/docs/tutorials/).


## Getting Help
Expand All @@ -57,8 +57,8 @@ The [F´ Community](https://github.com/fprime-community) GitHub Organization con


## Resources
- [User Guide](https://nasa.github.io/fprime/UsersGuide/guide.html)
- [Tutorials](https://nasa.github.io/fprime/Tutorials/README.html)
- [User Manual](https://fprime.jpl.nasa.gov/latest/docs/user-manual/)
- [Tutorials](https://fprime.jpl.nasa.gov/latest/docs/tutorials/)
- [Discussions](https://github.com/nasa/fprime/discussions)
- [Submit an Issue](https://github.com/nasa/fprime/issues)
- [F´ Community](https://github.com/fprime-community)
Expand Down
2 changes: 1 addition & 1 deletion Ref/settings.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
; Ref requires no specific settings thus the [fprime] configuration block is empty
; For more information: https://nasa.github.io/fprime/UsersGuide/user/settings.html
; For more information: https://fprime.jpl.nasa.gov/latest/docs/user-manual/framework/settings/
[fprime]
framework_path: ..
2 changes: 1 addition & 1 deletion Svc/ActiveLogger/docs/sdd.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Port Data Type | Name | Direction | Kind | Usage

The `Svc::ActiveLogger` component provides an event logging function for the software. The framework autocoder allows
developers to specify a set of events in the component XML
(see [Events](https://nasa.github.io/fprime/UsersGuide/user/cmd-evt-chn-prm.html#Events)). For these components, the
(see [Events](../../../docs/user-manual/overview/cmd-evt-chn-prm.md). For these components, the
autocoder will add an `Fw::Log` output port to send events in serialized form. The ActiveLogger receives these port
calls and provides commands to filter these events. The filtered events are sent to other components such as the ground
interface.
Expand Down
2 changes: 1 addition & 1 deletion Svc/ChronoTime/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# UT_SOURCE_FILES: list of source files for unit tests
#
# More information in the F´ CMake API documentation:
# https://nasa.github.io/fprime/UsersGuide/api/cmake/API.html
# https://fprime.jpl.nasa.gov/latest/docs/user-manual/cmake/cmake-api/
#
####

Expand Down
6 changes: 3 additions & 3 deletions Svc/ComQueue/docs/sdd.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,17 @@ passing in a configuration table at initialization. Queued messages from the hig
first and a round-robin algorithm is used to balance between ports of shared priority.

`Svc::ComQueue` is designed to act alongside instances of the
[communication adapter interface](https://nasa.github.io/fprime/Design/communication-adapter-interface.html) and
[communication adapter interface](../../../docs/user-manual/design/communication-adapter-interface.md) and
implements the communication queue
[protocol](https://nasa.github.io/fprime/Design/communication-adapter-interface.html#communication-queue-protocol).
[protocol](../../../docs/user-manual/design/communication-adapter-interface.md#communication-queue-protocol).

## 2. Assumptions

1. Incoming buffers to a given port are in priority order
2. Data is considered to be successfully sent when a `Fw::Success::SUCCESS` signal was received
3. The com adapter is responsible for any retransmission of failed data
4. The system includes downstream components implementing the
[communications adapter](https://nasa.github.io/fprime/Design/communication-adapter-interface.html)
[communications adapter](../../../docs/user-manual/design/communication-adapter-interface.md)


## 3. Requirements
Expand Down
6 changes: 3 additions & 3 deletions Svc/ComStub/docs/sdd.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
## 1. Introduction

`Svc::ComStub` is an example F´ component implementing the
[communication adapter interface](https://nasa.github.io/fprime/Design/communication-adapter-interface.html) required
[communication adapter interface](../../../docs/user-manual/design/communication-adapter-interface.md) required
to work with F´ communication components. Projects and users may choose to replace this with a complete communication
implementation (i.e. a component managing a specific radio) once ready. As long as any communication implementation
implements the communication adapter interface it can drop in and work with the standard F´ uplink and downlink setup.
Expand Down Expand Up @@ -38,7 +38,7 @@ used alongside the other F´ communication components (`Svc::Framer`, `Svc::Defr


`Svc::ComStub` implements the
[communication adapter interface](https://nasa.github.io/fprime/Design/communication-adapter-interface.html) by
[communication adapter interface](../../../docs/user-manual/design/communication-adapter-interface.md) by
delegation to a `Drv::ByteStreamDriverModel` as a way to transmit data and receive data. Other communication
adapter implementations may follow-suite.

Expand Down Expand Up @@ -72,7 +72,7 @@ be useful

`Svc::ComStub` has only stores a boolean `m_reinitialize` indicating when it should send `Fw::Success::SUCCESS` in
response to a driver reconnection event. This is to implement the Communication Adapter Protocol of a
[communication adapter interface](https://nasa.github.io/fprime/Design/communication-adapter-interface.html#Communication_Adapter_Protocol).
[communication adapter interface](../../../docs/user-manual/design/communication-adapter-interface.md).

### 4.3. Port Handlers

Expand Down
4 changes: 2 additions & 2 deletions Svc/Framer/docs/sdd.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ You can use the standard F Prime downlink protocol implementation.
This implementation works with the F Prime ground data system (GDS).

`Svc::Framer` is designed to act alongside instances of the
[communication adapter interface](https://nasa.github.io/fprime/Design/communication-adapter-interface.html). In order
[communication adapter interface](../../../docs/user-manual/design/communication-adapter-interface.md). In order
to work well with communication adapters, `Svc::Framer` implements the framer status
[protocol](https://nasa.github.io/fprime/Design/communication-adapter-interface.html#framer-status-protocol).
[protocol](../../../docs/user-manual/design/communication-adapter-interface.md#framer-status-protocol).

## 2. Assumptions

Expand Down
2 changes: 1 addition & 1 deletion Svc/GenericHub/docs/sdd.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Svc::GenericHub Generic Hub Component

The Generic Hub component is an implementation of the F´ [hub pattern](https://nasa.github.io/fprime/UsersGuide/best/hub-pattern.html).
The Generic Hub component is an implementation of the F´ [hub pattern](../../../docs/user-manual/framework/hub-pattern.md).
This pattern (and component) is used to bridge across an address space barrier between F´ deployments and route F´ port
calls to the remote deployment. It also receives incoming port calls from the remote component. Essentially, it is a
port multiplexer/demultiplexer that serializes the port calls to an `Fw::Buffer` object and outputs this data to an
Expand Down
2 changes: 1 addition & 1 deletion docs/how-to/develop-subtopologies.md
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,7 @@ Now go ahead and run and build your deployment, and you should see that you have
As you may notice, the current implementation of subtopologies lacks in a few areas of simplicity and especially reusability. A couple of these issues are tabulated here:

1. It may be the case that I would like to have multiple uses of a subtopology `st` within a main topology `main`. For example, `st` could define the topology for managing a single temperature sensor, but I would like to implement $n$ number of those sensors. At the moment, to do this one would need to duplicate the entire subtopology and make proper modifications to instances, the TopologyDefs file, and more.
2. Let's maintain our example of `st` being the topology for managing a single temperature sensor. It may be the case that `st` only implements the software behavior, as is reasonable: the developer of the subtopology probably cannot write hardware interface drivers for every platform possible. So, the user would provide the proper driver to `st`, which is again reasonable. However, to accomplish this one would need to modify the contents of a subtopology, changing instance definitions and possibly the connection graphs as well. Such a task could become monstrous if, say `st` now implements the [hub pattern](https://nasa.github.io/fprime/UsersGuide/best/hub-pattern.html).
2. Let's maintain our example of `st` being the topology for managing a single temperature sensor. It may be the case that `st` only implements the software behavior, as is reasonable: the developer of the subtopology probably cannot write hardware interface drivers for every platform possible. So, the user would provide the proper driver to `st`, which is again reasonable. However, to accomplish this one would need to modify the contents of a subtopology, changing instance definitions and possibly the connection graphs as well. Such a task could become monstrous if, say `st` now implements the [hub pattern](../user-manual/framework/hub-pattern.md).

Thus, an autocoder [tool](https://github.com/fprime-community/fprime-subtopology-tool) dubbed the "Subtopology AC Tool" has been developed to be able to provide features like instantiation, local components, and formal subtopology interfaces. The tool itself provides examples of the syntax required to use these features, as well as a design methodology and a worked example with diagrams using a similar context to the one [in this document](#example-scenario).

Expand Down
3 changes: 0 additions & 3 deletions docs/user-manual/cmake/cmake-advanced.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,6 @@ provide libraries and executables to the system.
Top-level deployment directories (`Ref` folder) use the deployment templates. It is there to setup
the entry point to the build system.

For more on Modules, see: [module.md](https://nasa.github.io/fprime/UsersGuide/api/cmake/module.html)
For more on Deployments, see: [deployment.md](https://nasa.github.io/fprime/UsersGuide/api/cmake/deployment-CMakeLists.txt-template.html)


## Cross-Compiling With CMake

Expand Down
4 changes: 2 additions & 2 deletions docs/user-manual/cmake/cmake-intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,10 @@ link to all the other modules they use.

`add_fprime_subdirectory`, `register_fprime_module`, `register_fprime_executable` docs are here: [API](./cmake-api.md).

A template module `CMakeLists.txt` is documented: [module-CMakeLists.txt-template.md](https://nasa.github.io/fprime/UsersGuide/api/cmake/module-CMakeLists.txt-template.html)
A template module `CMakeLists.txt` is documented: [module-CMakeLists.txt-template.md](../../../cmake/module-CMakeLists.txt.template)
Remember it should be renamed to `CMakeLists.txt` in your module's folder.

A template deployment `CMakeLists.txt` is documented: [deployment-CMakeLists.txt-template.md](https://nasa.github.io/fprime/UsersGuide/api/cmake/deployment-CMakeLists.txt-template.html).
A template deployment `CMakeLists.txt` is documented: [deployment-CMakeLists.txt-template.md](../../../cmake/deployment-CMakeLists.txt.template).
Remember it should be renamed to `CMakeLists.txt` in your deployments folder.

When building a module, ensure it at least calls `register_fprime_module`. Deployments may call
Expand Down
Loading