-
Notifications
You must be signed in to change notification settings - Fork 15
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Combine docs into one page for MkDocs Website (#26)
- Loading branch information
1 parent
80bf5bc
commit 2a95860
Showing
7 changed files
with
497 additions
and
527 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,83 +1,16 @@ | ||
# Hello World: Introduction and F´ Terminology | ||
# F Prime Hello World Tutorial | ||
|
||
> Note: Tutorials can be browsed through our website or through the GitHub repository:\ | ||
> -> [Go to the website](https://fprime-community.github.io/fprime-tutorial-hello-world)\ | ||
> -> [Go to the GitHub repository](https://github.com/fprime-community/fprime-tutorial-hello-world) | ||
This repository contains the source code and documentation for the F Prime Hello World tutorial. | ||
|
||
The Hello World tutorial is designed to teach new users the basics of F´ usage, instruct existing users on new | ||
command that help in F´ development, and act as the canonical "Hello World" example for F´. | ||
|
||
This tutorial walks through the following steps: | ||
1. [Creating an F´ Project](./docs/NewProject.md) | ||
2. [Creating an F´ Hello World Component](./docs/HelloWorld.md) | ||
3. [Integration and Testing With F´ Deployments](./docs/Deployments.md) | ||
To run through the tutorial, please visit the F´ website and look for the tutorial section: https://fprime.jpl.nasa.gov | ||
|
||
Once finished, users should have a good understanding of the basic development mechanics for working with F´ and then | ||
could dive deeper into concepts through the [Math Component Tutorial](https://github.com/fprime-community/fprime-tutorial-math-component). | ||
## Contributing | ||
If you would like to contribute to this tutorial, please open a pull request. | ||
|
||
|
||
## F´ Terminology | ||
|
||
F´ uses specific terminology to refer to specific parts of the system. This section dives into the basic F´ terminology | ||
used in this tutorial and an explanation of how the terminology is used. | ||
|
||
#### Project | ||
|
||
An F´ project is a collection of files and folders used to work with F´. At its core, a project is just a folder that | ||
can be used to hold F´ code. Projects should specifically exclude the core F´ library to avoid the "clone and own" | ||
problem. Rather projects should link-to a version of F´. | ||
|
||
This tutorial will create a new `MyProject` project used to contain the other things created by the tutorial. | ||
|
||
#### Component | ||
|
||
An F´ component encapsulates a unit of system behavior. Components use ports to communicate with other components and | ||
define commands, events, telemetry channels, and parameters. | ||
|
||
This tutorial will create a new `HelloWorld` component that defines a `SAY_HELLO` command, `Hello` event, and | ||
`GreetingCount` telemetry channel. The component only used built-in ports. It does not use custom ports nor parameters. | ||
|
||
#### Port | ||
|
||
A port is an interface used to communicate between components. This tutorial only uses built-in ports. | ||
|
||
#### Command | ||
|
||
Commands represent actions that a component can execute. Commands can be sent from the ground or via command sequences. | ||
Command behavior is defined in a command handler defined in the component's implementation. | ||
|
||
This tutorial defines one command `SAY_HELLO` with a single argument `greeting`. This command will be sent via the | ||
ground system and will echo the greeting back via the `Hello` event. | ||
|
||
#### Event | ||
|
||
Events represent actions that a component has performed. Events are akin to software log messages. Events are received | ||
and displayed by the ground system. | ||
|
||
This tutorial defines one event `Hello` emitted in response to the `SAY_HELLO` command and containing the same greeting | ||
that the command had. | ||
|
||
#### Telemetry Channel | ||
|
||
Telemetry channels provide the active state of the component. Each channel represents a single item of state that will | ||
be sent to the ground system. | ||
|
||
This tutorial defines a single channel `GreetingCount` that contains the count of the number of `SAY_HELLO` greeting | ||
commands received. | ||
|
||
#### Deployment | ||
|
||
Deployments are a single build of F´ software. Each deployment results in one software executable that can be run along | ||
with other associated files. Each deployment has a topology that defines the system. | ||
|
||
This tutorial will create the `HelloWorldDeployment` deployment, run this deployment, and test it through the F´ GDS. | ||
|
||
#### Topology | ||
|
||
Topologies are networks of connected components that define the software. Multiple instances of a component may be added | ||
to the topology. | ||
|
||
This tutorial will use a standard command and data handling topology. A single `HelloWorld` component instance called | ||
`helloWorld` will be added to the standard topology. | ||
|
||
**Next:** [Hello World: Creating an F´ Project](./docs/NewProject.md) | ||
## Resources | ||
- [Discussions](https://github.com/nasa/fprime/discussions) | ||
- [Submit an Issue](https://github.com/nasa/fprime/issues) | ||
- [F´ Community](https://github.com/fprime-community) |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.