forked from nasa/nos3
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit fb1cd54
Showing
5,667 changed files
with
1,641,133 additions
and
0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
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 |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# | ||
# Metadata | ||
# | ||
.vagrant | ||
.vscode | ||
|
||
# | ||
# Build Files | ||
# | ||
build | ||
*.o | ||
support/nos3_install.log |
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 |
---|---|---|
@@ -0,0 +1,54 @@ | ||
cmake_minimum_required(VERSION 2.8) | ||
|
||
project(mission) | ||
|
||
include(CMakeParseArguments) | ||
|
||
SET(FORCE_32 ON) | ||
SET(BUILD_FLIGHT "NO" CACHE BOOL "Specifies whether to build the AVR flight target") | ||
SET(BUILD_SIMULATOR "NO" CACHE BOOL "Specifies whether to build the NOS3 Simulator") | ||
SET(BUILD_TESTS "NO" CACHE BOOL "Flag to enable building unit tests") | ||
SET(SKIP_VERSION "NO" CACHE BOOL "Specifies whether to skip generating the CFE version.h file (which can be a slow process)") | ||
SET(WIRING_PI "NO" CACHE BOOL "Specifies whether or not to include the wiringPi library") | ||
|
||
# test endianess | ||
include(TestBigEndian) | ||
test_big_endian(BYTE_ORDER_BE) | ||
if(BYTE_ORDER_BE) | ||
add_definitions(-DBYTE_ORDER_BE) | ||
else() | ||
add_definitions(-DBYTE_ORDER_LE) | ||
endif() | ||
|
||
# find itc cmake module path | ||
find_path(_ITC_CMAKE_MODULES_ | ||
NAMES FindITC_Common.cmake | ||
PATHS ${ITC_CMAKE_MODULES} | ||
${ITC_DEV_ROOT}/cmake/modules | ||
$ENV{ITC_DEV_ROOT}/cmake/modules | ||
/usr/local/cmake/modules | ||
/usr/cmake/modules) | ||
if(NOT _ITC_CMAKE_MODULES_) | ||
message(WARNING "Unable to find ITC CMake Modules") | ||
endif() | ||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${_ITC_CMAKE_MODULES_}) | ||
|
||
set(CMAKE_CXX_FLAGS "-m32") | ||
set(CMAKE_SHARED_LINKER_FLAGS "-m32") | ||
|
||
set(ENV{CFS_APP_PATH} "components:$ENV{CFS_APP_PATH}") | ||
set(MISSION_SOURCE_DIR ${CMAKE_SOURCE_DIR}) | ||
set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}) | ||
|
||
include(nasa_defs/mission.cmake) | ||
|
||
add_subdirectory(cfe) | ||
|
||
if (BUILD_SIMULATOR) | ||
# add gtest to build | ||
if (NOT WIRING_PI) | ||
include(SetupGTest) | ||
endif (NOT WIRING_PI) | ||
add_subdirectory(sims) | ||
endif (BUILD_SIMULATOR) | ||
|
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 |
---|---|---|
@@ -0,0 +1,105 @@ | ||
# NASA Operational Simulator for Small Satellites | ||
|
||
## Getting Started | ||
This repository allows the user to generate a VM in which to develop and test utilizing Vagrant and Virtual Box enabling every user to have an identical environment. | ||
|
||
Various open source packages have been utilized and will be installed, these are explained minimally below: | ||
* 42 - Spacecraft dynamics and visualization, NASA GSFC | ||
* cFS - core Flight System, NASA GSFC | ||
* COSMOS - Ball Aerospace | ||
* ITC Common - Loggers and developer tools, NASA IV&V ITC | ||
* NOS Engine - Middleware bus simulator, NASA IV&V ITC | ||
|
||
### Prerequisites | ||
Each of the applications listed below are required prior to performing the installation procedure: | ||
* [Git 1.8+](https://git-scm.com/) | ||
* [Vagrant 1.9+](https://www.vagrantup.com/) | ||
* [VirtualBox 5.1+](https://www.virtualbox.org/) | ||
|
||
### Installing | ||
1. Open a terminal | ||
2. Navigate to the desired location for the repository | ||
3. Clone the repository | ||
4. Navigate to `/nos3/support` | ||
5. Run `vagrant up` and wait to return to a prompt | ||
6. Run `vagrant reload` and wait for the VM to restart | ||
7. Login to the nos3 user using the password `nos3123!` and get to work! | ||
|
||
### Running | ||
In both CentOS and Ubuntu, scripts are located on the desktop that enable the user to easily work: | ||
* `nos3-build.sh` - Build FSW and simulators | ||
* `nos3-run.sh` - Launch the ground station, FSW, and simulators | ||
* `nos3-stop.sh` - Safely stop all components | ||
|
||
### Directory Layout | ||
* `~/nos3/` contains the repository at the time of the build locally in the VM. | ||
* /apps - the open source cFS apps | ||
* /build - the unarchived build directory | ||
* /cfe - the core flight system (cFS) source files | ||
* /docs - documentation related to cFS | ||
* /osal - operating system abstraction layer (OSAL), enables building for linux and flight OS | ||
* /psp - platform support package (PSP), enables use on multiple types of boards | ||
* /support - all the files needed for ground stations, ION, and installation | ||
* /cosmos - COSMOS database files | ||
* /installers - installation scripts | ||
* /packages - installation packages | ||
* /VirtualMachine - files directly releated to the VM, such as desktop scripts and launchers | ||
* `Vagrantfile` - main provisioner file used to generate the VM | ||
* /tools - standard cFS provided tools | ||
* `.gitignore` - list of files and directories to be ommitted from git | ||
* `.gitmodules` - list of git submodules utilized | ||
* `CMakeLists.txt` - top level cmake file to be used from inside the build directory | ||
* `README.md` - this file | ||
|
||
## Development | ||
Work occurs inside the VM, via shared folders, or on the host. This repository is copied into the `~/nos3` directory on installation, but can be moved / shared to a different location. Note that changing this directory will cause the scripts provided on the desktop to malfunction. | ||
|
||
### Git Flow | ||
The following flow for development should be adhered to when possible: | ||
|
||
* Master | ||
* Tested and verified using the approved test bed | ||
* Always demonstration ready and proven | ||
* Tagged releases should be from this branch | ||
|
||
* Development | ||
* Always builds and runs | ||
* The head of the project with the most features | ||
* Commits direct to this branch are only to be hot fixes and are not desired | ||
|
||
* Feature Branch | ||
* Have a Gitlab issue describing the end goal and path forward | ||
* Based out of development and merged back in after testing | ||
|
||
### Example Flow | ||
Note that the git command line may be substitued for a GUI tool without issue. | ||
|
||
1. Create GitLab issue describing the goal and the path forward | ||
2. Open a terminal | ||
2. Navigate to the top level directory of the working tree. | ||
4. Checkout the development branch | ||
- `git checkout development` | ||
5. Create a new branch for development | ||
- `git checkout -b ##-Example-Issue` | ||
6. Stage and commit work | ||
- `git add *` | ||
- `git commit -m "Detailed commit message explaining what changed"` | ||
7. Commit as many times as needed | ||
8. Checkout the development branch | ||
- `git checkout development` | ||
9. Pull latest development branch | ||
- `git pull` | ||
10. Merge feature branch into development | ||
- `git merge ##-Example-Issue` | ||
|
||
### Versioning | ||
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the tags on this repository. | ||
|
||
## Support | ||
If this project interests you or if you have any questions, please feel free to contact any developer directly or email `[email protected]`. | ||
|
||
### License | ||
This project is licensed under the NOSA (NASA Open Source Agreement) License. | ||
|
||
### Acknowledgments | ||
* Special thanks to all the developers involved! |
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 |
---|---|---|
@@ -0,0 +1,4 @@ | ||
|
||
inc/CFS_TST_ci_types\.h | ||
|
||
inc/CFS_TST_to_types\.h |
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 |
---|---|---|
@@ -0,0 +1,22 @@ | ||
Applications to operate with cFE release 6.6.0 | ||
Started from the tag: apps-rel-6.5.0 | ||
|
||
Apps from apps-rel-6.5.0 that did not build for cFS 6.6.0 are listed below followed by the fix | ||
ci_lab - copied from ci_lab-for-cfe-660 branch | ||
sch - copied from sch-for-cfe-660 branch | ||
- added HTONS to table to compile for linux in sample defs | ||
cf - copied from cf-for-cfe-660 branch | ||
- updated CMake to build the PRI objects as static lib | ||
cs - copied from cs-for-cfe-660 branch | ||
hs - copied from hs-for-cfe-660 branch | ||
lc - copied from lc-for-cfe-660 branch | ||
ds - added include to ds_verify.h | ||
hk - added include to hs_verify.h | ||
sc - payload->parameter struct fixed in sc_cmds.c | ||
ci - updated CMake to build properly | ||
to - updated CMake to build properly | ||
io_lib - updated CMake to build properly | ||
|
||
Generic Fixes: | ||
- Some applications still used the old location for tables "cf/apps/<tbl>.tbl", this is changed to "cf/<tbl>.tbl in all relevant locations | ||
- Added the cfe table build macros to CMakeLists where needed |
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 |
---|---|---|
@@ -0,0 +1,13 @@ | ||
This is the preliminary documentation for the JSC SBN application. The | ||
application relies on a library one or more back-end networking modules | ||
loaded at runtime by the SBN application. | ||
|
||
In order to build using the CMake system, ensure: | ||
|
||
1) copy sbn/fsw/src/SbnModuleData.dat to your defs folder as | ||
cpu<n>_SbnModuleData.dat, and edit as appropriate | ||
2) copy sbn/fsw/src/SbnPeerData.dat to your defs folder as | ||
cpu<n>_SbnPeerData.dat and edit as appropriate | ||
3) edit targets.cmake: | ||
a) TGT<n>_APPLIST to contain something like "sbn_lib sbn ipv4" | ||
b) TGT<n>_FILELIST to also contain "SbnModuleData.dat SbnPeerData.dat" |
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 |
---|---|---|
@@ -0,0 +1,23 @@ | ||
cmake_minimum_required(VERSION 2.6.4) | ||
project(CFS_CF C) | ||
|
||
include_directories(fsw/mission_inc) | ||
include_directories(fsw/platform_inc) | ||
include_directories(fsw/src/PUB) | ||
|
||
# include_directories(${cfs_lib_MISSION_DIR}/fsw/public_inc) | ||
|
||
aux_source_directory(fsw/src APP_SRC_FILES) | ||
aux_source_directory(fsw/src/PRI PRI_SRC_FILES) | ||
|
||
add_library(cfdp ${PRI_SRC_FILES}) | ||
|
||
# Create the app module | ||
add_cfe_app(cf ${APP_SRC_FILES}) | ||
target_link_libraries(cf cfdp) | ||
|
||
# Create table object files | ||
include_directories(fsw/src) | ||
|
||
# Add the tables | ||
add_cfe_tables(cf fsw/tables/cf_cfgtable.c) |
Binary file not shown.
Empty file.
Binary file added
BIN
+2.75 MB
apps/cf/docs/detailed_design/presentations/CFS_CF_DesignReviewV2.0.ppt
Binary file not shown.
Binary file added
BIN
+2.88 MB
apps/cf/docs/detailed_design/presentations/CFS_CF_DesignReviewV2.1.ppt
Binary file not shown.
Oops, something went wrong.