diff --git a/.gitmodules b/.gitmodules
index e7617915..266bfa17 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,6 +1,3 @@
-[submodule "deployment"]
- path = deployment
- url = https://github.com/nasa-itc/deployment.git
[submodule "fsw/apps/ci"]
path = fsw/apps/ci
url = https://github.com/nasa-itc/CFS_CI.git
@@ -19,9 +16,6 @@
[submodule "fsw/psp"]
path = fsw/psp
url = https://github.com/nasa-itc/PSP.git
-[submodule "fsw/tools/cFS-GroundSystem"]
- path = fsw/tools/cFS-GroundSystem
- url = https://github.com/nasa-itc/cFS-GroundSystem.git
[submodule "fsw/tools/elf2cfetbl"]
path = fsw/tools/elf2cfetbl
url = https://github.com/nasa-itc/elf2cfetbl.git
@@ -43,36 +37,12 @@
[submodule "fsw/apps/lc"]
path = fsw/apps/lc
url = https://github.com/nasa-itc/LC.git
-[submodule "fsw/components/hwlib"]
- path = fsw/components/hwlib
- url = https://github.com/nasa-itc/hwlib.git
[submodule "fsw/apps/hs"]
path = fsw/apps/hs
url = https://github.com/nasa-itc/HS.git
-[submodule "fsw/components/arducam"]
- path = fsw/components/arducam
- url = https://github.com/nasa-itc/arducam.git
-[submodule "fsw/components/clyde_eps"]
- path = fsw/components/clyde_eps
- url = https://github.com/nasa-itc/clyde_eps.git
-[submodule "fsw/components/novatel_oem615"]
- path = fsw/components/novatel_oem615
- url = https://github.com/nasa-itc/novatel_oem615.git
-[submodule "sims/clyde_battery_sim"]
- path = sims/clyde_battery_sim
- url = https://github.com/nasa-itc/clyde_battery_sim.git
-[submodule "sims/arducam_sim"]
- path = sims/arducam_sim
- url = https://github.com/nasa-itc/arducam_sim.git
-[submodule "sims/clyde_eps_sim"]
- path = sims/clyde_eps_sim
- url = https://github.com/nasa-itc/clyde_eps_sim.git
[submodule "sims/nos_time_driver"]
path = sims/nos_time_driver
url = https://github.com/nasa-itc/nos_time_driver.git
-[submodule "sims/novatel_oem615_sim"]
- path = sims/novatel_oem615_sim
- url = https://github.com/nasa-itc/novatel_oem615_sim.git
[submodule "sims/sim_common"]
path = sims/sim_common
url = https://github.com/nasa-itc/sim_common.git
@@ -91,18 +61,46 @@
[submodule "gsw/cosmos"]
path = gsw/cosmos
url = https://github.com/nasa-itc/gsw-cosmos.git
-[submodule "fsw/components/generic_reaction_wheel"]
- path = fsw/components/generic_reaction_wheel
- url = https://github.com/nasa-itc/generic_reaction_wheel.git
-[submodule "sims/generic_reaction_wheel_sim"]
- path = sims/generic_reaction_wheel_sim
- url = https://github.com/nasa-itc/generic_reaction_wheel_sim.git
-[submodule "fsw/components/sample"]
- path = fsw/components/sample
- url = https://github.com/nasa-itc/sample_app.git
-[submodule "sims/sample_sim"]
- path = sims/sample_sim
- url = https://github.com/nasa-itc/sample_sim.git
[submodule "sims/truth_42_sim"]
path = sims/truth_42_sim
url = https://github.com/nasa-itc/truth_42_sim.git
+[submodule "fsw/apps/ci_lab"]
+ path = fsw/apps/ci_lab
+ url = https://github.com/nasa-itc/ci_lab.git
+ branch = nos3-main
+[submodule "fsw/apps/to_lab"]
+ path = fsw/apps/to_lab
+ url = https://github.com/nasa-itc/to_lab.git
+ branch = nos3-main
+[submodule "fsw/apps/hwlib"]
+ path = fsw/apps/hwlib
+ url = https://github.com/nasa-itc/hwlib.git
+ branch = master
+[submodule "components/arducam"]
+ path = components/arducam
+ url = https://github.com/nasa-itc/arducam.git
+ branch = master
+[submodule "components/generic_reaction_wheel"]
+ path = components/generic_reaction_wheel
+ url = https://github.com/nasa-itc/generic_reaction_wheel.git
+ branch = master
+[submodule "components/sample"]
+ path = components/sample
+ url = https://github.com/nasa-itc/sample.git
+ branch = master
+[submodule "components/novatel_oem615"]
+ path = components/novatel_oem615
+ url = https://github.com/nasa-itc/novatel_oem615.git
+ branch = master
+[submodule "components/template"]
+ path = components/template
+ url = https://github.com/nasa-itc/component_template.git
+ branch = main
+[submodule "fsw/apps/ds"]
+ path = fsw/apps/ds
+ url = https://github.com/nasa-itc/DS.git
+ branch = nos3-main
+[submodule "fsw/apps/fm"]
+ path = fsw/apps/fm
+ url = https://github.com/nasa-itc/FM.git
+ branch = nos3-main
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 00000000..50a36292
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,263 @@
+NASA OPEN SOURCE AGREEMENT VERSION 1.3
+
+THIS OPEN SOURCE AGREEMENT ("AGREEMENT") DEFINES THE RIGHTS OF USE,
+REPRODUCTION, DISTRIBUTION, MODIFICATION AND REDISTRIBUTION OF CERTAIN
+COMPUTER SOFTWARE ORIGINALLY RELEASED BY THE UNITED STATES GOVERNMENT
+AS REPRESENTED BY THE GOVERNMENT AGENCY LISTED BELOW ("GOVERNMENT
+AGENCY"). THE UNITED STATES GOVERNMENT, AS REPRESENTED BY GOVERNMENT
+AGENCY, IS AN INTENDED THIRD-PARTY BENEFICIARY OF ALL SUBSEQUENT
+DISTRIBUTIONS OR REDISTRIBUTIONS OF THE SUBJECT SOFTWARE. ANYONE WHO
+USES, REPRODUCES, DISTRIBUTES, MODIFIES OR REDISTRIBUTES THE SUBJECT
+SOFTWARE, AS DEFINED HEREIN, OR ANY PART THEREOF, IS, BY THAT ACTION,
+ACCEPTING IN FULL THE RESPONSIBILITIES AND OBLIGATIONS CONTAINED IN
+THIS AGREEMENT.
+
+Government Agency: NASA
+Government Agency Original Software Designation: GSC-17737-1
+Government Agency Original Software Title:
+ NASA Operational Simulator for Small Satellites
+User Registration Requested. Please Visit
+ https://github.com/nasa/nos3
+Government Agency Point of Contact for Original Software:
+ John.P.Lucas@nasa.gov
+
+1. DEFINITIONS
+
+A. "Contributor" means Government Agency, as the developer of the
+Original Software, and any entity that makes a Modification.
+B. "Covered Patents" mean patent claims licensable by a Contributor
+that are necessarily infringed by the use or sale of its Modification
+alone or when combined with the Subject Software.
+C. "Display" means the showing of a copy of the Subject Software,
+either directly or by means of an image, or any other device.
+D. "Distribution" means conveyance or transfer of the Subject
+Software, regardless of means, to another.
+E. "Larger Work" means computer software that combines Subject
+Software, or portions thereof, with software separate from the Subject
+Software that is not governed by the terms of this Agreement.
+F. "Modification" means any alteration of, including addition to or
+deletion from, the substance or structure of either the Original
+Software or Subject Software, and includes derivative works, as that
+term is defined in the Copyright Statute, 17 USC 101. However, the
+act of including Subject Software as part of a Larger Work does not in
+and of itself constitute a Modification.
+G. "Original Software" means the computer software first released
+under this Agreement by Government Agency with Government Agency
+designation GSC-17776-1 and entitled Core Flight System Cryptography
+Library, including source code, object code and accompanying
+documentation, if any.
+H. "Recipient" means anyone who acquires the Subject Software under
+this Agreement, including all Contributors.
+I. "Redistribution" means Distribution of the Subject Software after a
+Modification has been made.
+J. "Reproduction" means the making of a counterpart, image or copy of
+the Subject Software.
+K. "Sale" means the exchange of the Subject Software for money or
+equivalent value.
+L. "Subject Software" means the Original Software, Modifications, or
+any respective parts thereof.
+M. "Use" means the application or employment of the Subject Software
+for any purpose.
+
+2. GRANT OF RIGHTS
+
+A. Under Non-Patent Rights: Subject to the terms and conditions of
+this Agreement, each Contributor, with respect to its own contribution
+to the Subject Software, hereby grants to each Recipient a
+non-exclusive, world-wide, royalty-free license to engage in the
+following activities pertaining to the Subject Software:
+
+1. Use
+2. Distribution
+3. Reproduction
+4. Modification
+5. Redistribution
+6. Display
+
+B. Under Patent Rights: Subject to the terms and conditions of this
+Agreement, each Contributor, with respect to its own contribution to
+the Subject Software, hereby grants to each Recipient under Covered
+Patents a non-exclusive, world-wide, royalty-free license to engage in
+the following activities pertaining to the Subject Software:
+
+1. Use
+2. Distribution
+3. Reproduction
+4. Sale
+5. Offer for Sale
+
+C. The rights granted under Paragraph B. also apply to the combination
+of a Contributor's Modification and the Subject Software if, at the
+time the Modification is added by the Contributor, the addition of
+such Modification causes the combination to be covered by the Covered
+Patents. It does not apply to any other combinations that include a
+Modification.
+
+D. The rights granted in Paragraphs A. and B. allow the Recipient to
+sublicense those same rights. Such sublicense must be under the same
+terms and conditions of this Agreement.
+
+3. OBLIGATIONS OF RECIPIENT
+
+A. Distribution or Redistribution of the Subject Software must be made
+under this Agreement except for additions covered under paragraph 3H.
+
+1. Whenever a Recipient distributes or redistributes the Subject
+ Software, a copy of this Agreement must be included with each copy
+ of the Subject Software; and
+2. If Recipient distributes or redistributes the Subject Software in
+ any form other than source code, Recipient must also make the
+ source code freely available, and must provide with each copy of
+ the Subject Software information on how to obtain the source code
+ in a reasonable manner on or through a medium customarily used for
+ software exchange.
+
+B. Each Recipient must ensure that the following copyright notice
+appears prominently in the Subject Software:
+
+/* Copyright (C) 2009 - 2022 National Aeronautics and Space Administration. All Foreign Rights are Reserved to the U.S. Government.
+
+ This software is provided "as is" without any warranty of any kind, either expressed, implied, or statutory, including, but not
+ limited to, any warranty that the software will conform to specifications, any implied warranties of merchantability, fitness
+ for a particular purpose, and freedom from infringement, and any warranty that the documentation will conform to the program, or
+ any warranty that the software will be error free.
+
+ In no event shall NASA be liable for any damages, including, but not limited to direct, indirect, special or consequential damages,
+ arising out of, resulting from, or in any way connected with the software or its documentation, whether or not based upon warranty,
+ contract, tort or otherwise, and whether or not loss was sustained from, or arose out of the results of, or use of, the software,
+ documentation or services provided hereunder.
+
+ ITC Team
+ NASA IV&V
+ jstar-development-team@mail.nasa.gov
+*/
+
+C. Each Contributor must characterize its alteration of the Subject
+Software as a Modification and must identify itself as the originator
+of its Modification in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Modification. In
+fulfillment of these requirements, Contributor must include a file
+(e.g., a change log file) that describes the alterations made and the
+date of the alterations, identifies Contributor as originator of the
+alterations, and consents to characterization of the alterations as a
+Modification, for example, by including a statement that the
+Modification is derived, directly or indirectly, from Original
+Software provided by Government Agency. Once consent is granted, it
+may not thereafter be revoked.
+
+D. A Contributor may add its own copyright notice to the Subject
+Software. Once a copyright notice has been added to the Subject
+Software, a Recipient may not remove it without the express permission
+of the Contributor who added the notice.
+
+E. A Recipient may not make any representation in the Subject Software
+or in any promotional, advertising or other material that may be
+construed as an endorsement by Government Agency or by any prior
+Recipient of any product or service provided by Recipient, or that may
+seek to obtain commercial advantage by the fact of Government Agency's
+or a prior Recipient's participation in this Agreement.
+
+F. In an effort to track usage and maintain accurate records of the
+Subject Software, each Recipient, upon receipt of the Subject
+Software, is requested to register with Government Agency by visiting
+the following website: https://github.com/nasa/CryptoLib. Recipient's
+name and personal information shall be used for statistical purposes
+only. Once a Recipient makes a Modification available, it is requested
+that the Recipient inform Government Agency at the web site provided
+above how to access the Modification.
+
+G. Each Contributor represents that that its Modification is believed
+to be Contributor's original creation and does not violate any
+existing agreements, regulations, statutes or rules, and further that
+Contributor has sufficient rights to grant the rights conveyed by this
+Agreement.
+
+H. A Recipient may choose to offer, and to charge a fee for, warranty,
+support, indemnity and/or liability obligations to one or more other
+Recipients of the Subject Software. A Recipient may do so, however,
+only on its own behalf and not on behalf of Government Agency or any
+other Recipient. Such a Recipient must make it absolutely clear that
+any such warranty, support, indemnity and/or liability obligation is
+offered by that Recipient alone. Further, such Recipient agrees to
+indemnify Government Agency and every other Recipient for any
+liability incurred by them as a result of warranty, support, indemnity
+and/or liability offered by such Recipient.
+
+I. A Recipient may create a Larger Work by combining Subject Software
+with separate software not governed by the terms of this agreement and
+distribute the Larger Work as a single product. In such case, the
+Recipient must make sure Subject Software, or portions thereof,
+included in the Larger Work is subject to this Agreement.
+
+J. Notwithstanding any provisions contained herein, Recipient is
+hereby put on notice that export of any goods or technical data from
+the United States may require some form of export license from the
+U.S. Government. Failure to obtain necessary export licenses may
+result in criminal liability under U.S. laws. Government Agency
+neither represents that a license shall not be required nor that, if
+required, it shall be issued. Nothing granted herein provides any
+such export license.
+
+4. DISCLAIMER OF WARRANTIES AND LIABILITIES; WAIVER AND INDEMNIFICATION
+
+A. No Warranty: THE SUBJECT SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY
+WARRANTY OF ANY KIND, EITHER EXPRESSED, IMPLIED, OR STATUTORY,
+INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY THAT THE SUBJECT SOFTWARE
+WILL CONFORM TO SPECIFICATIONS, ANY IMPLIED WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR FREEDOM FROM
+INFRINGEMENT, ANY WARRANTY THAT THE SUBJECT SOFTWARE WILL BE ERROR
+FREE, OR ANY WARRANTY THAT DOCUMENTATION, IF PROVIDED, WILL CONFORM TO
+THE SUBJECT SOFTWARE. THIS AGREEMENT DOES NOT, IN ANY MANNER,
+CONSTITUTE AN ENDORSEMENT BY GOVERNMENT AGENCY OR ANY PRIOR RECIPIENT
+OF ANY RESULTS, RESULTING DESIGNS, HARDWARE, SOFTWARE PRODUCTS OR ANY
+OTHER APPLICATIONS RESULTING FROM USE OF THE SUBJECT SOFTWARE.
+FURTHER, GOVERNMENT AGENCY DISCLAIMS ALL WARRANTIES AND LIABILITIES
+REGARDING THIRD-PARTY SOFTWARE, IF PRESENT IN THE ORIGINAL SOFTWARE,
+AND DISTRIBUTES IT "AS IS."
+
+B. Waiver and Indemnity: RECIPIENT AGREES TO WAIVE ANY AND ALL CLAIMS
+AGAINST THE UNITED STATES GOVERNMENT, ITS CONTRACTORS AND
+SUBCONTRACTORS, AS WELL AS ANY PRIOR RECIPIENT. IF RECIPIENT'S USE OF
+THE SUBJECT SOFTWARE RESULTS IN ANY LIABILITIES, DEMANDS, DAMAGES,
+EXPENSES OR LOSSES ARISING FROM SUCH USE, INCLUDING ANY DAMAGES FROM
+PRODUCTS BASED ON, OR RESULTING FROM, RECIPIENT'S USE OF THE SUBJECT
+SOFTWARE, RECIPIENT SHALL INDEMNIFY AND HOLD HARMLESS THE UNITED
+STATES GOVERNMENT, ITS CONTRACTORS AND SUBCONTRACTORS, AS WELL AS ANY
+PRIOR RECIPIENT, TO THE EXTENT PERMITTED BY LAW. RECIPIENT'S SOLE
+REMEDY FOR ANY SUCH MATTER SHALL BE THE IMMEDIATE, UNILATERAL
+TERMINATION OF THIS AGREEMENT.
+
+
+5. GENERAL TERMS
+
+A. Termination: This Agreement and the rights granted hereunder will
+terminate automatically if a Recipient fails to comply with these
+terms and conditions, and fails to cure such noncompliance within
+thirty (30) days of becoming aware of such noncompliance. Upon
+termination, a Recipient agrees to immediately cease use and
+distribution of the Subject Software. All sublicenses to the Subject
+Software properly granted by the breaching Recipient shall survive any
+such termination of this Agreement.
+
+B. Severability: If any provision of this Agreement is invalid or
+unenforceable under applicable law, it shall not affect the validity
+or enforceability of the remainder of the terms of this Agreement.
+
+C. Applicable Law: This Agreement shall be subject to United States
+federal law only for all purposes, including, but not limited to,
+determining the validity of this Agreement, the meaning of its
+provisions and the rights, obligations and remedies of the parties.
+
+D. Entire Understanding: This Agreement constitutes the entire
+understanding and agreement of the parties relating to release of the
+Subject Software and may not be superseded, modified or amended except
+by further written agreement duly executed by the parties.
+
+E. Binding Authority: By accepting and using the Subject Software
+under this Agreement, a Recipient affirms its authority to bind the
+Recipient to all terms and conditions of this Agreement and that that
+Recipient hereby agrees to all terms and conditions herein.
+
+F. Point of Contact: Any Recipient contact with Government Agency is
+to be directed to the designated representative as follows:
+ John.P.Lucas@nasa.gov
\ No newline at end of file
diff --git a/Makefile b/Makefile
index 78ca2b56..c83c8ab5 100644
--- a/Makefile
+++ b/Makefile
@@ -6,7 +6,7 @@ INSTALLPREFIX ?= exe
FSWBUILDDIR ?= $(CURDIR)/fsw/build
SIMBUILDDIR ?= $(CURDIR)/sims/build
-export CFS_APP_PATH = components
+export CFS_APP_PATH = ../components
# The "prep" step requires extra options that are specified via enviroment variables.
# Certain special ones should be passed via cache (-D) options to CMake.
@@ -27,7 +27,7 @@ endif
# The "LOCALTGTS" defines the top-level targets that are implemented in this makefile
# Any other target may also be given, in that case it will simply be passed through.
-LOCALTGTS := all fsw fsw-prep sim sim-prep clean clean-fsw clean-sim launch stop
+LOCALTGTS := all fsw fsw-prep pack sim sim-prep clean clean-fsw clean-sim gsw launch log real-clean stop
OTHERTGTS := $(filter-out $(LOCALTGTS),$(MAKECMDGOALS))
# As this makefile does not build any real files, treat everything as a PHONY target
@@ -79,8 +79,18 @@ clean-sim:
#
# Script Calls
#
+gsw:
+ ./gsw/scripts/gsw.sh
+
launch:
./gsw/scripts/launch.sh
+log:
+ ./gsw/scripts/log.sh
+
+real-clean:
+ $(MAKE) clean
+ ./gsw/scripts/real_clean.sh
+
stop:
./gsw/scripts/stop.sh
diff --git a/README.md b/README.md
index b95b1075..ad98d010 100644
--- a/README.md
+++ b/README.md
@@ -2,13 +2,8 @@
The NASA Operational Simulator for Small Satellites (NOS3) is a suite of tools developed by NASA's Katherine Johnson Independent Verification and Validation (IV&V) Facility to aid in areas such as software development, integration & test (I&T), mission operations/training, verification and validation (V&V), and software systems check-out.
NOS3 provides a software development environment, a multi-target build system, an operator interface/ground station, dynamics and environment simulations, and software-based models of spacecraft hardware.
-### Known Issues
-1. Not all cFS delivered apps are included and supported at this time. Currently supported are: CI, TO, SCH, SC, HK, CFS_LIB
-2. CentOS support not included in this release
-These issues will be addressed in future updates
-
-### Documentation
-The best source of documentation can be found at [NOS3](www.nos3.org), as well as a PDF Users Guide attached to this Release on Github
+## Documentation
+The best source of documentation can be found at [the wiki](https://github.com/nasa/nos3/wiki) or [NOS3](http://www.nos3.org).
### Prerequisites
Each of the applications listed below are required prior to performing the installation procedure:
@@ -17,72 +12,42 @@ Each of the applications listed below are required prior to performing the insta
* [VirtualBox 6.1+](https://www.virtualbox.org/)
### Installing
-1. Open a terminal
-2. Navigate to the desired location for the repository
-3. Clone the repository `git clone https://github.com/nasa/nos3.git`
-4. Clone the submodules `git submodule init` and `git submodule update`
-5. Navigate to `/nos3/deployment`
-6. Run `vagrant up` and wait to return to a prompt
- - This can take anywhere from 20 minutes to hours depending on internet speeds and host PC specs
- - The VM will reboot multiple times in order to finish install packages for you automatically so wait for that prompt!
- - **Sometimes ansible does not seem to install and there is an error like "Could not get lock /var/lib/apt/lists/lock". If this happens run `vagrant provision` to install ansible and provision.**
-7. Login to the nos3 user using the password `nos3123!` and get to work!
-7. Try building and running following the instructions below
+1. Clone the repository `git clone https://github.com/nasa/nos3.git`
+2. `cd nos3`
+3. Clone the submodules `git submodule update --init --recursive`
+4. Run `vagrant up` and wait to return to a prompt
+ - This can take anywhere from a few minutes to hours depending on internet speeds and host PC specs
+5. Login to the nos3 user using the password `nos3123!` and get to work!
+6. Try building and running following the instructions below
### Getting started
-It is recommended to share the nos3 repository into the virtual machine
-1. Open a terminal
+It is recommended to share the nos3 repository into the virtual machine (e.g. `/home/nos3/Desktop/github-nos3`)
+1. Open a terminal (to `/home/nos3/Desktop/github-nos3`)
2. To build use the `make` command from the nos3 repo
3. To run nos3 use the `make launch` command from the nos3 repo
4. To halt nos3 use the `make stop` command from the nos3 repo
### Directory Layout
-* `/nos3/deployment` contains the repository for generating the nos3 virtual environment
-* `/nos3/fsw` contains the repositories needed to build cFS FSW
+* `components` contains the repositories for the hardware component apps; each repository contains the app, an associated sim, and COSMOS command and telemetry tables
+* `fsw` contains the repositories needed to build cFS FSW
- /apps - the open source cFS apps
- /cfe - the core flight system (cFS) source files
- - /components - the hardware component apps
+ - /nos3_defs - cFS definitions to configure cFS for NOS3
- /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
- /tools - standard cFS provided tools
-* `/nos3/gsw` contains the nos3 ground station files, and other ground based tools
+* `gsw` contains the nos3 ground station files, and other ground based tools
- /ait - Ammos Instrument Toolkit (Untested for 1.05.0)
- /cosmos - COSMOS files
- /OrbitInviewPowerPrediction - OIPP tool for operators
- - /scripts - convience scripts
-* `/nos3/sims` contains the nos3 simulators and configuration files
- - /cfg - 42 files and NOS3 top level config file
- - /_sim - a component simulator
+ - /scripts - convenience scripts
+* `sims` contains the nos3 simulators and configuration files
+ - /cfg - 42 configuration files and NOS3 top level configuration files
- /nos_time_driver - time syncronization for all components
- - /sim_common - common files used by component simulators
+ - /sim_common - common files used by component simulators including the files that define the simulator plugin architecture
- /sim_server - NOS Engine Server config and build files
- /sim_terminal - terminal for testing on NOS Engine busses
-
-## Support
-If this project interests you or if you have any questions, please feel free to contact any developer directly or email `support@nos3.org`.
-
-## Reporting Issues
-Please report issues to the tracking system on Github [NOS3 Issues](www.github.com/nasa/nos3/issues)
-
-### Frequently Asked Questions
-* A GUI environment hasn't shown up after an extended period (> 1.5 hours), what should I do?
- - Stop the provision, delete the existing VM (if it was created), and try again
- - `CTRL + C`, `vagrant destroy`, `y`, `vagrant up`, wait, `vagrant reload`
-* What is the root username and password?
- - `vagrant` with password `vagrant`
-* Why doesn't the shared clipboard work?
- - You will most likely need to re-install / update the guest additions and reboot for this to function properly
- - In the VirtualBox menu select: Devices -> Insert Guest Additions CD Image...
- - Follow the instructions provided
-* How can I mount a shared folder so that I edit on my host and compile / run in the VM?
- - In the VirtualBox menu select: Devices -> Shared Folders -> Shared Folders Settings...
- - Select the folder with a plus sign to add your folder
- * Provide the path, name, mount point inside the VM
- * Select `Auto-mount`, `Make Permanent`, and `OK`
-* How can I run 42 without the GUI?
- - Edit the `/nos3/sims/cfg/InOut/Inp_Sim.txt` and set Graphics Front End to `FALSE`
-* NOS Engine Standalone server reports `NOSEngine.Uart - close uart port failed` error?
- - This isn't actually an error and is scheduled to be removed, proceed as usual.
+ - /truth_42_sim - interface between 42 and COSMOS to provide dynamics truth data to COSMOS
### Versioning
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the tags on this repository.
@@ -90,6 +55,8 @@ We use [SemVer](http://semver.org/) for versioning. For the versions available,
### License
This project is licensed under the NOSA (NASA Open Source Agreement) License.
-### Acknowledgments
-* Special thanks to all the developers involved!
+# Issues and Features
+Please report issues and request features on the GitHub tracking system - [NOS3 Issues](https://www.github.com/nasa/nos3/issues).
+## Support
+If this project interests you or if you have any questions, please feel free to contact any developer directly or email `support@nos3.org`.
diff --git a/VDD.md b/VDD.md
deleted file mode 100644
index d41f5ea5..00000000
--- a/VDD.md
+++ /dev/null
@@ -1,58 +0,0 @@
-# Version Description Document #
-# NASA Operational Simulator for Small Satellites (NOS3) #
-# BUILD: 1.05.00 #
-## RELEASE DATE: 7/10/2020 ##
-
-### Software Versions ###
-This version of NOS3 includes the following software components with minimal changes to allow NOS3 compatibility. Where changes are necessay, the original repo is forked to https://github.com/nasa-itc. The upstream version or commit is noted below
-
-- **core Flight Executive: [cFE](https://github.com/nasa/cFE)** - v6.7.0a
-- **Operating System Abstraction Layer: [OSAL](https://github.com/nasa/osal)** - v5.0.0
-- **Platform Support Package: [PSP](https://github.com/nasa-itc/PSP)** - v1.4.0
- - nos-linux psp added for NOS3 compatibilty
-- cFS Lab Tools
- - **Sample Ground System: [cFS-GroundSystem](https://github.com/nasa/cFS-GroundSystem)** - v2.1.0
- - **ELF to cFE Table Converter: [elf2cfetbl](https://github.com/nasa/elf2cfetbl)** - v3.1.0
-- cFS Applications
- - **Command Ingest: [CI](https://github.com/nasa/cfs_ci)** - master commit: 1bcf88d
- - Changes to CMake for NOS3 build system
- - **Scheduler: [SCH](https://github.com/nasa/sch)** - v2.2.2
- - Updated table locations and changed CMake for NOS3
- - **Stored Command: [SC](https://github.com/nasa/sc)** - v2.5.0
- - Updated table locations
- - **House Keeping: [HK](https://github.com/nasa/hk)** - v2.4.1
- - Updated table locations and changed CMake for NOS3
- - **Telemetry Output: [TO](https://github.com/nasa/cfs_to)** - master commit: 4589edb
- - Updated table locations and changed CMake for NOS3
- - **CFS_LIB: [CFS_LIB](https://github.com/nasa/cfs_lib)** - v2.2.0
- - Added cmake files for build
-- NOS3 Applications
- - **Arducam OV2640**
- - **Clyde EPS**
- - **Generic Reaction Wheels**
- - **HWLIB**
- - **Novatel OEM615**
- - **Sample**
-- NOS3 Simulators
- - **Arducam OV2640**
- - **Clyde Battery**
- - **Clyde EPS**
- - **NOS3 Time Driver**
- - **Novatel OEM615**
- - **Sample**
- - **Sim Command Terminal**
-- NOS3 Supporting Packages
- - **NOS Engine** - v1.5.1
- - **ITC Common** - v1.9.1
-- **42: [42](https://github.com/ericstoneking/42)** - master commit: b70508fd
-- **COSMOS: [COSMOS](https://github.com/ballaerospace/cosmos)** - master
-- **AIT: [AIT](https://github.com/nasa-ammos/ait-core)** - v2.0.0
-- **Ubuntu** - 18.04 LTS
-
-### Summary of NOS3 changes for this release ###
-- Updated to cFS v6.7.0a
-- Included all NOS3 components as submodules for better tracking
-- Included ability to command 42 from simulators
-- Included better support for missions varying from the default configuration in 42
-- Updated 42 version
-- General bug fixes
\ No newline at end of file
diff --git a/Vagrantfile b/Vagrantfile
new file mode 100644
index 00000000..69f9014b
--- /dev/null
+++ b/Vagrantfile
@@ -0,0 +1,20 @@
+Vagrant.configure("2") do |config|
+ ### Uncomment one of the following to select configuration
+ #config.vm.box = "nos3/oracle"
+ #config.vm.box = "nos3/rocky"
+ config.vm.box = "nos3/ubuntu"
+
+ ### Specify version
+ config.vm.box_version = "0.0.0"
+
+ ### Share host NOS3 repository into VM
+ config.vm.synced_folder ".", "/home/nos3/Desktop/github-nos3"
+
+ ### General configuration
+ config.vm.provider "virtualbox" do |vbox|
+ vbox.name = "nos3_1.5.2"
+ vbox.gui = true
+ #vbox.cpus = 2
+ #vbox.memory = "8192"
+ end
+end
diff --git a/fsw/components/ComponentSettings.cmake b/components/ComponentSettings.cmake
similarity index 97%
rename from fsw/components/ComponentSettings.cmake
rename to components/ComponentSettings.cmake
index a148ac52..55c6d73f 100644
--- a/fsw/components/ComponentSettings.cmake
+++ b/components/ComponentSettings.cmake
@@ -15,7 +15,7 @@ set(ITC_C_FLAGS "${ITC_C_FLAGS}"
"-Wformat=2"
#"-Wcast-align" # should discuss this
#"-Wcast-qual"
- -Wno-discarded-qualifiers
+ "-Wno-discarded-qualifiers"
"-Winline"
"-Wpointer-arith"
"-Wredundant-decls"
@@ -57,4 +57,3 @@ endif(CMAKE_COMPILER_IS_GNUCC)
string(REPLACE ";" " " ITC_C_FLAGS "${ITC_C_FLAGS}")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ITC_C_FLAGS}")
-
diff --git a/components/arducam b/components/arducam
new file mode 160000
index 00000000..45cc6d72
--- /dev/null
+++ b/components/arducam
@@ -0,0 +1 @@
+Subproject commit 45cc6d72de2d77ba992b088bb97fbf3d9ae5ff16
diff --git a/components/generic_reaction_wheel b/components/generic_reaction_wheel
new file mode 160000
index 00000000..8906308f
--- /dev/null
+++ b/components/generic_reaction_wheel
@@ -0,0 +1 @@
+Subproject commit 8906308fd6a745c4a7cdcd7c7ae2a0605b9e524b
diff --git a/components/novatel_oem615 b/components/novatel_oem615
new file mode 160000
index 00000000..90b99e4c
--- /dev/null
+++ b/components/novatel_oem615
@@ -0,0 +1 @@
+Subproject commit 90b99e4c0644f967516348163b6878c073c4d60b
diff --git a/components/sample b/components/sample
new file mode 160000
index 00000000..a1ae053c
--- /dev/null
+++ b/components/sample
@@ -0,0 +1 @@
+Subproject commit a1ae053c6d2babb319c3b385f1b16cf7aab69d74
diff --git a/components/template b/components/template
new file mode 160000
index 00000000..708f604a
--- /dev/null
+++ b/components/template
@@ -0,0 +1 @@
+Subproject commit 708f604ae670c9435ba54294a3d1b4c6372af9eb
diff --git a/deployment b/deployment
deleted file mode 160000
index 04a32bd9..00000000
--- a/deployment
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 04a32bd97fc1c9a4720a45eed85986c71d60ef48
diff --git a/fsw/apps/cf b/fsw/apps/cf
index cbda7b9c..f835e855 160000
--- a/fsw/apps/cf
+++ b/fsw/apps/cf
@@ -1 +1 @@
-Subproject commit cbda7b9cad82e0d37cd0080e21f79b18eb571b17
+Subproject commit f835e8559574b4ad0ef913e85d68d14ee428ec81
diff --git a/fsw/apps/ci_lab b/fsw/apps/ci_lab
new file mode 160000
index 00000000..ba76e09f
--- /dev/null
+++ b/fsw/apps/ci_lab
@@ -0,0 +1 @@
+Subproject commit ba76e09fd93967cc41024f5e50228280ac2e6d78
diff --git a/fsw/apps/ds b/fsw/apps/ds
new file mode 160000
index 00000000..c80a74cb
--- /dev/null
+++ b/fsw/apps/ds
@@ -0,0 +1 @@
+Subproject commit c80a74cbf0f39ec0596058c5977f99e25e1fb67a
diff --git a/fsw/apps/fm b/fsw/apps/fm
new file mode 160000
index 00000000..a6ceee38
--- /dev/null
+++ b/fsw/apps/fm
@@ -0,0 +1 @@
+Subproject commit a6ceee3822adc4e15f55ec16e015044f73e1787e
diff --git a/fsw/apps/hwlib b/fsw/apps/hwlib
new file mode 160000
index 00000000..b1bdbc0e
--- /dev/null
+++ b/fsw/apps/hwlib
@@ -0,0 +1 @@
+Subproject commit b1bdbc0ecfac66275da289ce144caba79f6f1fd9
diff --git a/fsw/apps/io_lib b/fsw/apps/io_lib
index 3f41191d..887b7e8d 160000
--- a/fsw/apps/io_lib
+++ b/fsw/apps/io_lib
@@ -1 +1 @@
-Subproject commit 3f41191d0d361bed88b056f2a7d45301ac7b3fe5
+Subproject commit 887b7e8d82c226ae892797829526f03ba1883429
diff --git a/fsw/apps/lc b/fsw/apps/lc
index 7e450180..cfb3993a 160000
--- a/fsw/apps/lc
+++ b/fsw/apps/lc
@@ -1 +1 @@
-Subproject commit 7e450180778039714625d66539e898fa90542fe8
+Subproject commit cfb3993a2b4a917ed891875b4ef21ba8dd652f3a
diff --git a/fsw/apps/sc b/fsw/apps/sc
index 055e68dc..3a796715 160000
--- a/fsw/apps/sc
+++ b/fsw/apps/sc
@@ -1 +1 @@
-Subproject commit 055e68dc7a12d305516d63d300105cf27b008a7b
+Subproject commit 3a7967155033168738892ee62eec95ef26abed29
diff --git a/fsw/apps/to b/fsw/apps/to
index 2e8e69df..452318bc 160000
--- a/fsw/apps/to
+++ b/fsw/apps/to
@@ -1 +1 @@
-Subproject commit 2e8e69dfe593f7e672b6219da6ed8643d57c988e
+Subproject commit 452318bcfda3a95002a06ffbee3acdf66cf3c152
diff --git a/fsw/apps/to_lab b/fsw/apps/to_lab
new file mode 160000
index 00000000..9687d1d0
--- /dev/null
+++ b/fsw/apps/to_lab
@@ -0,0 +1 @@
+Subproject commit 9687d1d03e823be5d459dfb408b8441da5b1724f
diff --git a/fsw/cfe b/fsw/cfe
index 3190ce7f..27cc7df5 160000
--- a/fsw/cfe
+++ b/fsw/cfe
@@ -1 +1 @@
-Subproject commit 3190ce7f58ffc19822e9a8f146aa4749bb1e0f59
+Subproject commit 27cc7df54a33da0a5d2b3996e10e3d0a533208c9
diff --git a/fsw/components/arducam b/fsw/components/arducam
deleted file mode 160000
index 965325e4..00000000
--- a/fsw/components/arducam
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 965325e4fdb92584e6c01cbc3cd271948cb1ee00
diff --git a/fsw/components/clyde_eps b/fsw/components/clyde_eps
deleted file mode 160000
index 857c1411..00000000
--- a/fsw/components/clyde_eps
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 857c14114c6033884c74f6c9f4c2b6c261b0fe0d
diff --git a/fsw/components/generic_reaction_wheel b/fsw/components/generic_reaction_wheel
deleted file mode 160000
index 5c5d8e4c..00000000
--- a/fsw/components/generic_reaction_wheel
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 5c5d8e4ce5620fc35bd4e734ddf4ca456a7f4550
diff --git a/fsw/components/hwlib b/fsw/components/hwlib
deleted file mode 160000
index e827eb5c..00000000
--- a/fsw/components/hwlib
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit e827eb5c43bf2662d7c2ff96060e8362bc1fa014
diff --git a/fsw/components/novatel_oem615 b/fsw/components/novatel_oem615
deleted file mode 160000
index dd668880..00000000
--- a/fsw/components/novatel_oem615
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit dd6688800ccab96482414a5486b49d4123ec82cf
diff --git a/fsw/components/sample b/fsw/components/sample
deleted file mode 160000
index 2679328b..00000000
--- a/fsw/components/sample
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 2679328badf9cbd21ebf4a4f7f6eaeda87de4910
diff --git a/fsw/nos3_defs/arch_build_custom.cmake b/fsw/nos3_defs/arch_build_custom.cmake
new file mode 100644
index 00000000..f74607a4
--- /dev/null
+++ b/fsw/nos3_defs/arch_build_custom.cmake
@@ -0,0 +1,63 @@
+#
+# Example arch_build_custom.cmake
+# -------------------------------
+#
+# This file will be automatically included in the arch-specific build scope
+#
+# Definitions and options specified here will be used when cross-compiling
+# _all_ FSW code for _all_ targets defined in targets.cmake.
+#
+# Avoid machine-specific code generation options in this file (e.g. -f,-m options); such
+# options should be localized to the toolchain file such that they will only be
+# included on the machines where they apply.
+#
+# CAUTION: In heterogeneous environments where different cross compilers are
+# used for different CPUs, particularly if from different vendors, it is likely
+# that compile options will need to be different as well.
+#
+# In general, options in this file can only be used in cases where all CPUs use a
+# compiler from the same vendor and/or are all GCC based such that they accept similar
+# command line options.
+#
+# This file can alternatively be named as "arch_build_custom_${TARGETSYSTEM}.cmake"
+# where ${TARGETSYSTEM} represents the system type, matching the toolchain.
+#
+# These example options assume a GCC-style toolchain is used for cross compilation,
+# and uses the same warning options that are applied at the mission level.
+#
+add_compile_options(
+ #-std=c99 # Target the C99 standard (without gcc extensions)
+ #-pedantic # Issue all the warnings demanded by strict ISO C
+ #-Wall # Warn about most questionable operations
+ #-Wstrict-prototypes # Warn about missing prototypes
+ #-Wwrite-strings # Warn if not treating string literals as "const"
+ #-Wpointer-arith # Warn about suspicious pointer operations
+ #-Wcast-align # Warn about casts that increase alignment requirements
+ #-Werror # Treat warnings as errors (code should be clean)
+ -Wno-address-of-packed-member
+)
+
+
+if (CFE_SYSTEM_PSPNAME STREQUAL "nos-linux")
+ # 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_})
+
+ # ITC Logger required for NOS Engine
+ set(CXX_11 ON)
+ find_package(NOSENGINE REQUIRED COMPONENTS client uart i2c spi can)
+ SET(OSAL_LINK_LIBS ${NOSENGINE_LIBRARIES} noslink)
+ message(STATUS "Set NOS Engine Libraries")
+endif()
+
+
+
diff --git a/fsw/nos3_defs/cfe_es_startup.scr b/fsw/nos3_defs/cpu1_cfe_es_startup.scr
similarity index 78%
rename from fsw/nos3_defs/cfe_es_startup.scr
rename to fsw/nos3_defs/cpu1_cfe_es_startup.scr
index 6c4487d5..6f30c7b6 100644
--- a/fsw/nos3_defs/cfe_es_startup.scr
+++ b/fsw/nos3_defs/cpu1_cfe_es_startup.scr
@@ -1,32 +1,31 @@
CFE_LIB, /cf/cfs_lib.so, CFS_LibInit, CFS_LIB, 0, 0, 0x0, 0;
+CFE_LIB, /cf/hwlib.so, hwlib_Init, HW_LIB, 0, 0, 0x0, 0;
+CFE_LIB, /cf/io_lib.so, IO_LibInit, IO_LIB, 0, 0, 0x0, 0;
+
CFE_APP, /cf/sch.so, SCH_AppMain, SCH, 40, 8192, 0x0, 0;
-CFE_APP, /cf/hk.so, HK_AppMain, HK, 63, 16384, 0x0, 0;
+CFE_APP, /cf/ci_lab.so, CI_Lab_AppMain, CI_LAB, 50, 8192, 0x0, 0;
+CFE_APP, /cf/to_lab.so, TO_Lab_AppMain, TO_LAB, 50, 8192, 0x0, 0;
-CFE_LIB, /cf/io_lib.so, IO_LibInit, IO_LIB, 0, 0, 0x0, 0;
-CFE_APP, /cf/ci.so, CI_AppMain, CI, 52, 16384, 0x0, 0;
-CFE_APP, /cf/to.so, TO_AppMain, TO, 53, 16384, 0x0, 0;
+CFE_APP, /cf/ci.so, CI_AppMain, CI, 50, 16384, 0x0, 0;
+CFE_APP, /cf/to.so, TO_AppMain, TO, 50, 16384, 0x0, 0;
-CFE_APP, /cf/cs.so, CS_AppMain, CS, 55, 16384, 0x0, 0;
+CFE_APP, /cf/cf.so, CF_AppMain, CF, 54, 16384, 0x0, 0;
CFE_APP, /cf/ds.so, DS_AppMain, DS, 58, 16384, 0x0, 0;
CFE_APP, /cf/fm.so, FM_AppMain, FM, 59, 16384, 0x0, 0;
-CFE_APP, /cf/lc.so, LC_AppMain, LC, 57, 16384, 0x0, 0;
-CFE_APP, /cf/sc.so, SC_AppMain, SC, 62, 16384, 0x0, 0;
+CFE_APP, /cf/lc.so, LC_AppMain, LC, 50, 16384, 0x0, 0;
+CFE_APP, /cf/sc.so, SC_AppMain, SC, 50, 16384, 0x0, 0;
-CFE_LIB, /cf/hwlib.so, hwlib_Init, HW_LIB, 0, 0, 0x0, 0;
-
-CFE_APP, /cf/sample.so, SAMPLE_AppMain, SAMPLE, 69, 8192, 0x0, 0;
-CFE_APP, /cf/arducam.so, arducam_AppMain, CAM, 70, 8192, 0x0, 0;
-CFE_APP, /cf/clyde_eps.so, clyde_eps_AppMain, EPS, 71, 8192, 0x0, 0;
+CFE_APP, /cf/arducam.so, arducam_AppMain, CAM, 50, 8192, 0x0, 0;
+CFE_APP, /cf/generic_rw.so, GENERIC_RW_AppMain, RW, 73, 8192, 0x0, 0;
CFE_APP, /cf/novatel_oem615.so, novatel_oem615_AppMain, NAV, 72, 8192, 0x0, 0;
-CFE_APP, /cf/generic_reaction_wheel.so, GENERIC_RW_AppMain, RW, 73, 8192, 0x0, 0;
+CFE_APP, /cf/sample.so, SAMPLE_AppMain, SAMPLE, 50, 8192, 0x0, 0;
!
! ** The software will not try to parse anything after the first '!' character it sees. **
!
-!
-! CFE_APP, /cf/sample.so, sample_AppMain, SAMPLE, 50, 8192, 0x0, 0;
-!
-! CFE_APP, /cf/cf.so, CF_AppMain, CF, 54, 16384, 0x0, 0;
+! CFE_APP, /cf/clyde_eps.so, clyde_eps_AppMain, EPS, 71, 8192, 0x0, 0;
+! CFE_APP, /cf/cs.so, CS_AppMain, CS, 55, 16384, 0x0, 0;
+! CFE_APP, /cf/hk.so, HK_AppMain, HK, 63, 16384, 0x0, 0;
! CFE_APP, /cf/hs.so, HS_AppMain, HS, 56, 16384, 0x0, 0;
! CFE_APP, /cf/sbn.so, SBN_AppMain, SBN, 63, 16384, 0x0, 0;
! CFE_APP, /cf/md.so, MD_AppMain, MD, 60, 16384, 0x0, 0;
@@ -60,4 +59,3 @@ CFE_APP, /cf/generic_reaction_wheel.so, GENERIC_RW_AppMain, RW,
! vxWorks = .o ( ci.o )
! RTEMS with S-record Loader = .s3r ( ci.s3r )
! RTEMS with CEXP Loader = .o ( ci.o )
-
diff --git a/fsw/nos3_defs/cpu1_device_cfg.h b/fsw/nos3_defs/cpu1_device_cfg.h
index 743275d3..10ed5927 100644
--- a/fsw/nos3_defs/cpu1_device_cfg.h
+++ b/fsw/nos3_defs/cpu1_device_cfg.h
@@ -18,27 +18,15 @@
** limitations under the License.
*/
-/******************************************************************************
-** File: cfe_msgids.h
-**
-** Purpose:
-** This header file contains the Message Id's for messages used by the
-** cFE core.
-**
-** Author: R.McGraw/SSI
-**
-** Notes:
-** This file should not contain messages defined by cFE external
-** applications.
-**
-******************************************************************************/
-#ifndef _device_cfg_
-#define _device_cfg_
-
/*
-** Includes
+** CPU1 - NOS3
*/
+#ifndef _cpu1_device_cfg_
+#define _cpu1_device_cfg_
+
+/* Note: NOS3 uart requires matching handle and bus number */
+
#define EPS_DEVICE_STRING "spi_0" /**< \brief EPS device file */
-#endif
+#endif /* _cpu1_device_cfg_ */
diff --git a/fsw/nos3_defs/cpu1_msgids.h b/fsw/nos3_defs/cpu1_msgids.h
index 9a2c6c4f..be965ca1 100644
--- a/fsw/nos3_defs/cpu1_msgids.h
+++ b/fsw/nos3_defs/cpu1_msgids.h
@@ -58,6 +58,8 @@
#define CFE_TBL_SEND_HK_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TBL_SEND_HK_MSG /* 0x180C */
#define CFE_TIME_SEND_HK_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TIME_SEND_HK_MSG /* 0x180D */
+#define CFE_SB_SUB_RPT_CTRL_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_SB_SUB_RPT_CTRL_MSG /* 0x180E */
+
#define CFE_TIME_TONE_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TIME_TONE_CMD_MSG /* 0x1810 */
#define CFE_TIME_1HZ_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TIME_1HZ_CMD_MSG /* 0x1811 */
@@ -86,7 +88,11 @@
#define CFE_TBL_REG_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_TBL_REG_TLM_MSG /* 0x080C */
#define CFE_SB_ALLSUBS_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_SB_ALLSUBS_TLM_MSG /* 0x080D */
#define CFE_SB_ONESUB_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_SB_ONESUB_TLM_MSG /* 0x080E */
-#define CFE_ES_SHELL_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_ES_SHELL_TLM_MSG /* 0x080F */
+
+#ifndef CFE_OMIT_DEPRECATED_6_7
+ #define CFE_ES_SHELL_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_ES_SHELL_TLM_MSG /* 0x080F */
+#endif
+
#define CFE_ES_MEMSTATS_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_ES_MEMSTATS_TLM_MSG /* 0x0810 */
/*
diff --git a/fsw/nos3_defs/cpu1_osconfig.h b/fsw/nos3_defs/cpu1_osconfig.h
deleted file mode 100644
index c7fae00c..00000000
--- a/fsw/nos3_defs/cpu1_osconfig.h
+++ /dev/null
@@ -1,224 +0,0 @@
-/*
-** GSC-18128-1, "Core Flight Executive Version 6.7"
-**
-** Copyright (c) 2006-2019 United States Government as represented by
-** the Administrator of the National Aeronautics and Space Administration.
-** All Rights Reserved.
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-** http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-/******************************************************************************
-** File: osconfig.h
-**
-** Purpose:
-** This header file contains the OS API configuration parameters.
-**
-** Author: A. Cudmore
-**
-** Notes:
-**
-******************************************************************************/
-
-#ifndef _osconfig_
-#define _osconfig_
-
-/*
-** Platform Configuration Parameters for the OS API
-*/
-
-#define OS_MAX_TASKS 64
-#define OS_MAX_QUEUES 64
-#define OS_MAX_COUNT_SEMAPHORES 20
-#define OS_MAX_BIN_SEMAPHORES 20
-#define OS_MAX_MUTEXES 20
-
-/*
-** Maximum length for an absolute path name
-*/
-#define OS_MAX_PATH_LEN 64
-
-/*
-** Maximum length for a local or host path/filename.
-** This parameter can consist of the OSAL filename/path +
-** the host OS physical volume name or path.
-*/
-#define OS_MAX_LOCAL_PATH_LEN (OS_MAX_PATH_LEN + OS_FS_PHYS_NAME_LEN)
-
-/*
-** The maxium length allowed for a object (task,queue....) name
-*/
-#define OS_MAX_API_NAME 20
-
-/*
-** The maximum length for a file name
-*/
-#define OS_MAX_FILE_NAME 20
-
-/*
-** These defines are for OS_printf
-*/
-#define OS_BUFFER_SIZE 172
-#define OS_BUFFER_MSG_DEPTH 100
-
-/* This #define turns on a utility task that
- * will read the statements to print from
- * the OS_printf function. If you want OS_printf
- * to print the text out itself, comment this out
- *
- * NOTE: The Utility Task #defines only have meaning
- * on the VxWorks operating systems
- */
-
-#define OS_UTILITY_TASK_ON
-
-
-#ifdef OS_UTILITY_TASK_ON
- #define OS_UTILITYTASK_STACK_SIZE 2048
- /* some room is left for other lower priority tasks */
- #define OS_UTILITYTASK_PRIORITY 245
-#endif
-
-
-/*
-** the size of a command that can be passed to the underlying OS
-*/
-#define OS_MAX_CMD_LEN 1000
-
-/*
-** This define will include the OS network API.
-** It should be turned off for targtets that do not have a network stack or
-** device ( like the basic RAD750 vxWorks BSP )
-*/
-#define OS_INCLUDE_NETWORK
-
-/*
-** This is the maximum number of open file descriptors allowed at a time
-*/
-#define OS_MAX_NUM_OPEN_FILES 50
-
-/*
-** This defines the filethe input command of OS_ShellOutputToFile
-** is written to in the VxWorks6 port
-*/
-#define OS_SHELL_CMD_INPUT_FILE_NAME "/ram/OS_ShellCmd.in"
-
-/*
-** This define sets the queue implentation of the Linux port to use sockets
-** commenting this out makes the Linux port use the POSIX message queues.
-*/
-/* #define OSAL_SOCKET_QUEUE */
-
-/*
-** Module loader/symbol table is optional
-*/
-#define OS_INCLUDE_MODULE_LOADER
-
-#ifdef OS_INCLUDE_MODULE_LOADER
- /*
- ** This define sets the size of the OS Module Table, which keeps track of the loaded modules in
- ** the running system. This define must be set high enough to support the maximum number of
- ** loadable modules in the system. If the the table is filled up at runtime, a new module load
- ** would fail.
- */
- #define OS_MAX_MODULES 32
-
- /*
- ** The Static Loader define is used for switching between the Dynamic and Static loader implementations.
- */
- /* #define OS_STATIC_LOADER */
-
-#endif
-
-
-/*
-** This define sets the maximum symbol name string length. It is used in implementations that
-** support the symbols and symbol lookup.
-*/
-#define OS_MAX_SYM_LEN 64
-
-
-/*
-** This define sets the maximum number of time base objects
-** The limit depends on the underlying OS and the resources it offers, but in general
-** these are a limited resource and only a handful can be created.
-** This is only used by the "-ng" variants with the timebase implementation
-*/
-#define OS_MAX_TIMEBASES 5
-
-/*
-** This define sets the maximum number of user timers available
-** The limit here depends on whether the OSAL implementation uses limited resources
-** for a timer object; in the case of the newer "posix-ng" and "rtems-ng" variants,
-** the "timebase" allocates the OS resources and the timer does not use any additional
-** OS resources. Therefore this limit can be higher.
-**
-** Keeping this at "5" in case this config file is used with an older OSAL
-*/
-#define OS_MAX_TIMERS 5
-
-/*
-** This define sets the maximum number of open directories
-** Only used by the "-ng" variants that implement a complete filesystem abstraction
-*/
-#define OS_MAX_NUM_OPEN_DIRS 4
-
-
-/*
- * If OS_DEBUG_PRINTF is defined, this will enable the "OS_DEBUG" statements in the code
- * This should be left disabled in a normal build as it may affect real time performance as
- * well as producing extra console output.
- */
-#undef OS_DEBUG_PRINTF
-
-/*
- * If OSAL_EXTRA_DEBUG is defined, this will include extra debug features into the
- * OSAL build. These can help debug issues like not releasing a mutex or other resource
- * leaks, but may slightly affect realtime performance. This should be left undefined in
- * a normal build.
- */
-#undef OSAL_EXTRA_DEBUG
-
-/*
- * If OSAL_DEBUG_PERMISSIVE_MODE is defined, this will enable features to make the
- * OSAL library compatible with a non-root (normal user mode) environment. In the PC-Linux/Posix
- * build, this means:
- * - A message queue deeper than the maximum system limit will be silently truncated
- * to the maximum system limit (no error).
- * - If the user does not have permission to create elevated priority tasks, then the tasks will
- * be created at the default priority (no error). Note this behavior can also be forced by the
- * OSAL_DEBUG_DISABLE_TASK_PRIORITIES macro below.
- *
- * Leaving this undefined will produce the default behavior, which is to return errors to the caller
- * for these conditions.
- */
-#define OSAL_DEBUG_PERMISSIVE_MODE
-
-/*
- * If OSAL_DEBUG_DISABLE_TASK_PRIORITIES is defined, the "priority" argument
- * supplied to the task creation function will be ignored and all tasks will
- * run at the default scheduling priority. This is intended for debugging
- * purposes where a "runaway" thread running with elevated priority can hang
- * the entire system and make debugging difficult.
- */
-#undef OSAL_DEBUG_DISABLE_TASK_PRIORITIES
-
-/*
- * If OSAL_DEBUG_DISABLE_MUTEX_PRIO_INHERIT is defined, this will disable the priority
- * inheritance attribute used on by default on OSAL mutexes. Some buggy pthreads
- * libraries do not properly implement this attribute.
- */
-#undef OSAL_DEBUG_DISABLE_MUTEX_PRIO_INHERIT
-
-
-#endif
diff --git a/fsw/nos3_defs/cpu1_platform_cfg.h b/fsw/nos3_defs/cpu1_platform_cfg.h
index be21bc89..6ed349e1 100644
--- a/fsw/nos3_defs/cpu1_platform_cfg.h
+++ b/fsw/nos3_defs/cpu1_platform_cfg.h
@@ -126,8 +126,8 @@
** Dictates the size of the SB memory pool. For each message the SB
** sends, the SB dynamically allocates from this memory pool, the memory needed
** to process the message. The memory needed to process each message is msg
-** size + msg descriptor(#CFE_SB_BufferD_t). This memory pool is also used
-** to allocate destination descriptors (#CFE_SB_DestinationD_t) during the
+** size + msg descriptor(CFE_SB_BufferD_t). This memory pool is also used
+** to allocate destination descriptors (CFE_SB_DestinationD_t) during the
** subscription process.
** To see the run-time, high-water mark and the current utilization figures
** regarding this parameter, send an SB command to 'Send Statistics Pkt'.
@@ -156,7 +156,7 @@
** be verified. Pipe Depth values that are checked against this configuration
** are defined by a 16 bit data word.
*/
-#define CFE_PLATFORM_SB_MAX_PIPE_DEPTH 256
+#define CFE_PLATFORM_SB_MAX_PIPE_DEPTH 1024
/**
@@ -178,7 +178,12 @@
** The recommended case to to have this value the same across all mission platforms
**
** \par Limits
-** This parameter has a lower limit of 1 and an upper limit of 0xFFFF.
+** This parameter has a lower limit of 1 and an upper limit of 0xFFFF. Note
+** for current implementations, V2/Extended headers assign 0xFFFFFFFF as the invalid
+** message ID value, and default headers assigns 0xFFFF as the invalid value. This
+** means for default headers, 0xFFFF is invalid even if you set the value
+** below to it's maximum of 0xFFFF.
+** The allocated message table is this size + 1 (could change based on implementaiton).
*/
#define CFE_PLATFORM_SB_HIGHEST_VALID_MSGID 0x1FFF
@@ -565,7 +570,7 @@
** in the error log. Any context information beyond this size will
** be truncated.
*/
-#define CFE_PLATFORM_ES_ER_LOG_MAX_CONTEXT_SIZE 128
+#define CFE_PLATFORM_ES_ER_LOG_MAX_CONTEXT_SIZE 256
/**
@@ -788,7 +793,7 @@
** log ER Log and critical reset variables. This is 4 of 4 of the memory areas
** that are preserved during a processor reset.
** Note: This area must be sized large enough to hold all of the data
-** structures. It should be automatically sized based on the #CFE_ES_ResetData_t
+** structures. It should be automatically sized based on the CFE_ES_ResetData_t
** type, but circular dependancies in the headers prevent it from being defined
** this way.
** NOTE: Changing this value changes memory allocation, and may
@@ -1005,22 +1010,40 @@
#define CFE_PLATFORM_ES_DEFAULT_CDS_REG_DUMP_FILE "/ram/cfe_cds_reg.log"
/**
-** \cfeescfg Define Default System Log Mode
+** \cfeescfg Define Default System Log Mode following Power On Reset
**
** \par Description:
-** Defines the default mode for the operation of the ES System log. The log may
-** operate in either Overwrite mode = 0, where once the log becomes full the
-** oldest message in the log will be overwritten, or Discard mode = 1, where
-** once the log becomes full the contents of the log are preserved and the new
-** event is discarded. This constant may hold a value of either 0 or 1
-** depending on the desired default log mode. Overwrite Mode = 0, Discard
-** Mode = 1.
+** Defines the default mode for the operation of the ES System log following a power
+** on reset. The log may operate in either Overwrite mode = 0, where once the
+** log becomes full the oldest message in the log will be overwritten, or
+** Discard mode = 1, where once the log becomes full the contents of the log are
+** preserved and the new event is discarded. This constant may hold a value of
+** either 0 or 1 depending on the desired default.
+** Overwrite Mode = 0, Discard Mode = 1.
**
** \par Limits
** There is a lower limit of 0 and an upper limit of 1 on this configuration
** paramater.
*/
-#define CFE_PLATFORM_ES_DEFAULT_SYSLOG_MODE 1
+#define CFE_PLATFORM_ES_DEFAULT_POR_SYSLOG_MODE 0
+
+/**
+** \cfeescfg Define Default System Log Mode following Processor Reset
+**
+** \par Description:
+** Defines the default mode for the operation of the ES System log following a
+** processor reset. The log may operate in either Overwrite mode = 0, where once
+** the log becomes full the oldest message in the log will be overwritten, or
+** Discard mode = 1, where once the log becomes full the contents of the log are
+** preserved and the new event is discarded. This constant may hold a value of
+** either 0 or 1 depending on the desired default.
+** Overwrite Mode = 0, Discard Mode = 1.
+**
+** \par Limits
+** There is a lower limit of 0 and an upper limit of 1 on this configuration
+** paramater.
+*/
+#define CFE_PLATFORM_ES_DEFAULT_PR_SYSLOG_MODE 1
/**
** \cfeescfg Define Max Number of Performance IDs
@@ -1187,52 +1210,6 @@
*/
#define CFE_PLATFORM_ES_DEFAULT_STACK_SIZE 8192
-/**
-** \cfeescfg Define cFE Core Exception Function
-**
-** \par Description:
-** This parameter defines the function-to-call when a CPU or floating point exception
-** occurs. The parameter is defaulted to call the ES API function #CFE_ES_ProcessCoreException
-** which handles the logging and reset from a system or cFE core exception.
-**
-** Note: Exception interrupts are trapped at the Platform Support Package (PSP)
-** layer. In order to initiate the cFE platform defined response to an exception, this
-** platform defined callback function must be prototyped and called from the PSP
-** exception hook API function #CFE_PSP_ExceptionHook. For example:
-**
-** -- cfe_psp.h --
-**
-** .... Prototype for exception ISR function implemented in CFE ....
-**
-** typedef void (*System_ExceptionFunc_t)(uint32 HostTaskId,
-** const char *ReasonString,
-** const uint32 *ContextPointer,
-** uint32 ContextSize);
-**
-** -- cfe_pspexception.c --
-**
-** .... Setup function pointer to CFE exception ISR callback ....
-**
-** static const System_ExceptionFunc_t CFE_ExceptionCallback = CFE_PLATFORM_ES_EXCEPTION_FUNCTION;
-**
-** void CFE_PSP_ExceptionHook (int task_id, int vector, uint8 *pEsf )
-** {
-** .... platform-specific logic ....
-**
-** .... Use function pointer to call cFE routine to finish processing the exception ....
-**
-** CFE_ExceptionCallback((uint32)task_id,
-** CFE_PSP_ExceptionReasonString,
-** (uint32 *)&CFE_PSP_ExceptionContext,
-** sizeof(CFE_PSP_ExceptionContext_t));
-**
-** }
-**
-** \par Limits
-** Must be a valid function name.
-*/
-#define CFE_PLATFORM_ES_EXCEPTION_FUNCTION CFE_ES_ProcessCoreException
-
/**
** \cfeescfg Define EVS Task Priority
**
@@ -1997,7 +1974,7 @@
#define CFE_ES_DEFAULT_ER_LOG_FILE CFE_PLATFORM_ES_DEFAULT_ER_LOG_FILE
#define CFE_ES_DEFAULT_PERF_DUMP_FILENAME CFE_PLATFORM_ES_DEFAULT_PERF_DUMP_FILENAME
#define CFE_ES_DEFAULT_CDS_REG_DUMP_FILE CFE_PLATFORM_ES_DEFAULT_CDS_REG_DUMP_FILE
-#define CFE_ES_DEFAULT_SYSLOG_MODE CFE_PLATFORM_ES_DEFAULT_SYSLOG_MODE
+#define CFE_ES_DEFAULT_SYSLOG_MODE CFE_PLATFORM_ES_DEFAULT_PR_SYSLOG_MODE
#define CFE_ES_PERF_MAX_IDS CFE_PLATFORM_ES_PERF_MAX_IDS
#define CFE_ES_PERF_DATA_BUFFER_SIZE CFE_PLATFORM_ES_PERF_DATA_BUFFER_SIZE
#define CFE_ES_PERF_FILTMASK_NONE CFE_PLATFORM_ES_PERF_FILTMASK_NONE
diff --git a/fsw/nos3_defs/cpu2_device_cfg.h b/fsw/nos3_defs/cpu2_device_cfg.h
deleted file mode 100644
index 743275d3..00000000
--- a/fsw/nos3_defs/cpu2_device_cfg.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-** GSC-18128-1, "Core Flight Executive Version 6.7"
-**
-** Copyright (c) 2006-2019 United States Government as represented by
-** the Administrator of the National Aeronautics and Space Administration.
-** All Rights Reserved.
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-** http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-/******************************************************************************
-** File: cfe_msgids.h
-**
-** Purpose:
-** This header file contains the Message Id's for messages used by the
-** cFE core.
-**
-** Author: R.McGraw/SSI
-**
-** Notes:
-** This file should not contain messages defined by cFE external
-** applications.
-**
-******************************************************************************/
-#ifndef _device_cfg_
-#define _device_cfg_
-
-/*
-** Includes
-*/
-
-#define EPS_DEVICE_STRING "spi_0" /**< \brief EPS device file */
-
-#endif
diff --git a/fsw/nos3_defs/cpu2_msgids.h b/fsw/nos3_defs/cpu2_msgids.h
deleted file mode 100644
index 9a2c6c4f..00000000
--- a/fsw/nos3_defs/cpu2_msgids.h
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
-** GSC-18128-1, "Core Flight Executive Version 6.7"
-**
-** Copyright (c) 2006-2019 United States Government as represented by
-** the Administrator of the National Aeronautics and Space Administration.
-** All Rights Reserved.
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-** http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-/******************************************************************************
-** File: cfe_msgids.h
-**
-** Purpose:
-** This header file contains the Message Id's for messages used by the
-** cFE core.
-**
-** Author: R.McGraw/SSI
-**
-** Notes:
-** This file should not contain messages defined by cFE external
-** applications.
-**
-******************************************************************************/
-#ifndef _cfe_msgids_
-#define _cfe_msgids_
-
-/*
-** Includes
-*/
-
-#include "cfe_mission_cfg.h"
-
-/*
-** cFE Command Message Id's
-*/
-#define CFE_EVS_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_EVS_CMD_MSG /* 0x1801 */
- /* Message ID 0x1802 is available */
-#define CFE_SB_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_SB_CMD_MSG /* 0x1803 */
-#define CFE_TBL_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TBL_CMD_MSG /* 0x1804 */
-#define CFE_TIME_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TIME_CMD_MSG /* 0x1805 */
-#define CFE_ES_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_ES_CMD_MSG /* 0x1806 */
-
-#define CFE_ES_SEND_HK_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_ES_SEND_HK_MSG /* 0x1808 */
-#define CFE_EVS_SEND_HK_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_EVS_SEND_HK_MSG /* 0x1809 */
- /* Message ID 0x180A is available */
-#define CFE_SB_SEND_HK_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_SB_SEND_HK_MSG /* 0x180B */
-#define CFE_TBL_SEND_HK_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TBL_SEND_HK_MSG /* 0x180C */
-#define CFE_TIME_SEND_HK_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TIME_SEND_HK_MSG /* 0x180D */
-
-#define CFE_TIME_TONE_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TIME_TONE_CMD_MSG /* 0x1810 */
-#define CFE_TIME_1HZ_CMD_MID CFE_MISSION_CMD_MID_BASE1 + CFE_MISSION_TIME_1HZ_CMD_MSG /* 0x1811 */
-
-
-/*
-** cFE Global Command Message Id's
-*/
-#define CFE_TIME_DATA_CMD_MID CFE_MISSION_CMD_MID_BASE_GLOB + CFE_MISSION_TIME_DATA_CMD_MSG /* 0x1860 */
-#define CFE_TIME_SEND_CMD_MID CFE_MISSION_CMD_MID_BASE_GLOB + CFE_MISSION_TIME_SEND_CMD_MSG /* 0x1862 */
-
-
-/*
-** CFE Telemetry Message Id's
-*/
-#define CFE_ES_HK_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_ES_HK_TLM_MSG /* 0x0800 */
-#define CFE_EVS_HK_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_EVS_HK_TLM_MSG /* 0x0801 */
- /* Message ID 0x0802 is available */
-#define CFE_SB_HK_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_SB_HK_TLM_MSG /* 0x0803 */
-#define CFE_TBL_HK_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_TBL_HK_TLM_MSG /* 0x0804 */
-#define CFE_TIME_HK_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_TIME_HK_TLM_MSG /* 0x0805 */
-#define CFE_TIME_DIAG_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_TIME_DIAG_TLM_MSG /* 0x0806 */
-#define CFE_EVS_LONG_EVENT_MSG_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_EVS_LONG_EVENT_MSG_MSG /* 0x0808 */
-#define CFE_EVS_SHORT_EVENT_MSG_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_EVS_SHORT_EVENT_MSG_MSG /* 0x0809 */
-#define CFE_SB_STATS_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_SB_STATS_TLM_MSG /* 0x080A */
-#define CFE_ES_APP_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_ES_APP_TLM_MSG /* 0x080B */
-#define CFE_TBL_REG_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_TBL_REG_TLM_MSG /* 0x080C */
-#define CFE_SB_ALLSUBS_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_SB_ALLSUBS_TLM_MSG /* 0x080D */
-#define CFE_SB_ONESUB_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_SB_ONESUB_TLM_MSG /* 0x080E */
-#define CFE_ES_SHELL_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_ES_SHELL_TLM_MSG /* 0x080F */
-#define CFE_ES_MEMSTATS_TLM_MID CFE_MISSION_TLM_MID_BASE1 + CFE_MISSION_ES_MEMSTATS_TLM_MSG /* 0x0810 */
-
-/*
- * MID definitions by these older names are required to make some existing apps compile
- * These are deprecated and should be removed after CFE 6.6
- */
-#ifndef CFE_OMIT_DEPRECATED_6_6
-
-#define CFE_EVS_EVENT_MSG_MID CFE_EVS_LONG_EVENT_MSG_MID
-
-#endif
-
-#endif
diff --git a/fsw/nos3_defs/cpu2_osconfig.h b/fsw/nos3_defs/cpu2_osconfig.h
deleted file mode 100644
index 3d5bbe6f..00000000
--- a/fsw/nos3_defs/cpu2_osconfig.h
+++ /dev/null
@@ -1,224 +0,0 @@
-/*
-** GSC-18128-1, "Core Flight Executive Version 6.7"
-**
-** Copyright (c) 2006-2019 United States Government as represented by
-** the Administrator of the National Aeronautics and Space Administration.
-** All Rights Reserved.
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-** http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-/******************************************************************************
-** File: osconfig.h
-**
-** Purpose:
-** This header file contains the OS API configuration parameters.
-**
-** Author: A. Cudmore
-**
-** Notes:
-**
-******************************************************************************/
-
-#ifndef _osconfig_
-#define _osconfig_
-
-/*
-** Platform Configuration Parameters for the OS API
-*/
-
-#define OS_MAX_TASKS 64
-#define OS_MAX_QUEUES 64
-#define OS_MAX_COUNT_SEMAPHORES 20
-#define OS_MAX_BIN_SEMAPHORES 20
-#define OS_MAX_MUTEXES 20
-
-/*
-** Maximum length for an absolute path name
-*/
-#define OS_MAX_PATH_LEN 64
-
-/*
-** Maximum length for a local or host path/filename.
-** This parameter can consist of the OSAL filename/path +
-** the host OS physical volume name or path.
-*/
-#define OS_MAX_LOCAL_PATH_LEN (OS_MAX_PATH_LEN + OS_FS_PHYS_NAME_LEN)
-
-/*
-** The maxium length allowed for a object (task,queue....) name
-*/
-#define OS_MAX_API_NAME 20
-
-/*
-** The maximum length for a file name
-*/
-#define OS_MAX_FILE_NAME 20
-
-/*
-** These defines are for OS_printf
-*/
-#define OS_BUFFER_SIZE 172
-#define OS_BUFFER_MSG_DEPTH 100
-
-/* This #define turns on a utility task that
- * will read the statements to print from
- * the OS_printf function. If you want OS_printf
- * to print the text out itself, comment this out
- *
- * NOTE: The Utility Task #defines only have meaning
- * on the VxWorks operating systems
- */
-
-#define OS_UTILITY_TASK_ON
-
-
-#ifdef OS_UTILITY_TASK_ON
- #define OS_UTILITYTASK_STACK_SIZE 2048
- /* some room is left for other lower priority tasks */
- #define OS_UTILITYTASK_PRIORITY 245
-#endif
-
-
-/*
-** the size of a command that can be passed to the underlying OS
-*/
-#define OS_MAX_CMD_LEN 1000
-
-/*
-** This define will include the OS network API.
-** It should be turned off for targtets that do not have a network stack or
-** device ( like the basic RAD750 vxWorks BSP )
-*/
-#define OS_INCLUDE_NETWORK
-
-/*
-** This is the maximum number of open file descriptors allowed at a time
-*/
-#define OS_MAX_NUM_OPEN_FILES 50
-
-/*
-** This defines the filethe input command of OS_ShellOutputToFile
-** is written to in the VxWorks6 port
-*/
-#define OS_SHELL_CMD_INPUT_FILE_NAME "/ram/OS_ShellCmd.in"
-
-/*
-** This define sets the queue implentation of the Linux port to use sockets
-** commenting this out makes the Linux port use the POSIX message queues.
-*/
-/* #define OSAL_SOCKET_QUEUE */
-
-/*
-** Module loader/symbol table is optional
-*/
-#define OS_INCLUDE_MODULE_LOADER
-
-#ifdef OS_INCLUDE_MODULE_LOADER
- /*
- ** This define sets the size of the OS Module Table, which keeps track of the loaded modules in
- ** the running system. This define must be set high enough to support the maximum number of
- ** loadable modules in the system. If the the table is filled up at runtime, a new module load
- ** would fail.
- */
- #define OS_MAX_MODULES 32
-
- /*
- ** The Static Loader define is used for switching between the Dynamic and Static loader implementations.
- */
- /* #define OS_STATIC_LOADER */
-
-#endif
-
-
-/*
-** This define sets the maximum symbol name string length. It is used in implementations that
-** support the symbols and symbol lookup.
-*/
-#define OS_MAX_SYM_LEN 64
-
-
-/*
-** This define sets the maximum number of time base objects
-** The limit depends on the underlying OS and the resources it offers, but in general
-** these are a limited resource and only a handful can be created.
-** This is only used by the "-ng" variants with the timebase implementation
-*/
-#define OS_MAX_TIMEBASES 5
-
-/*
-** This define sets the maximum number of user timers available
-** The limit here depends on whether the OSAL implementation uses limited resources
-** for a timer object; in the case of the newer "posix-ng" and "rtems-ng" variants,
-** the "timebase" allocates the OS resources and the timer does not use any additional
-** OS resources. Therefore this limit can be higher.
-**
-** Keeping this at "5" in case this config file is used with an older OSAL
-*/
-#define OS_MAX_TIMERS 5
-
-/*
-** This define sets the maximum number of open directories
-** Only used by the "-ng" variants that implement a complete filesystem abstraction
-*/
-#define OS_MAX_NUM_OPEN_DIRS 4
-
-
-/*
- * If OS_DEBUG_PRINTF is defined, this will enable the "OS_DEBUG" statements in the code
- * This should be left disabled in a normal build as it may affect real time performance as
- * well as producing extra console output.
- */
-#undef OS_DEBUG_PRINTF
-
-/*
- * If OSAL_EXTRA_DEBUG is defined, this will include extra debug features into the
- * OSAL build. These can help debug issues like not releasing a mutex or other resource
- * leaks, but may slightly affect realtime performance. This should be left undefined in
- * a normal build.
- */
-#undef OSAL_EXTRA_DEBUG
-
-/*
- * If OSAL_DEBUG_PERMISSIVE_MODE is defined, this will enable features to make the
- * OSAL library compatible with a non-root (normal user mode) environment. In the PC-Linux/Posix
- * build, this means:
- * - A message queue deeper than the maximum system limit will be silently truncated
- * to the maximum system limit (no error).
- * - If the user does not have permission to create elevated priority tasks, then the tasks will
- * be created at the default priority (no error). Note this behavior can also be forced by the
- * OSAL_DEBUG_DISABLE_TASK_PRIORITIES macro below.
- *
- * Leaving this undefined will produce the default behavior, which is to return errors to the caller
- * for these conditions.
- */
-#undef OSAL_DEBUG_PERMISSIVE_MODE
-
-/*
- * If OSAL_DEBUG_DISABLE_TASK_PRIORITIES is defined, the "priority" argument
- * supplied to the task creation function will be ignored and all tasks will
- * run at the default scheduling priority. This is intended for debugging
- * purposes where a "runaway" thread running with elevated priority can hang
- * the entire system and make debugging difficult.
- */
-#undef OSAL_DEBUG_DISABLE_TASK_PRIORITIES
-
-/*
- * If OSAL_DEBUG_DISABLE_MUTEX_PRIO_INHERIT is defined, this will disable the priority
- * inheritance attribute used on by default on OSAL mutexes. Some buggy pthreads
- * libraries do not properly implement this attribute.
- */
-#undef OSAL_DEBUG_DISABLE_MUTEX_PRIO_INHERIT
-
-
-#endif
diff --git a/fsw/nos3_defs/cpu2_platform_cfg.h b/fsw/nos3_defs/cpu2_platform_cfg.h
deleted file mode 100644
index be21bc89..00000000
--- a/fsw/nos3_defs/cpu2_platform_cfg.h
+++ /dev/null
@@ -1,2106 +0,0 @@
-/*
-** GSC-18128-1, "Core Flight Executive Version 6.7"
-**
-** Copyright (c) 2006-2019 United States Government as represented by
-** the Administrator of the National Aeronautics and Space Administration.
-** All Rights Reserved.
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-** http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
-
-/******************************************************************************
-** File: cfe_platform_cfg.h
-**
-** Purpose:
-** This header file contains the platform configuration parameters.
-**
-** Notes:
-** The impact of changing these configurations from their default value is
-** not yet documented. Changing these values may impact the performance
-** and functionality of the system.
-**
-** Author: R.McGraw/SSI
-**
-******************************************************************************/
-
-#ifndef _cfe_platform_cfg_
-#define _cfe_platform_cfg_
-
-/*
-** Allow reference to CFE_MISSION_SPACECRAFT_ID (see CFE_TBL_VALID_ definitions below)
-*/
-#include "cfe_mission_cfg.h"
-
-/*
-** CPU Id for target Processor
-*/
-#define CFE_PLATFORM_CPU_ID 1
-
-/*
-** CPU Name for target Processor
-*/
-#define CFE_PLATFORM_CPU_NAME "CPU1"
-
-/**
-** \cfesbcfg Maximum Number of Unique Message IDs SB Routing Table can hold
-**
-** \par Description:
-** Dictates the maximum number of unique MsgIds the SB routing table will hold.
-** This constant has a direct affect on the size of SB's tables and arrays.
-** Keeping this count as low as possible will save memory.
-** To see the run-time, high-water mark and the current utilization figures
-** regarding this parameter, send an SB command to 'Send Statistics Pkt'.
-**
-** \par Limits
-** This parameter has a lower limit of 1 and an upper limit of 1024.
-**
-*/
-#define CFE_PLATFORM_SB_MAX_MSG_IDS 256
-
-
-/**
-** \cfesbcfg Maximum Number of Unique Pipes SB Routing Table can hold
-**
-** \par Description:
-** Dictates the maximum number of unique Pipes the SB routing table will hold.
-** This constant has a direct affect on the size of SB's tables and arrays.
-** Keeping this count as low as possible will save memory.
-** To see the run-time, high-water mark and the current utilization figures
-** regarding this parameter, send an SB command to 'Send Statistics Pkt'.
-**
-** \par Limits
-** This parameter has a lower limit of 1. This parameter must also be less than
-** or equal to OS_MAX_QUEUES.
-**
-*/
-#define CFE_PLATFORM_SB_MAX_PIPES 64
-
-
-/**
-** \cfesbcfg Maximum Number of unique local destinations a single MsgId can have
-**
-** \par Description:
-** Dictates the maximum number of unique local destinations a single MsgId can
-** have.
-**
-** \par Limits
-** This parameter has a lower limit of 1. There are no restrictions on the upper
-** limit however, the maximum number of destinations per packet is system dependent
-** and should be verified. Destination number values that are checked against this
-** configuration are defined by a 16 bit data word.
-**
-*/
-#define CFE_PLATFORM_SB_MAX_DEST_PER_PKT 16
-
-
-/**
-** \cfesbcfg Default Subscription Message Limit
-**
-** \par Description:
-** Dictates the default Message Limit when using the #CFE_SB_Subscribe API. This will
-** limit the number of messages with a specific message ID that can be received through
-** a subscription. This only changes the default; other message limits can be set on a per
-** subscription basis using #CFE_SB_SubscribeEx .
-**
-** \par Limits
-** This parameter has a lower limit of 4 and an upper limit of 65535.
-**
-*/
-#define CFE_PLATFORM_SB_DEFAULT_MSG_LIMIT 4
-
-
-/**
-** \cfesbcfg Size of the SB buffer memory pool
-**
-** \par Description:
-** Dictates the size of the SB memory pool. For each message the SB
-** sends, the SB dynamically allocates from this memory pool, the memory needed
-** to process the message. The memory needed to process each message is msg
-** size + msg descriptor(#CFE_SB_BufferD_t). This memory pool is also used
-** to allocate destination descriptors (#CFE_SB_DestinationD_t) during the
-** subscription process.
-** To see the run-time, high-water mark and the current utilization figures
-** regarding this parameter, send an SB command to 'Send Statistics Pkt'.
-** Some memory statistics have been added to the SB housekeeping packet.
-** NOTE: It is important to monitor these statistics to ensure the desired
-** memory margin is met.
-**
-** \par Limits
-** This parameter has a lower limit of 512 and an upper limit of UINT_MAX (4 Gigabytes).
-**
-*/
-#define CFE_PLATFORM_SB_BUF_MEMORY_BYTES 524288
-
-
-/**
-** \cfesbcfg Maximum depth allowed when creating an SB pipe
-**
-** \par Description:
-** The value of this constant dictates the maximum pipe depth that an
-** application may request. The pipe depth is given as a paramter in the
-** #CFE_SB_CreatePipe API.
-**
-** \par Limits
-** This parameter has a lower limit of 1. There are no restrictions on the
-** upper limit however, the maximum pipe depth is system dependent and should
-** be verified. Pipe Depth values that are checked against this configuration
-** are defined by a 16 bit data word.
-*/
-#define CFE_PLATFORM_SB_MAX_PIPE_DEPTH 256
-
-
-/**
-** \cfesbcfg Highest Valid Message Id
-**
-** \par Description:
-** The value of this constant dictates the size of the SB message map. The SB
-** message map is a lookup table that provides the routing table index for
-** fast access into the routing table. The default setting of 0x1FFF was chosen
-** to save memory. This reduces the message map from 128Kbytes to 16Kbytes.
-** See CFE_FSW_DCR 504 for more details.
-**
-** If this value is different in a distributed architecture some platforms may not
-** be able to subscribe to messages generated on other platforms since the message id
-** would exceed the mapping table's highest index. Care would have to be taken to ensure the
-** constrained platform did not subscribe to message Ids that exceed
-** CFE_PLATFORM_SB_HIGHEST_VALID_MSGID
-**
-** The recommended case to to have this value the same across all mission platforms
-**
-** \par Limits
-** This parameter has a lower limit of 1 and an upper limit of 0xFFFF.
-*/
-#define CFE_PLATFORM_SB_HIGHEST_VALID_MSGID 0x1FFF
-
-/**
-** \cfesbcfg Platform Endian Indicator
-**
-** \par Description:
-** The value of this constant indicates the endianess of the target system
-**
-** \par Limits
-** This parameter has a lower limit of 0 and an upper limit of 1.
-*/
-#define CFE_PLATFORM_ENDIAN CCSDS_LITTLE_ENDIAN
-
-/**
-** \cfesbcfg Default Routing Information Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the software
-** bus routing information. This filename is used only when no filename is
-** specified in the command.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_SB_DEFAULT_ROUTING_FILENAME "/ram/cfe_sb_route.dat"
-
-
-/**
-** \cfesbcfg Default Pipe Information Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the software
-** bus pipe information. This filename is used only when no filename is
-** specified in the command.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_SB_DEFAULT_PIPE_FILENAME "/ram/cfe_sb_pipe.dat"
-
-
-/**
-** \cfesbcfg Default Message Map Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the software
-** bus message map information. This filename is used only when no filename is
-** specified in the command. The message map is a lookup table (array of 16bit
-** words) that has an element for each possible MsgId value and holds the
-** routing table index for that MsgId. The Msg Map provides fast access to the
-** destinations of a message.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_SB_DEFAULT_MAP_FILENAME "/ram/cfe_sb_msgmap.dat"
-
-
-/**
-** \cfesbcfg SB Event Filtering
-**
-** \par Description:
-** This group of configuration paramters dictates what SB events will be
-** filtered through EVS. The filtering will begin after the SB task initializes
-** and stay in effect until a cmd to EVS changes it.
-** This allows the operator to set limits on the number of event messages that
-** are sent during system initialization.
-** NOTE: Set all unused event values and mask values to zero
-**
-** \par Limits
-** This filtering applies only to SB events.
-** These parameters have a lower limit of 0 and an upper limit of 65535.
-*/
-#define CFE_PLATFORM_SB_FILTERED_EVENT1 CFE_SB_SEND_NO_SUBS_EID
-#define CFE_PLATFORM_SB_FILTER_MASK1 CFE_EVS_FIRST_4_STOP
-
-#define CFE_PLATFORM_SB_FILTERED_EVENT2 CFE_SB_DUP_SUBSCRIP_EID
-#define CFE_PLATFORM_SB_FILTER_MASK2 CFE_EVS_FIRST_4_STOP
-
-#define CFE_PLATFORM_SB_FILTERED_EVENT3 CFE_SB_MSGID_LIM_ERR_EID
-#define CFE_PLATFORM_SB_FILTER_MASK3 CFE_EVS_FIRST_16_STOP
-
-#define CFE_PLATFORM_SB_FILTERED_EVENT4 CFE_SB_Q_FULL_ERR_EID
-#define CFE_PLATFORM_SB_FILTER_MASK4 CFE_EVS_FIRST_16_STOP
-
-#define CFE_PLATFORM_SB_FILTERED_EVENT5 0
-#define CFE_PLATFORM_SB_FILTER_MASK5 CFE_EVS_NO_FILTER
-
-#define CFE_PLATFORM_SB_FILTERED_EVENT6 0
-#define CFE_PLATFORM_SB_FILTER_MASK6 CFE_EVS_NO_FILTER
-
-#define CFE_PLATFORM_SB_FILTERED_EVENT7 0
-#define CFE_PLATFORM_SB_FILTER_MASK7 CFE_EVS_NO_FILTER
-
-#define CFE_PLATFORM_SB_FILTERED_EVENT8 0
-#define CFE_PLATFORM_SB_FILTER_MASK8 CFE_EVS_NO_FILTER
-
-
-/**
-** \cfeescfg Define SB Memory Pool Block Sizes
-**
-** \par Description:
-** Software Bus Memory Pool Block Sizes
-**
-** \par Limits
-** These sizes MUST be increasing and MUST be an integral multiple of 4.
-** The number of block sizes defined cannot exceed
-** #CFE_ES_MAX_MEMPOOL_BLOCK_SIZES
-*/
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_01 8
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_02 16
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_03 20
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_04 36
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_05 64
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_06 96
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_07 128
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_08 160
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_09 256
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_10 512
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_11 1024
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_12 2048
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_13 4096
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_14 8192
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_15 16384
-#define CFE_PLATFORM_SB_MEM_BLOCK_SIZE_16 32768
-#define CFE_PLATFORM_SB_MAX_BLOCK_SIZE (CFE_MISSION_SB_MAX_SB_MSG_SIZE + 40)
-
-/**
-** \cfesbcfg Define Default Sender Information Storage Mode
-**
-** \par Description:
-** Defines the default mode for the storing of sender information when sending
-** a software bus message. If set to 1, the sender information will be stored.
-** If set to 0, the sender information will not be stored.
-**
-** \par Limits
-** There is a lower limit of 0 and an upper limit of 1 on this configuration
-** paramater.
-*/
-#define CFE_PLATFORM_SB_DEFAULT_REPORT_SENDER 1
-
-
-/**
-** \cfetimecfg Time Server or Time Client Selection
-**
-** \par Description:
-** This configuration parameter selects whether the Time task functions as a
-** time "server" or "client". A time server generates the "time at the tone"
-** packet which is received by time clients.
-**
-** \par Limits
-** Enable one, and only one by defining either CFE_PLATFORM_TIME_CFG_SERVER or
-** CFE_PLATFORM_TIME_CFG_CLIENT AS true. The other must be defined as false.
-*/
-#define CFE_PLATFORM_TIME_CFG_SERVER true
-#define CFE_PLATFORM_TIME_CFG_CLIENT false
-
-
-/**
-** \cfetimecfg Time Tone In Big-Endian Order
-**
-** \par Description:
-** If this configuration parameter is defined, the CFE time server will
-** publish time tones with payloads in big-endian order, and time clients
-** will expect the tones to be in big-endian order. This is useful for
-** mixed-endian environments. This will become obsolete once EDS is
-** available and the CFE time tone message is defined.
-*/
-#undef CFE_PLATFORM_TIME_CFG_BIGENDIAN
-
-
-/**
-** \cfetimecfg Local MET or Virtual MET Selection for Time Servers
-**
-** \par Description:
-** Depending on the specific hardware system configuration, it may be possible
-** for Time Servers to read the "local" MET from a h/w register rather than
-** having to track the MET as the count of tone signal interrupts (virtual MET)
-**
-** Time Clients must be defined as using a virtual MET. Also, a Time Server
-** cannot be defined as having both a h/w MET and an external time source (they
-** both cannot synchronize to the same tone).
-**
-** Note: "disable" this define (set to false) only for Time Servers with local hardware
-** that supports a h/w MET that is synchronized to the tone signal !!!
-**
-** \par Limits
-** Only applies if #CFE_PLATFORM_TIME_CFG_SERVER is set to true.
-*/
-#define CFE_PLATFORM_TIME_CFG_VIRTUAL true
-
-
-/**
-** \cfetimecfg Include or Exclude the Primary/Redundant Tone Selection Cmd
-**
-** \par Description:
-** Depending on the specific hardware system configuration, it may be possible
-** to switch between a primary and redundant tone signal. If supported by
-** hardware, this definitions will enable command interfaces to select the
-** active tone signal. Both Time Clients and Time Servers support this feature.
-** Note: Set the CFE_PLATFORM_TIME_CFG_SIGNAL define to true to enable tone signal commands.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_TIME_CFG_SIGNAL false
-
-
-/**
-** \cfetimecfg Include or Exclude the Internal/External Time Source Selection Cmd
-**
-** \par Description:
-** By default, Time Servers maintain time using an internal MET which may be a
-** h/w register or software counter, depending on available hardware. The
-** following definition enables command interfaces to switch between an
-** internal MET, or external time data received from one of several supported
-** external time sources. Only a Time Server may be configured to use external
-** time data.
-** Note: Set the CFE_PLATFORM_TIME_CFG_SOURCE define to true to include the Time Source
-** Selection Command (command allows selection between the internal
-** or external time source). Then choose the external source with the
-** CFE_TIME_CFG_SRC_??? define.
-**
-** \par Limits
-** Only applies if #CFE_PLATFORM_TIME_CFG_SERVER is set to true.
-*/
-#define CFE_PLATFORM_TIME_CFG_SOURCE false
-
-
-/**
-** \cfetimecfg Choose the External Time Source for Server only
-**
-** \par Description:
-** If #CFE_PLATFORM_TIME_CFG_SOURCE is set to true, then one of the following external time
-** source types must also be set to true. Do not set any of the external time
-** source types to true unless #CFE_PLATFORM_TIME_CFG_SOURCE is set to true.
-**
-** \par Limits
-** -# If #CFE_PLATFORM_TIME_CFG_SOURCE is set to true then one and only one of the following
-** three external time sources can and must be set true:
-** #CFE_PLATFORM_TIME_CFG_SRC_MET, #CFE_PLATFORM_TIME_CFG_SRC_GPS, #CFE_PLATFORM_TIME_CFG_SRC_TIME
-** -# Only applies if #CFE_PLATFORM_TIME_CFG_SERVER is set to true.
-*/
-#define CFE_PLATFORM_TIME_CFG_SRC_MET false
-#define CFE_PLATFORM_TIME_CFG_SRC_GPS false
-#define CFE_PLATFORM_TIME_CFG_SRC_TIME false
-
-
-/**
-** \cfetimecfg Define the Max Delta Limits for Time Servers using an Ext Time Source
-**
-** \par Description:
-** If #CFE_PLATFORM_TIME_CFG_SOURCE is set to true and one of the external time sources is
-** also set to true, then the delta time limits for range checking is used.
-**
-** When a new time value is received from an external source, the value is
-** compared against the "expected" time value. If the delta exceeds the
-** following defined amount, then the new time data will be ignored. This range
-** checking is only performed after the clock state has been commanded to
-** "valid". Until then, external time data is accepted unconditionally.
-**
-** \par Limits
-** Applies only if both #CFE_PLATFORM_TIME_CFG_SERVER and #CFE_PLATFORM_TIME_CFG_SOURCE are set
-** to true.
-*/
-#define CFE_PLATFORM_TIME_MAX_DELTA_SECS 0
-#define CFE_PLATFORM_TIME_MAX_DELTA_SUBS 500000
-
-
-/**
-** \cfetimecfg Define the Local Clock Rollover Value in seconds and subseconds
-**
-** \par Description:
-** Specifies the capability of the local clock. Indicates the time at which
-** the local clock rolls over.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_TIME_MAX_LOCAL_SECS 27
-#define CFE_PLATFORM_TIME_MAX_LOCAL_SUBS 0
-
-
-/**
-** \cfetimecfg Define Timing Limits From One Tone To The Next
-**
-** \par Description:
-** Defines limits to the timing of the 1Hz tone signal. A tone signal is valid
-** only if it arrives within one second (plus or minus the tone limit) from
-** the previous tone signal.Units are microseconds as measured with the local
-** clock.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_TIME_CFG_TONE_LIMIT 20000
-
-
-
-/**
-** \cfetimecfg Define Time to Start Flywheel Since Last Tone
-**
-** \par Description:
-** Define time to enter flywheel mode (in seconds since last tone data update)
-** Units are microseconds as measured with the local clock.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_TIME_CFG_START_FLY 2
-
-
-/**
-** \cfetimecfg Define Periodic Time to Update Local Clock Tone Latch
-**
-** \par Description:
-** Define Periodic Time to Update Local Clock Tone Latch. Applies only when
-** in flywheel mode. This define dicates the period at which the simulated
-** 'last tone' time is updated. Units are seconds.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_TIME_CFG_LATCH_FLY 8
-
-
-/**
-** \cfeescfg Define Max Number of Applications
-**
-** \par Description:
-** Defines the maximum number of applications that can be loaded into the
-** system. This number does not include child tasks.
-**
-** \par Limits
-** There is a lower limit of 6. The lower limit corresponds to the cFE internal
-** applications. There are no restrictions on the upper limit however, the
-** maximum number of applications is system dependent and should be verified.
-** AppIDs that are checked against this configuration are defined by a 32 bit
-** data word.
-*/
-#define CFE_PLATFORM_ES_MAX_APPLICATIONS 32
-
-
-/**
-** \cfeescfg Define Max Number of Shared libraries
-**
-** \par Description:
-** Defines the maximum number of cFE Shared libraries that can be loaded into
-** the system.
-**
-** \par Limits
-** There is a lower limit of 1. There are no restrictions on the upper limit
-** however, the maximum number of libraries is system dependent and should be
-** verified.
-*/
-#define CFE_PLATFORM_ES_MAX_LIBRARIES 10
-
-/**
-** \cfeescfg Define Max Number of ER (Exception and Reset) log entries
-**
-** \par Description:
-** Defines the maximum number of ER (Exception and Reset) log entries
-**
-** \par Limits
-** There is a lower limit of 1. There are no restrictions on the upper limit
-** however, the maximum number of log entries is system dependent and should be
-** verified.
-*/
-#define CFE_PLATFORM_ES_ER_LOG_ENTRIES 20
-
-/** \cfeescfg Maximum size of CPU Context in ES Error Log
-**
-** \par Description:
-** This should be large enough to accommodate the CPU context
-** information supplied by the PSP on the given platform.
-**
-** \par Limits:
-** Must be greater than zero and a multiple of sizeof(uint32).
-** Limited only by the available memory and the number of entries
-** in the error log. Any context information beyond this size will
-** be truncated.
-*/
-#define CFE_PLATFORM_ES_ER_LOG_MAX_CONTEXT_SIZE 128
-
-
-/**
-** \cfeescfg Define Size of the cFE System Log.
-**
-** \par Description:
-** Defines the size in bytes of the cFE system log. The system log holds
-** variable length strings that are terminated by a linefeed and null
-** character.
-**
-** \par Limits
-** There is a lower limit of 512. There are no restrictions on the upper limit
-** however, the maximum system log size is system dependent and should be
-** verified.
-*/
-#define CFE_PLATFORM_ES_SYSTEM_LOG_SIZE 3072
-
-
-/**
-** \cfeescfg Define Number of entries in the ES Object table
-**
-** \par Description:
-** Defines the number of entries in the ES Object table. This table controls
-** the core cFE startup.
-**
-** \par Limits
-** There is a lower limit of 15. There are no restrictions on the upper limit
-** however, the maximum object table size is system dependent and should be
-** verified.
-*/
-#define CFE_PLATFORM_ES_OBJECT_TABLE_SIZE 30
-
-
-/**
-** \cfeescfg Define Max Number of Generic Counters
-**
-** \par Description:
-** Defines the maximum number of Generic Counters that can be registered.
-**
-** \par Limits
-** This parameter has a lower limit of 1 and an upper limit of 65535.
-*/
-#define CFE_PLATFORM_ES_MAX_GEN_COUNTERS 8
-
-
-/**
-** \cfeescfg Define ES Application Control Scan Rate
-**
-** \par Description:
-** ES Application Control Scan Rate. This parameter controls the speed that ES
-** scans the Application Table looking for App Delete/Restart/Reload requests.
-** All Applications are deleted, restarted, or reloaded by the ES Application.
-** ES will periodically scan for control requests to process. The scan rate is
-** controlled by this parameter, which is given in milliseconds. A value of
-** 1000 means that ES will scan the Application Table once per second. Be
-** careful not to set the value of this too low, because ES will use more CPU
-** cycles scanning the table.
-**
-** \par Limits
-** There is a lower limit of 100 and an upper limit of 20000 on this
-** configuration paramater. millisecond units.
-*/
-#define CFE_PLATFORM_ES_APP_SCAN_RATE 1000
-
-
-/**
-** \cfeescfg Define ES Application Kill Timeout
-**
-** \par Description:
-** ES Application Kill Timeout. This parameter controls the number of
-** "scan periods" that ES will wait for an application to Exit after getting
-** the signal Delete, Reload or Restart. The sequence works as follows:
-** -# ES will set the control request for an App to Delete/Restart/Reload and
-** set this kill timer to the value in this parameter.
-** -# If the App is reponding and Calls it's RunLoop function, it will drop out
-** of it's main loop and call CFE_ES_ExitApp. Once it calls Exit App, then
-** ES can delete, restart, or reload the app the next time it scans the app
-** table.
-** -# If the App is not responding, the ES App will decrement this Kill Timeout
-** value each time it runs. If the timeout value reaches zero, ES will kill
-** the app.
-**
-** The Kill timeout value depends on the #CFE_PLATFORM_ES_APP_SCAN_RATE. If the Scan Rate
-** is 1000, or 1 second, and this #CFE_PLATFORM_ES_APP_KILL_TIMEOUT is set to 5, then it
-** will take 5 seconds to kill a non-responding App.
-** If the Scan Rate is 250, or 1/4 second, and the #CFE_PLATFORM_ES_APP_KILL_TIMEOUT is
-** set to 2, then it will take 1/2 second to time out.
-**
-** \par Limits
-** There is a lower limit of 1 and an upper limit of 100 on this configuration
-** paramater. Units are number of #CFE_PLATFORM_ES_APP_SCAN_RATE cycles.
-*/
-#define CFE_PLATFORM_ES_APP_KILL_TIMEOUT 5
-
-
-/**
-** \cfeescfg ES Ram Disk Sector Size
-**
-** \par Description:
-** Defines the ram disk sector size. The ram disk is 1 of 4 memory areas that
-** are preserved on a processor reset.
-** NOTE: Changing this value changes memory allocation, and may
-** require changes to platform specific values (in CFE_PSP) such as
-** USER_RESERVED_MEM in VxWorks depending on the memory areas
-** being used for preserved data and on OS specific behavior.
-**
-** \par Limits
-** There is a lower limit of 128. There are no restrictions on the upper limit
-** however, the maximum RAM disk sector size is system dependent and should be
-** verified.
-*/
-#define CFE_PLATFORM_ES_RAM_DISK_SECTOR_SIZE 512
-
-
-/**
-** \cfeescfg ES Ram Disk Number of Sectors
-**
-** \par Description:
-** Defines the ram disk number of sectors. The ram disk is one of four memory
-** areas that are preserved on a processor reset.
-** NOTE: Changing this value changes memory allocation, and may
-** require changes to platform specific values (in CFE_PSP) such as
-** USER_RESERVED_MEM in VxWorks depending on the memory areas
-** being used for preserved data and on OS specific behavior.
-**
-** \par Limits
-** There is a lower limit of 128. There are no restrictions on the upper limit
-** however, the maximum number of RAM sectors is system dependent and should be
-** verified.
-*/
-#define CFE_PLATFORM_ES_RAM_DISK_NUM_SECTORS 4096
-
-/**
-** \cfeescfg Percentage of Ram Disk Reserved for Decompressing Apps
-**
-** \par Description:
-** The #CFE_PLATFORM_ES_RAM_DISK_PERCENT_RESERVED parameter is used to make sure that the
-** Volatile ( RAM ) Disk has a defined amount of free space during a processor
-** reset. The cFE uses the Volatile disk to decompress cFE applications during
-** system startup. If this Volatile disk happens to get filled with logs and
-** misc files, then a processor reset may not work, because there will be no
-** room to decompress cFE apps. To solve that problem, this parameter sets the
-** "Low Water Mark" for disk space on a Processor reset. It should be set to
-** allow the largest cFE Application to be decompressed.
-** During a Processor reset, if there is not sufficient space left on the disk,
-** it will be re-formatted in order to clear up some space.
-**
-** This feature can be turned OFF by setting the parameter to 0.
-**
-** \par Limits
-** There is a lower limit of 0 and an upper limit of 75 on this configuration
-** paramater.Units are percentage. A setting of zero will turn this feature
-** off.
-*/
-#define CFE_PLATFORM_ES_RAM_DISK_PERCENT_RESERVED 30
-
-
-/**
-** \cfeescfg RAM Disk Mount string
-**
-** \par Description:
-** The #CFE_PLATFORM_ES_RAM_DISK_MOUNT_STRING parameter is used to set the cFE mount path
-** for the CFE RAM disk. This is a parameter for missions that do not want to
-** use the default value of "/ram", or for missions that need to have a different
-** value for different CPUs or Spacecraft.
-** Note that the vxWorks OSAL cannot currently handle names that have more than one
-** path separator in it. The names "/ram", "/ramdisk", "/disk123" will all work, but
-** "/disks/ram" will not.
-** Multiple separators can be used with the posix or RTEMS ports.
-**
-*/
-#define CFE_PLATFORM_ES_RAM_DISK_MOUNT_STRING "/ram"
-
-
-/**
-** \cfeescfg Define Critical Data Store Size
-**
-** \par Description:
-** Defines the Critical Data Store (CDS) area size in bytes size. The CDS is
-** one of four memory areas that are preserved during a processor reset.
-** NOTE: Changing this value changes memory allocation, and may
-** require changes to platform specific values (in CFE_PSP) such as
-** USER_RESERVED_MEM in VxWorks depending on the memory areas
-** being used for preserved data and on OS specific behavior.
-**
-** \par Limits
-** There is a lower limit of 8192 and an upper limit of UINT_MAX (4 Gigabytes)
-** on this configuration paramater.
-*/
-#define CFE_PLATFORM_ES_CDS_SIZE ( 128 * 1024 )
-
-
-/**
-** \cfeescfg Define User Reserved Memory Size
-**
-** \par Description:
-** User Reserved Memory Size. This is the size in bytes of the cFE User
-** reserved Memory area. This is a block of memory that is available for cFE
-** application use. The address is obtained by calling
-** #CFE_PSP_GetUserReservedArea. The User Reserved Memory is one of four memory
-** areas that are preserved during a processor reset.
-** NOTE: Changing this value changes memory allocation, and may
-** require changes to platform specific values (in CFE_PSP) such as
-** USER_RESERVED_MEM in VxWorks depending on the memory areas
-** being used for preserved data and on OS specific behavior.
-**
-** \par Limits
-** There is a lower limit of 1024 and an upper limit of UINT_MAX (4 Gigabytes)
-** on this configuration paramater.
-*/
-#define CFE_PLATFORM_ES_USER_RESERVED_SIZE ( 1024 * 1024 )
-
-
-/**
-** \cfeescfg Define ES Reset Area Size
-**
-** \par Description:
-** The ES Reset Area Size. This is the size in bytes of the cFE Reset variable
-** and log area. This is a block of memory used by the cFE to store the system
-** log ER Log and critical reset variables. This is 4 of 4 of the memory areas
-** that are preserved during a processor reset.
-** Note: This area must be sized large enough to hold all of the data
-** structures. It should be automatically sized based on the #CFE_ES_ResetData_t
-** type, but circular dependancies in the headers prevent it from being defined
-** this way.
-** NOTE: Changing this value changes memory allocation, and may
-** require changes to platform specific values (in CFE_PSP) such as
-** USER_RESERVED_MEM in VxWorks depending on the memory areas
-** being used for preserved data and on OS specific behavior.
-**
-** \par Limits
-** There is a lower limit of 153600 (150KBytes) and an upper limit of UINT_MAX
-** (4 Gigabytes) on this configuration paramater.
-*/
-#define CFE_PLATFORM_ES_RESET_AREA_SIZE ( 170 * 1024 )
-
-/**
-** \cfeescfg Define Memory Pool Alignment Size
-**
-** \par Description:
-** Ensures that buffers obtained from a memory pool are aligned
-** to a certain minimum block size. Note the allocator will always
-** align to the minimum required by the CPU architecture. This may
-** be set greater than the CPU requirement as desired for optimal
-** performance.
-**
-** For some architectures/applications it may be beneficial to set this
-** to the cache line size of the target CPU, or to use special SIMD
-** instructions that require a more stringent memory alignment.
-**
-** \par Limits
-** This must always be a power of 2, as it is used as a binary address mask.
-*/
-#define CFE_PLATFORM_ES_MEMPOOL_ALIGN_SIZE_MIN 4
-
-
-/**
-** \cfeescfg ES Nonvolatile Startup Filename
-**
-** \par Description:
-** The value of this constant defines the path and name of the file that
-** contains a list of modules that will be loaded and started by the cFE after
-** the cFE finishes its startup sequence.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_NONVOL_STARTUP_FILE "/cf/cfe_es_startup.scr"
-
-
-/**
-** \cfeescfg ES Volatile Startup Filename
-**
-** \par Description:
-** The value of this constant defines the path and name of the file that
-** contains a list of modules that will be loaded and started by the cFE after
-** the cFE finishes its startup sequence.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_VOLATILE_STARTUP_FILE "/ram/cfe_es_startup.scr"
-
-/**
-** \cfeescfg Default Shell Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the shell
-** output after a shell command is received by ES. This file contains the
-** entire shell output. The fsw also sends the shell output in series of fixed
-** size telemetry packets. This filename is used only when no filename
-** is specified in the shell command.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_SHELL_FILENAME "/ram/ShellCmd.out"
-
-
-/**
-** \cfeescfg Define Max Shell Command Size
-**
-** \par Description:
-** Defines the maximum size in characters of the shell command.
-**
-** \par Limits
-** There is a lower limit of 64 and an upper limit of #OS_MAX_CMD_LEN. Units are
-** characters.
-*/
-#define CFE_PLATFORM_ES_MAX_SHELL_CMD 64
-
-
-/**
-** \cfeescfg Define Shell Command Telemetry Pkt Segment Size
-**
-** \par Description:
-** Defines the size of the shell command tlm packet segments.The shell command
-** output size is dependant on the shell command itself. If the shell output
-** size is greater than the size of the packet defined here, the fsw will
-** generate a series of tlm packets (of the size defined here) that can be
-** reconstructed by the ground system.
-**
-** \par Limits
-** There is a lower limit of 32 and an upper limit of #CFE_SB_MAX_SB_MSG_SIZE.
-*/
-#define CFE_PLATFORM_ES_MAX_SHELL_PKT 64
-
-/**
-** \cfeescfg Define OS Task Delay Value for ES Shell Command
-**
-** \par Description:
-** This parameter defines the length of time (in milliseconds) ES will
-** delay when sending shell command packets over the software bus to not
-** flood the pipe on large messages.
-**
-** Note: The milliseconds passed into OS_TaskDelay are converted into the
-** units the underlying OS uses to measure time passing. Many platforms
-** limit the precision of this value however, a delay may not be
-** needed at all in which the value may be set to zero.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_ES_SHELL_OS_DELAY_MILLISEC 200
-
-/**
-** \cfeescfg Default Application Information Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store information
-** pertaining to all of the Applications that are registered with Executive
-** Services. This filename is used only when no filename is specified in the
-** the command to query all system apps.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_APP_LOG_FILE "/ram/cfe_es_app_info.log"
-
-/**
-** \cfeescfg Default Application Information Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store information
-** pertaining to all of the Applications that are registered with Executive
-** Services. This filename is used only when no filename is specified in the
-** the command to query all system tasks.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_TASK_LOG_FILE "/ram/cfe_es_task_info.log"
-
-/**
-** \cfeescfg Default System Log Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store important
-** information (as ASCII text strings) that might not be able to be sent in an
-** Event Message. This filename is used only when no filename is specified in
-** the command to dump the system log. No file specified in the cmd means the
-** first character in the cmd filename is a NULL terminator (zero).
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_SYSLOG_FILE "/ram/cfe_es_syslog.log"
-
-/**
-** \cfeescfg Default Exception and Reset (ER) Log Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the
-** Exception and Reset (ER) Log. This filename is used only when no filename is
-** specified in the command to dump the ER log. No file specified in the cmd
-** means the first character in the cmd filename is a NULL terminator (zero).
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_ER_LOG_FILE "/ram/cfe_erlog.log"
-
-/**
-** \cfeescfg Default Performance Data Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the
-** Performance Data. This filename is used only when no filename is specified
-** in the command to stop performance data collecting.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_PERF_DUMP_FILENAME "/ram/cfe_es_perf.dat"
-
-
-/**
-** \cfeescfg Default Critical Data Store Registry Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the
-** Critical Data Store Registry. This filename is used only when no filename is
-** specified in the command to stop performance data collecting.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_CDS_REG_DUMP_FILE "/ram/cfe_cds_reg.log"
-
-/**
-** \cfeescfg Define Default System Log Mode
-**
-** \par Description:
-** Defines the default mode for the operation of the ES System log. The log may
-** operate in either Overwrite mode = 0, where once the log becomes full the
-** oldest message in the log will be overwritten, or Discard mode = 1, where
-** once the log becomes full the contents of the log are preserved and the new
-** event is discarded. This constant may hold a value of either 0 or 1
-** depending on the desired default log mode. Overwrite Mode = 0, Discard
-** Mode = 1.
-**
-** \par Limits
-** There is a lower limit of 0 and an upper limit of 1 on this configuration
-** paramater.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_SYSLOG_MODE 1
-
-/**
-** \cfeescfg Define Max Number of Performance IDs
-**
-** \par Description:
-** Defines the maximum number of perf ids allowed.
-**
-**
-** \par Limits
-** This number must always be divisible by 32. There is a lower limit of 32 and
-** an upper limit of 512 on this configuration paramater.
-*/
-#define CFE_PLATFORM_ES_PERF_MAX_IDS 128
-
-/**
-** \cfeescfg Define Max Size of Performance Data Buffer
-**
-** \par Description:
-** Defines the maximum size of the performance data buffer. Units are number of
-** performance data entries. An entry is defined by a 32 bit data word followed
-** by a 64 bit time stamp.
-**
-** \par Limits
-** There is a lower limit of 1025. There are no restrictions on the upper limit
-** however, the maximum buffer size size is system dependent and should be verified.
-** The units are number of entries. An entry is defined by a 32 bit data word followed
-** by a 64 bit time stamp.
-*/
-#define CFE_PLATFORM_ES_PERF_DATA_BUFFER_SIZE 10000
-
-
-/**
-** \cfeescfg Define Filter Mask Setting for Disabling All Performance Entries
-**
-** \par Description:
-** Defines the filter mask for disabling all performance entries. The value is a
-** bit mask. For each bit, 0 means the corresponding entry is disabled and
-** 1 means it is enabled.
-*/
-#define CFE_PLATFORM_ES_PERF_FILTMASK_NONE 0
-
-/**
-** \cfeescfg Define Filter Mask Setting for Enabling All Performance Entries
-**
-** \par Description:
-** Defines the filter mask for enabling all performance entries. The value is a
-** bit mask. For each bit, 0 means the corresponding entry is disabled and
-** 1 means it is enabled.
-*/
-#define CFE_PLATFORM_ES_PERF_FILTMASK_ALL ~CFE_PLATFORM_ES_PERF_FILTMASK_NONE
-
-/**
-** \cfeescfg Define Default Filter Mask Setting for Performance Data Buffer
-**
-** \par Description:
-** Defines the default filter mask for the performance data buffer. The value is a
-** bit mask. For each bit, 0 means the corresponding entry is disabled and 1
-** means it is enabled.
-**
-*/
-#define CFE_PLATFORM_ES_PERF_FILTMASK_INIT CFE_PLATFORM_ES_PERF_FILTMASK_ALL
-
-
-/**
-** \cfeescfg Define Default Filter Trigger Setting for Disabling All Performance Entries
-**
-** \par Description:
-** Defines the default trigger mask for disabling all performance data entries. The value
-** is a bit mask. For each bit, 0 means the trigger for the corresponding entry is
-** disabled and 1 means it is enabled.
-**
-*/
-#define CFE_PLATFORM_ES_PERF_TRIGMASK_NONE 0
-
-/**
-** \cfeescfg Define Filter Trigger Setting for Enabling All Performance Entries
-**
-** \par Description:
-** Defines the trigger mask for enabling all performance data entries. The value is
-** a bit mask. For each bit, 0 means the trigger for the corresponding entry is
-** disabled and 1 means it is enabled.
-**
-*/
-#define CFE_PLATFORM_ES_PERF_TRIGMASK_ALL ~CFE_PLATFORM_ES_PERF_TRIGMASK_NONE
-
-/**
-** \cfeescfg Define Default Filter Trigger Setting for Performance Data Buffer
-**
-** \par Description:
-** Defines the default trigger mask for the performance data buffer. The value is a
-** 32-bit mask. For each bit, 0 means the trigger for the corresponding entry is
-** disabled and 1 means it is enabled.
-**
-*/
-#define CFE_PLATFORM_ES_PERF_TRIGMASK_INIT CFE_PLATFORM_ES_PERF_TRIGMASK_NONE
-
-/**
-** \cfeescfg Define Performance Analyzer Child Task Priority
-**
-** \par Description:
-** This parameter defines the priority of the child task spawed by the
-** Executive Services to write performance data to a file. Lower numbers
-** are higher priority, with 1 being the highest priority in the case of a
-** child task.
-**
-** \par Limits
-** Valid range for a child task is 1 to 255 however, the priority cannot
-** be higher (lower number) than the ES parent application priority.
-*/
-#define CFE_PLATFORM_ES_PERF_CHILD_PRIORITY 200
-
-/**
-** \cfeescfg Define Performance Analyzer Child Task Stack Size
-**
-** \par Description:
-** This parameter defines the stack size of the child task spawed by the
-** Executive Services to write performance data to a file.
-**
-** \par Limits
-** It is recommended this parameter be greater than or equal to 4KB. This parameter
-** is limited by the maximum value allowed by the data type. In this case, the data
-** type is an unsigned 32-bit integer, so the valid range is 0 to 0xFFFFFFFF.
-*/
-#define CFE_PLATFORM_ES_PERF_CHILD_STACK_SIZE 4096
-
-/**
-** \cfeescfg Define Performance Analyzer Child Task Delay
-**
-** \par Description:
-** This parameter defines the delay time (in milliseconds) between performance
-** data file writes performed by the Executive Services Performace Analyzer
-** Child Task.
-**
-** \par Limits
-** It is recommended this parameter be greater than or equal to 20ms. This parameter
-** is limited by the maximum value allowed by the data type. In this case, the data
-** type is an unsigned 32-bit integer, so the valid range is 0 to 0xFFFFFFFF.
-*/
-#define CFE_PLATFORM_ES_PERF_CHILD_MS_DELAY 20
-
-/**
-** \cfeescfg Define Performance Analyzer Child Task Number of Entries Between Delay
-**
-** \par Description:
-** This parameter defines the number of performace analyzer entries the Performace
-** Analyzer Child Task will write to the file between delays.
-**
-*/
-#define CFE_PLATFORM_ES_PERF_ENTRIES_BTWN_DLYS 50
-
-/**
-** \cfeescfg Define Default Stack Size for an Application
-**
-** \par Description:
-** This parameter defines a default stack size. This parameter is used by the
-** cFE Core Applications.
-**
-** \par Limits
-** There is a lower limit of 2048. There are no restrictions on the upper limit
-** however, the maximum stack size size is system dependent and should be verified.
-** Most operating systems provide tools for measuring the amount of stack used by a
-** task during operation. It is always a good idea to verify that no more than 1/2
-** of the stack is used.
-*/
-#define CFE_PLATFORM_ES_DEFAULT_STACK_SIZE 8192
-
-/**
-** \cfeescfg Define cFE Core Exception Function
-**
-** \par Description:
-** This parameter defines the function-to-call when a CPU or floating point exception
-** occurs. The parameter is defaulted to call the ES API function #CFE_ES_ProcessCoreException
-** which handles the logging and reset from a system or cFE core exception.
-**
-** Note: Exception interrupts are trapped at the Platform Support Package (PSP)
-** layer. In order to initiate the cFE platform defined response to an exception, this
-** platform defined callback function must be prototyped and called from the PSP
-** exception hook API function #CFE_PSP_ExceptionHook. For example:
-**
-** -- cfe_psp.h --
-**
-** .... Prototype for exception ISR function implemented in CFE ....
-**
-** typedef void (*System_ExceptionFunc_t)(uint32 HostTaskId,
-** const char *ReasonString,
-** const uint32 *ContextPointer,
-** uint32 ContextSize);
-**
-** -- cfe_pspexception.c --
-**
-** .... Setup function pointer to CFE exception ISR callback ....
-**
-** static const System_ExceptionFunc_t CFE_ExceptionCallback = CFE_PLATFORM_ES_EXCEPTION_FUNCTION;
-**
-** void CFE_PSP_ExceptionHook (int task_id, int vector, uint8 *pEsf )
-** {
-** .... platform-specific logic ....
-**
-** .... Use function pointer to call cFE routine to finish processing the exception ....
-**
-** CFE_ExceptionCallback((uint32)task_id,
-** CFE_PSP_ExceptionReasonString,
-** (uint32 *)&CFE_PSP_ExceptionContext,
-** sizeof(CFE_PSP_ExceptionContext_t));
-**
-** }
-**
-** \par Limits
-** Must be a valid function name.
-*/
-#define CFE_PLATFORM_ES_EXCEPTION_FUNCTION CFE_ES_ProcessCoreException
-
-/**
-** \cfeescfg Define EVS Task Priority
-**
-** \par Description:
-** Defines the cFE_EVS Task priority.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_EVS_START_TASK_PRIORITY 61
-
-/**
-** \cfeescfg Define EVS Task Stack Size
-**
-** \par Description:
-** Defines the cFE_EVS Task Stack Size
-**
-** \par Limits
-** There is a lower limit of 2048 on this configuration paramater. There
-** are no restrictions on the upper limit however, the maximum stack size size
-** is system dependent and should be verified. Most operating systems provide
-** tools for measuring the amount of stack used by a task during operation. It
-** is always a good idea to verify that no more than 1/2 of the stack is used.
-*/
-#define CFE_PLATFORM_EVS_START_TASK_STACK_SIZE CFE_PLATFORM_ES_DEFAULT_STACK_SIZE
-
-/**
-** \cfeescfg Define SB Task Priority
-**
-** \par Description:
-** Defines the cFE_SB Task priority.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_SB_START_TASK_PRIORITY 64
-
-/**
-** \cfeescfg Define SB Task Stack Size
-**
-** \par Description:
-** Defines the cFE_SB Task Stack Size
-**
-** \par Limits
-** There is a lower limit of 2048 on this configuration paramater. There
-** are no restrictions on the upper limit however, the maximum stack size size
-** is system dependent and should be verified. Most operating systems provide
-** tools for measuring the amount of stack used by a task during operation. It
-** is always a good idea to verify that no more than 1/2 of the stack is used.
-*/
-#define CFE_PLATFORM_SB_START_TASK_STACK_SIZE CFE_PLATFORM_ES_DEFAULT_STACK_SIZE
-
-/**
-** \cfeescfg Define ES Task Priority
-**
-** \par Description:
-** Defines the cFE_ES Task priority.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_ES_START_TASK_PRIORITY 68
-
-/**
-** \cfeescfg Define ES Task Stack Size
-**
-** \par Description:
-** Defines the cFE_ES Task Stack Size
-**
-** \par Limits
-** There is a lower limit of 2048 on this configuration paramater. There
-** are no restrictions on the upper limit however, the maximum stack size size
-** is system dependent and should be verified. Most operating systems provide
-** tools for measuring the amount of stack used by a task during operation. It
-** is always a good idea to verify that no more than 1/2 of the stack is used.
-*/
-#define CFE_PLATFORM_ES_START_TASK_STACK_SIZE CFE_PLATFORM_ES_DEFAULT_STACK_SIZE
-
-/**
-** \cfetimecfg Define TIME Task Priorities
-**
-** \par Description:
-** Defines the cFE_TIME Task priority.
-** Defines the cFE_TIME Tone Task priority.
-** Defines the cFE_TIME 1HZ Task priority.
-**
-** \par Limits
-** There is a lower limit of zero and an upper limit of 255 on these
-** configuration paramaters. Remember that the meaning of each task
-** priority is inverted -- a "lower" number has a "higher" priority.
-*/
-#define CFE_PLATFORM_TIME_START_TASK_PRIORITY 60
-#define CFE_PLATFORM_TIME_TONE_TASK_PRIORITY 25
-#define CFE_PLATFORM_TIME_1HZ_TASK_PRIORITY 25
-
-/**
-** \cfetimecfg Define TIME Task Stack Sizes
-**
-** \par Description:
-** Defines the cFE_TIME Main Task Stack Size
-** Defines the cFE_TIME Tone Task Stack Size
-** Defines the cFE_TIME 1HZ Task Stack Size
-**
-** \par Limits
-** There is a lower limit of 2048 on these configuration paramaters. There
-** are no restrictions on the upper limit however, the maximum stack size size
-** is system dependent and should be verified. Most operating systems provide
-** tools for measuring the amount of stack used by a task during operation. It
-** is always a good idea to verify that no more than 1/2 of the stack is used.
-*/
-#define CFE_PLATFORM_TIME_START_TASK_STACK_SIZE CFE_PLATFORM_ES_DEFAULT_STACK_SIZE
-#define CFE_PLATFORM_TIME_TONE_TASK_STACK_SIZE 4096
-#define CFE_PLATFORM_TIME_1HZ_TASK_STACK_SIZE 8192
-
-/**
-** \cfeescfg Define TBL Task Priority
-**
-** \par Description:
-** Defines the cFE_TBL Task priority.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_TBL_START_TASK_PRIORITY 70
-
-/**
-** \cfeescfg Define TBL Task Stack Size
-**
-** \par Description:
-** Defines the cFE_TBL Task Stack Size
-**
-** \par Limits
-** There is a lower limit of 2048 on this configuration paramater. There
-** are no restrictions on the upper limit however, the maximum stack size size
-** is system dependent and should be verified. Most operating systems provide
-** tools for measuring the amount of stack used by a task during operation. It
-** is always a good idea to verify that no more than 1/2 of the stack is used.
-*/
-#define CFE_PLATFORM_TBL_START_TASK_STACK_SIZE CFE_PLATFORM_ES_DEFAULT_STACK_SIZE
-
-/**
-** \cfeescfg Define Maximum Number of Registered CDS Blocks
-**
-** \par Description:
-** Maximum number of registered CDS Blocks
-**
-** \par Limits
-** There is a lower limit of 8. There are no restrictions on the upper limit
-** however, the maximum number of CDS entries is system dependent and
-** should be verified.
-*/
-#define CFE_PLATFORM_ES_CDS_MAX_NUM_ENTRIES 512
-
-
-/**
-** \cfeescfg Define Number of Processor Resets Before a Power On Reset
-**
-** \par Description:
-** Number of Processor Resets before a Power On Reset is called. If set to 2,
-** then 2 processor resets will occur, and the 3rd processor reset will be a
-** power on reset instead.
-**
-** \par Limits
-** There is a lower limit of 0. There are no restrictions on the upper limit
-** however, the maximum number of processor resets may be system dependent and
-** should be verified.
-*/
-#define CFE_PLATFORM_ES_MAX_PROCESSOR_RESETS 2
-
-
-/**
-** \cfeescfg Define Default ES Memory Pool Block Sizes
-**
-** \par Description:
-** Default Intermediate ES Memory Pool Block Sizes. If an application
-** is using the CFE_ES Memory Pool APIs (#CFE_ES_PoolCreate, #CFE_ES_PoolCreateNoSem,
-** #CFE_ES_GetPoolBuf and #CFE_ES_PutPoolBuf) but finds these sizes
-** inappropriate for their use, they may wish to use the #CFE_ES_PoolCreateEx
-** API to specify their own intermediate block sizes
-**
-** \par Limits
-** These sizes MUST be increasing and MUST be an integral multiple of 4. Also,
-** CFE_PLATFORM_ES_MAX_BLOCK_SIZE must be larger than CFE_MISSION_SB_MAX_SB_MSG_SIZE and both
-** CFE_PLATFORM_TBL_MAX_SNGL_TABLE_SIZE and CFE_PLATFORM_TBL_MAX_DBL_TABLE_SIZE. Note that if Table
-** Services have been removed from the CFE, the table size limits are still
-** enforced although the table size definitions may be reduced. Refer to the CFS
-** Deployment Guide for information about removing CFE Table Services from the CFE.
-*/
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_01 8
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_02 16
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_03 32
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_04 48
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_05 64
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_06 96
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_07 128
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_08 160
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_09 256
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_10 512
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_11 1024
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_12 2048
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_13 4096
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_14 8192
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_15 16384
-#define CFE_PLATFORM_ES_MEM_BLOCK_SIZE_16 32768
-#define CFE_PLATFORM_ES_MAX_BLOCK_SIZE 80000
-
-
-/**
-** \cfeescfg Define ES Critical Data Store Memory Pool Block Sizes
-**
-** \par Description:
-** Intermediate ES Critical Data Store Memory Pool Block Sizes
-**
-** \par Limits
-** These sizes MUST be increasing and MUST be an integral multiple of 4.
-*/
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_01 8
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_02 16
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_03 32
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_04 48
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_05 64
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_06 96
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_07 128
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_08 160
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_09 256
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_10 512
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_11 1024
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_12 2048
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_13 4096
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_14 8192
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_15 16384
-#define CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_16 32768
-#define CFE_PLATFORM_ES_CDS_MAX_BLOCK_SIZE 80000
-
-
-
-/**
-** \cfeevscfg Define Maximum Number of Event Filters per Application
-**
-** \par Description:
-** Maximum number of events that may be filtered per application.
-**
-** \par Limits
-** There are no restrictions on the lower and upper limits however,
-** the maximum number of event filters is system dependent and should be
-** verified.
-*/
-#define CFE_PLATFORM_EVS_MAX_EVENT_FILTERS 8
-
-
-/**
-** \cfeevscfg Enable or Disable EVS Local Event Log
-**
-** \par Description:
-** The CFE_PLATFORM_EVS_LOG_ON configuration parameter must be defined to enable EVS
-** event logging. In order to disable the local event log this definition needs
-** to be commented out.
-**
-** \par Limits
-** Not Applicable
-*/
-#define CFE_PLATFORM_EVS_LOG_ON
-
-
-/**
-** \cfeevscfg Default Event Log Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the Event
-** Services local event log. This filename is used only when no filename is
-** specified in the command to dump the event log.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_EVS_DEFAULT_LOG_FILE "/ram/cfe_evs.log"
-
-
-/**
-** \cfeevscfg Maximum Number of Events in EVS Local Event Log
-**
-** \par Description:
-** Dictates the EVS local event log capacity. Units are the number of events.
-**
-** \par Limits
-** There are no restrictions on the lower and upper limits however,
-** the maximum log size is system dependent and should be verified.
-*/
-#define CFE_PLATFORM_EVS_LOG_MAX 20
-
-
-/**
-** \cfeevscfg Default EVS Application Data Filename
-**
-** \par Description:
-** The value of this constant defines the filename used to store the EVS
-** Application Data(event counts/filtering information). This filename is
-** used only when no filename is specified in the command to dump the event
-** log.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_EVS_DEFAULT_APP_DATA_FILE "/ram/cfe_evs_app.dat"
-
-
-/**
-** \cfeevscfg Default EVS Output Port State
-**
-** \par Description:
-** Defines the default port state (enabled or deisabled) for the four output
-** ports defined within the Event Service. Port 1 is usually the uart output
-** terminal. To enable a port, set the proper bit to a 1. Bit 0 is port 1,
-** bit 1 is port2 etc.
-**
-** \par Limits
-** The valid settings are 0x0 to 0xF.
-*/
-#define CFE_PLATFORM_EVS_PORT_DEFAULT 0x0001
-
-
-/**
-** \cfeevscfg Default EVS Event Type Filter Mask
-**
-** \par Description:
-** Defines a state of on or off for all four event types. The term event
-** 'type' refers to the criticality level and may be Debug, Informational,
-** Error or Critical. Each event type has a bit position. (bit 0 = Debug,
-** bit 1 = Info, bit 2 = Error, bit 3 = Critical). This is a global setting,
-** meaning it applies to all applications. To filter an event type, set its
-** bit to zero. For example,
-** 0xE means Debug = OFF, Info = ON, Error = ON, Critical = ON
-**
-** \par Limits
-** The valid settings are 0x0 to 0xF.
-*/
-#define CFE_PLATFORM_EVS_DEFAULT_TYPE_FLAG 0xE
-
-
-
-/**
-** \cfeevscfg Default EVS Local Event Log Mode
-**
-** \par Description:
-** Defines a state of overwrite(0) or discard(1) for the operation of the
-** EVS local event log. The log may operate in either Overwrite mode = 0,
-** where once the log becomes full the oldest event in the log will be
-** overwritten, or Discard mode = 1, where once the log becomes full the
-** contents of the log are preserved and the new event is discarded.
-** Overwrite Mode = 0, Discard Mode = 1.
-**
-** \par Limits
-** The valid settings are 0 or 1
-*/
-#define CFE_PLATFORM_EVS_DEFAULT_LOG_MODE 1
-
-
-/**
-** \cfeevscfg Default EVS Message Format Mode
-**
-** \par Description:
-** Defines the default message format (long or short) for event messages being
-** sent to the ground. Choose between #CFE_EVS_MsgFormat_LONG or
-** #CFE_EVS_MsgFormat_SHORT.
-**
-** \par Limits
-** The valid settings are #CFE_EVS_MsgFormat_LONG or #CFE_EVS_MsgFormat_SHORT
-*/
-#define CFE_PLATFORM_EVS_DEFAULT_MSG_FORMAT_MODE CFE_EVS_MsgFormat_LONG
-
-
-
-/* Platform Configuration Parameters for Table Service (TBL) */
-
-/**
-** \cfetblcfg Size of Table Services Table Memory Pool
-**
-** \par Description:
-** Defines the TOTAL size of the memory pool that cFE Table Services allocates
-** from the system. The size must be large enough to provide memory for each
-** registered table, the inactive buffers for double buffered tables and for
-** the shared inactive buffers for single buffered tables.
-**
-** \par Limits
-** The cFE does not place a limit on the size of this parameter.
-*/
-#define CFE_PLATFORM_TBL_BUF_MEMORY_BYTES 524288
-
-/**
-** \cfetblcfg Maximum Size Allowed for a Double Buffered Table
-**
-** \par Description:
-** Defines the maximum allowed size (in bytes) of a double buffered table.
-**
-** \par Limits
-** The cFE does not place a limit on the size of this parameter but it must be
-** less than half of #CFE_PLATFORM_TBL_BUF_MEMORY_BYTES.
-*/
-#define CFE_PLATFORM_TBL_MAX_DBL_TABLE_SIZE 16384
-
-/**
-** \cfetblcfg Maximum Size Allowed for a Single Buffered Table
-**
-** \par Description:
-** Defines the maximum allowed size (in bytes) of a single buffered table.
-** \b NOTE: This size determines the size of all shared table buffers.
-** Therefore, this size will be multiplied by #CFE_PLATFORM_TBL_MAX_SIMULTANEOUS_LOADS
-** below when allocating memory for shared tables.
-**
-** \par Limits
-** The cFE does not place a limit on the size of this parameter but it must be
-** small enough to allow for #CFE_PLATFORM_TBL_MAX_SIMULTANEOUS_LOADS number of tables
-** to fit into #CFE_PLATFORM_TBL_BUF_MEMORY_BYTES.
-*/
-#define CFE_PLATFORM_TBL_MAX_SNGL_TABLE_SIZE 16384
-
-/**
-** \cfetblcfg Maximum Number of Tables Allowed to be Registered
-**
-** \par Description:
-** Defines the maximum number of tables supported by this processor's Table Services.
-**
-** \par Limits
-** This number must be less than 32767. It should be recognized that this parameter
-** determines the size of the Table Registry. An excessively high number will waste
-** memory.
-*/
-#define CFE_PLATFORM_TBL_MAX_NUM_TABLES 128
-
-/**
-** \cfetblcfg Maximum Number of Critical Tables that can be Registered
-**
-** \par Description:
-** Defines the maximum number of critical tables supported by this processor's Table Services.
-**
-** \par Limits
-** This number must be less than 32767. It should be recognized that this parameter
-** determines the size of the Critical Table Registry which is maintained in the Critical
-** Data Store. An excessively high number will waste Critical Data Store memory. Therefore,
-** this number must not exceed the value defined in CFE_ES_CDS_MAX_CRITICAL_TABLES.
-*/
-#define CFE_PLATFORM_TBL_MAX_CRITICAL_TABLES 32
-
-/**
-** \cfetblcfg Maximum Number of Table Handles
-**
-** \par Description:
-** Defines the maximum number of Table Handles.
-**
-** \par Limits
-** This number must be less than 32767. This number must be at least as big as
-** the number of tables (#CFE_PLATFORM_TBL_MAX_NUM_TABLES) and should be set higher if tables
-** are shared between applications.
-*/
-#define CFE_PLATFORM_TBL_MAX_NUM_HANDLES 256
-
-/**
-** \cfetblcfg Maximum Number of Simultaneous Loads to Support
-**
-** \par Description:
-** Defines the maximum number of single buffered tables that can be
-** loaded simultaneously. This number is used to determine the number
-** of shared buffers to allocate.
-**
-** \par Limits
-** This number must be less than 32767. An excessively high number will
-** degrade system performance and waste memory. A number less than 5 is
-** suggested but not required.
-*/
-#define CFE_PLATFORM_TBL_MAX_SIMULTANEOUS_LOADS 4
-
-/**
-** \cfetblcfg Maximum Number of Simultaneous Table Validations
-**
-** \par Description:
-** Defines the maximum number of pending validations that
-** the Table Services can handle at any one time. When a
-** table has a validation function, a validation request is
-** made of the application to perform that validation. This
-** number determines how many of those requests can be
-** outstanding at any one time.
-**
-** \par Limits
-** This number must be less than 32767. An excessively high number will
-** degrade system performance and waste memory. A number less than 20 is
-** suggested but not required.
-*/
-#define CFE_PLATFORM_TBL_MAX_NUM_VALIDATIONS 10
-
-/**
-** \cfetblcfg Default Filename for a Table Registry Dump
-**
-** \par Description:
-** Defines the file name used to store the table registry when
-** no filename is specified in the dump registry command.
-**
-** \par Limits
-** The length of each string, including the NULL terminator cannot exceed the
-** #OS_MAX_PATH_LEN value.
-*/
-#define CFE_PLATFORM_TBL_DEFAULT_REG_DUMP_FILE "/ram/cfe_tbl_reg.log"
-
-/**
-** \cfetblcfg Number of Spacecraft ID's specified for validation
-**
-** \par Description:
-** Defines the number of specified spacecraft ID values that
-** are verified during table loads. If the number is zero
-** then no validation of the spacecraft ID field in the table
-** file header is performed when tables are loaded. Non-zero
-** values indicate how many values from the list of spacecraft
-** ID's defined below are compared to the spacecraft ID field
-** in the table file header. The ELF2CFETBL tool may be used
-** to create table files with specified spacecraft ID values.
-**
-** \par Limits
-** This number must be greater than or equal to zero and
-** less than or equal to 2.
-*/
-#define CFE_PLATFORM_TBL_VALID_SCID_COUNT 0
-
-/* macro to construct 32 bit value from 4 chars */
-#define CFE_PLATFORM_TBL_U32FROM4CHARS( _C1, _C2, _C3, _C4 ) \
- ( (uint32)(_C1) << 24 | \
- (uint32)(_C2) << 16 | \
- (uint32)(_C3) << 8 | \
- (uint32)(_C4) )
-
-/**
-** \cfetblcfg Spacecraft ID values used for table load validation
-**
-** \par Description:
-** Defines the spacecraft ID values used for validating the
-** spacecraft ID field in the table file header. To be valid,
-** the spacecraft ID specified in the table file header must
-** match one of the values defined here.
-**
-** \par Limits
-** This value can be any 32 bit unsigned integer.
-*/
-#define CFE_PLATFORM_TBL_VALID_SCID_1 (CFE_MISSION_SPACECRAFT_ID)
-#define CFE_PLATFORM_TBL_VALID_SCID_2 (CFE_PLATFORM_TBL_U32FROM4CHARS('a', 'b', 'c', 'd'))
-
-/**
-** \cfetblcfg Number of Processor ID's specified for validation
-**
-** \par Description:
-** Defines the number of specified processor ID values that
-** are verified during table loads. If the number is zero
-** then no validation of the processor ID field in the table
-** file header is performed when tables are loaded. Non-zero
-** values indicate how many values from the list of processor
-** ID's defined below are compared to the processor ID field
-** in the table file header. The ELF2CFETBL tool may be used
-** to create table files with specified processor ID values.
-**
-** \par Limits
-** This number must be greater than or equal to zero and
-** less than or equal to 4.
-*/
-#define CFE_PLATFORM_TBL_VALID_PRID_COUNT 0
-
-/**
-** \cfetblcfg Processor ID values used for table load validation
-**
-** \par Description:
-** Defines the processor ID values used for validating the
-** processor ID field in the table file header. To be valid,
-** the spacecraft ID specified in the table file header must
-** match one of the values defined here.
-**
-** \par Limits
-** This value can be any 32 bit unsigned integer.
-*/
-#define CFE_PLATFORM_TBL_VALID_PRID_1 (CFE_PLATFORM_CPU_ID)
-#define CFE_PLATFORM_TBL_VALID_PRID_2 (CFE_PLATFORM_TBL_U32FROM4CHARS('a', 'b', 'c', 'd'))
-#define CFE_PLATFORM_TBL_VALID_PRID_3 0
-#define CFE_PLATFORM_TBL_VALID_PRID_4 0
-
-/** \cfeescfg Mission specific version number for cFE
-**
-** \par Description:
-** The cFE version number consists of four parts:
-** major version number, minor version number, revision
-** number and mission specific revision number. The mission
-** specific revision number is defined here and the other
-** parts are defined in "cfe_version.h".
-**
-** \par Limits:
-** Must be defined as a numeric value that is greater than
-** or equal to zero.
-*/
-#define CFE_MISSION_REV 0
-
-/** \cfeescfg Poll timer for startup sync delay
-**
-** \par Description:
-** During startup, some tasks may need to synchronize their own initialization
-** with the initialization of other applications in the system.
-**
-** CFE ES implements an API to accomplish this, that performs a task delay (sleep)
-** while polling the overall system state until other tasks are ready.
-**
-** This value controls the amount of time that the CFE_ES_ApplicationSyncDelay
-** will sleep between each check of the system state. This should be large enough
-** to allow other tasks to run, but not so large as to noticeably delay the startup
-** completion.
-**
-** Units are in milliseconds
-**
-** \par Limits:
-** Must be defined as an integer value that is greater than
-** or equal to zero.
-*/
-#define CFE_PLATFORM_ES_STARTUP_SYNC_POLL_MSEC 50
-
-/** \cfeescfg CFE core application startup timeout
-**
-** \par Description:
-** The upper limit for the amount of time that the cFE core applications
-** (ES, SB, EVS, TIME, TBL) are each alloted to reach their respective
-** "ready" states.
-**
-** The CFE "main" thread starts individual tasks for each of the core applications
-** (except FS). Each of these must perform some initialization work before the
-** next core application can be started, so the main thread waits to ensure that the
-** application has reached the "ready" state before starting the next application.
-**
-** If any core application fails to start, then it indicates a major problem with
-** the system and startup is aborted.
-**
-** Units are in milliseconds
-**
-** \par Limits:
-** Must be defined as an integer value that is greater than
-** or equal to zero.
-**
-*/
-#define CFE_PLATFORM_CORE_MAX_STARTUP_MSEC 30000
-
-/** \cfeescfg Startup script timeout
-**
-** \par Description:
-** The upper limit for the total amount of time that all apps listed in the CFE ES startup
-** script may take to all become ready.
-**
-** Unlike the "core" app timeout, this is a soft limit; if the alloted time is exceeded,
-** it probably indicates an issue with one of the apps, but does not cause CFE ES to take
-** any additional action other than logging the event to the syslog.
-**
-** Units are in milliseconds
-**
-** \par Limits:
-** Must be defined as an integer value that is greater than
-** or equal to zero.
- */
-#define CFE_PLATFORM_ES_STARTUP_SCRIPT_TIMEOUT_MSEC 1000
-
-
-/*
- * Compatibility layer for CFE release 6.6
- * During development of CFE 6.6 a naming convention was introduced such
- * that all platform-specific symbols use a CFE_PLATFORM_ prefix.
- *
- * The following section provides a mapping from the historical name to
- * the new name for compatibility with existing code. The code can then be
- * compiled with the CFE_OMIT_DEPRECATED_6_6 macro defined, and an error will
- * be triggered if any of the old symbol names are referenced in the code.
- *
- * It is expected that this compatibility layer will be removed in the next
- * release following 6.6, so all code must be fixed to use the new name.
- */
-#ifndef CFE_OMIT_DEPRECATED_6_6
-
-#define CFE_CPU_ID CFE_PLATFORM_CPU_ID
-#define CFE_CPU_NAME CFE_PLATFORM_CPU_NAME
-#define CFE_SB_MAX_MSG_IDS CFE_PLATFORM_SB_MAX_MSG_IDS
-#define CFE_SB_MAX_PIPES CFE_PLATFORM_SB_MAX_PIPES
-#define CFE_SB_MAX_DEST_PER_PKT CFE_PLATFORM_SB_MAX_DEST_PER_PKT
-#define CFE_SB_DEFAULT_MSG_LIMIT CFE_PLATFORM_SB_DEFAULT_MSG_LIMIT
-#define CFE_SB_BUF_MEMORY_BYTES CFE_PLATFORM_SB_BUF_MEMORY_BYTES
-#define CFE_SB_MAX_PIPE_DEPTH CFE_PLATFORM_SB_MAX_PIPE_DEPTH
-#define CFE_SB_HIGHEST_VALID_MSGID CFE_PLATFORM_SB_HIGHEST_VALID_MSGID
-#define CFE_SB_DEFAULT_ROUTING_FILENAME CFE_PLATFORM_SB_DEFAULT_ROUTING_FILENAME
-#define CFE_SB_DEFAULT_PIPE_FILENAME CFE_PLATFORM_SB_DEFAULT_PIPE_FILENAME
-#define CFE_SB_DEFAULT_MAP_FILENAME CFE_PLATFORM_SB_DEFAULT_MAP_FILENAME
-#define CFE_SB_FILTERED_EVENT1 CFE_PLATFORM_SB_FILTERED_EVENT1
-#define CFE_SB_FILTER_MASK1 CFE_PLATFORM_SB_FILTER_MASK1
-#define CFE_SB_FILTERED_EVENT2 CFE_PLATFORM_SB_FILTERED_EVENT2
-#define CFE_SB_FILTER_MASK2 CFE_PLATFORM_SB_FILTER_MASK2
-#define CFE_SB_FILTERED_EVENT3 CFE_PLATFORM_SB_FILTERED_EVENT3
-#define CFE_SB_FILTER_MASK3 CFE_PLATFORM_SB_FILTER_MASK3
-#define CFE_SB_FILTERED_EVENT4 CFE_PLATFORM_SB_FILTERED_EVENT4
-#define CFE_SB_FILTER_MASK4 CFE_PLATFORM_SB_FILTER_MASK4
-#define CFE_SB_FILTERED_EVENT5 CFE_PLATFORM_SB_FILTERED_EVENT5
-#define CFE_SB_FILTER_MASK5 CFE_PLATFORM_SB_FILTER_MASK5
-#define CFE_SB_FILTERED_EVENT6 CFE_PLATFORM_SB_FILTERED_EVENT6
-#define CFE_SB_FILTER_MASK6 CFE_PLATFORM_SB_FILTER_MASK6
-#define CFE_SB_FILTERED_EVENT7 CFE_PLATFORM_SB_FILTERED_EVENT7
-#define CFE_SB_FILTER_MASK7 CFE_PLATFORM_SB_FILTER_MASK7
-#define CFE_SB_FILTERED_EVENT8 CFE_PLATFORM_SB_FILTERED_EVENT8
-#define CFE_SB_FILTER_MASK8 CFE_PLATFORM_SB_FILTER_MASK8
-#define CFE_SB_MEM_BLOCK_SIZE_01 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_01
-#define CFE_SB_MEM_BLOCK_SIZE_02 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_02
-#define CFE_SB_MEM_BLOCK_SIZE_03 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_03
-#define CFE_SB_MEM_BLOCK_SIZE_04 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_04
-#define CFE_SB_MEM_BLOCK_SIZE_05 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_05
-#define CFE_SB_MEM_BLOCK_SIZE_06 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_06
-#define CFE_SB_MEM_BLOCK_SIZE_07 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_07
-#define CFE_SB_MEM_BLOCK_SIZE_08 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_08
-#define CFE_SB_MEM_BLOCK_SIZE_09 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_09
-#define CFE_SB_MEM_BLOCK_SIZE_10 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_10
-#define CFE_SB_MEM_BLOCK_SIZE_11 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_11
-#define CFE_SB_MEM_BLOCK_SIZE_12 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_12
-#define CFE_SB_MEM_BLOCK_SIZE_13 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_13
-#define CFE_SB_MEM_BLOCK_SIZE_14 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_14
-#define CFE_SB_MEM_BLOCK_SIZE_15 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_15
-#define CFE_SB_MEM_BLOCK_SIZE_16 CFE_PLATFORM_SB_MEM_BLOCK_SIZE_16
-#define CFE_SB_MAX_BLOCK_SIZE CFE_PLATFORM_SB_MAX_BLOCK_SIZE
-#define CFE_SB_DEFAULT_REPORT_SENDER CFE_PLATFORM_SB_DEFAULT_REPORT_SENDER
-#define CFE_TIME_CFG_SERVER CFE_PLATFORM_TIME_CFG_SERVER
-#define CFE_TIME_CFG_CLIENT CFE_PLATFORM_TIME_CFG_CLIENT
-#define CFE_TIME_CFG_VIRTUAL CFE_PLATFORM_TIME_CFG_VIRTUAL
-#define CFE_TIME_CFG_SIGNAL CFE_PLATFORM_TIME_CFG_SIGNAL
-#define CFE_TIME_CFG_SOURCE CFE_PLATFORM_TIME_CFG_SOURCE
-#define CFE_TIME_CFG_SRC_MET CFE_PLATFORM_TIME_CFG_SRC_MET
-#define CFE_TIME_CFG_SRC_GPS CFE_PLATFORM_TIME_CFG_SRC_GPS
-#define CFE_TIME_CFG_SRC_TIME CFE_PLATFORM_TIME_CFG_SRC_TIME
-#define CFE_TIME_MAX_DELTA_SECS CFE_PLATFORM_TIME_MAX_DELTA_SECS
-#define CFE_TIME_MAX_DELTA_SUBS CFE_PLATFORM_TIME_MAX_DELTA_SUBS
-#define CFE_TIME_MAX_LOCAL_SECS CFE_PLATFORM_TIME_MAX_LOCAL_SECS
-#define CFE_TIME_MAX_LOCAL_SUBS CFE_PLATFORM_TIME_MAX_LOCAL_SUBS
-#define CFE_TIME_CFG_TONE_LIMIT CFE_PLATFORM_TIME_CFG_TONE_LIMIT
-#define CFE_TIME_CFG_START_FLY CFE_PLATFORM_TIME_CFG_START_FLY
-#define CFE_TIME_CFG_LATCH_FLY CFE_PLATFORM_TIME_CFG_LATCH_FLY
-#define CFE_ES_MAX_APPLICATIONS CFE_PLATFORM_ES_MAX_APPLICATIONS
-#define CFE_ES_MAX_LIBRARIES CFE_PLATFORM_ES_MAX_LIBRARIES
-#define CFE_ES_ER_LOG_ENTRIES CFE_PLATFORM_ES_ER_LOG_ENTRIES
-#define CFE_ES_ER_LOG_MAX_CONTEXT_SIZE CFE_PLATFORM_ES_ER_LOG_MAX_CONTEXT_SIZE
-#define CFE_ES_SYSTEM_LOG_SIZE CFE_PLATFORM_ES_SYSTEM_LOG_SIZE
-#define CFE_ES_OBJECT_TABLE_SIZE CFE_PLATFORM_ES_OBJECT_TABLE_SIZE
-#define CFE_ES_MAX_GEN_COUNTERS CFE_PLATFORM_ES_MAX_GEN_COUNTERS
-#define CFE_ES_APP_SCAN_RATE CFE_PLATFORM_ES_APP_SCAN_RATE
-#define CFE_ES_APP_KILL_TIMEOUT CFE_PLATFORM_ES_APP_KILL_TIMEOUT
-#define CFE_ES_RAM_DISK_SECTOR_SIZE CFE_PLATFORM_ES_RAM_DISK_SECTOR_SIZE
-#define CFE_ES_RAM_DISK_NUM_SECTORS CFE_PLATFORM_ES_RAM_DISK_NUM_SECTORS
-#define CFE_ES_RAM_DISK_PERCENT_RESERVED CFE_PLATFORM_ES_RAM_DISK_PERCENT_RESERVED
-#define CFE_ES_RAM_DISK_MOUNT_STRING CFE_PLATFORM_ES_RAM_DISK_MOUNT_STRING
-#define CFE_ES_CDS_SIZE CFE_PLATFORM_ES_CDS_SIZE
-#define CFE_ES_USER_RESERVED_SIZE CFE_PLATFORM_ES_USER_RESERVED_SIZE
-#define CFE_ES_RESET_AREA_SIZE CFE_PLATFORM_ES_RESET_AREA_SIZE
-#define CFE_ES_NONVOL_STARTUP_FILE CFE_PLATFORM_ES_NONVOL_STARTUP_FILE
-#define CFE_ES_VOLATILE_STARTUP_FILE CFE_PLATFORM_ES_VOLATILE_STARTUP_FILE
-#define CFE_ES_DEFAULT_SHELL_FILENAME CFE_PLATFORM_ES_DEFAULT_SHELL_FILENAME
-#define CFE_ES_MAX_SHELL_CMD CFE_PLATFORM_ES_MAX_SHELL_CMD
-#define CFE_ES_MAX_SHELL_PKT CFE_PLATFORM_ES_MAX_SHELL_PKT
-#define CFE_ES_DEFAULT_APP_LOG_FILE CFE_PLATFORM_ES_DEFAULT_APP_LOG_FILE
-#define CFE_ES_DEFAULT_TASK_LOG_FILE CFE_PLATFORM_ES_DEFAULT_TASK_LOG_FILE
-#define CFE_ES_DEFAULT_SYSLOG_FILE CFE_PLATFORM_ES_DEFAULT_SYSLOG_FILE
-#define CFE_ES_DEFAULT_ER_LOG_FILE CFE_PLATFORM_ES_DEFAULT_ER_LOG_FILE
-#define CFE_ES_DEFAULT_PERF_DUMP_FILENAME CFE_PLATFORM_ES_DEFAULT_PERF_DUMP_FILENAME
-#define CFE_ES_DEFAULT_CDS_REG_DUMP_FILE CFE_PLATFORM_ES_DEFAULT_CDS_REG_DUMP_FILE
-#define CFE_ES_DEFAULT_SYSLOG_MODE CFE_PLATFORM_ES_DEFAULT_SYSLOG_MODE
-#define CFE_ES_PERF_MAX_IDS CFE_PLATFORM_ES_PERF_MAX_IDS
-#define CFE_ES_PERF_DATA_BUFFER_SIZE CFE_PLATFORM_ES_PERF_DATA_BUFFER_SIZE
-#define CFE_ES_PERF_FILTMASK_NONE CFE_PLATFORM_ES_PERF_FILTMASK_NONE
-#define CFE_ES_PERF_FILTMASK_ALL CFE_PLATFORM_ES_PERF_FILTMASK_ALL
-#define CFE_ES_PERF_FILTMASK_INIT CFE_PLATFORM_ES_PERF_FILTMASK_INIT
-#define CFE_ES_PERF_TRIGMASK_NONE CFE_PLATFORM_ES_PERF_TRIGMASK_NONE
-#define CFE_ES_PERF_TRIGMASK_ALL CFE_PLATFORM_ES_PERF_TRIGMASK_ALL
-#define CFE_ES_PERF_TRIGMASK_INIT CFE_PLATFORM_ES_PERF_TRIGMASK_INIT
-#define CFE_ES_PERF_CHILD_PRIORITY CFE_PLATFORM_ES_PERF_CHILD_PRIORITY
-#define CFE_ES_PERF_CHILD_STACK_SIZE CFE_PLATFORM_ES_PERF_CHILD_STACK_SIZE
-#define CFE_ES_PERF_CHILD_MS_DELAY CFE_PLATFORM_ES_PERF_CHILD_MS_DELAY
-#define CFE_ES_PERF_ENTRIES_BTWN_DLYS CFE_PLATFORM_ES_PERF_ENTRIES_BTWN_DLYS
-#define CFE_ES_DEFAULT_STACK_SIZE CFE_PLATFORM_ES_DEFAULT_STACK_SIZE
-#define CFE_ES_EXCEPTION_FUNCTION CFE_PLATFORM_ES_EXCEPTION_FUNCTION
-#define CFE_EVS_START_TASK_PRIORITY CFE_PLATFORM_EVS_START_TASK_PRIORITY
-#define CFE_EVS_START_TASK_STACK_SIZE CFE_PLATFORM_EVS_START_TASK_STACK_SIZE
-#define CFE_SB_START_TASK_PRIORITY CFE_PLATFORM_SB_START_TASK_PRIORITY
-#define CFE_SB_START_TASK_STACK_SIZE CFE_PLATFORM_SB_START_TASK_STACK_SIZE
-#define CFE_ES_START_TASK_PRIORITY CFE_PLATFORM_ES_START_TASK_PRIORITY
-#define CFE_ES_START_TASK_STACK_SIZE CFE_PLATFORM_ES_START_TASK_STACK_SIZE
-#define CFE_TIME_START_TASK_PRIORITY CFE_PLATFORM_TIME_START_TASK_PRIORITY
-#define CFE_TIME_TONE_TASK_PRIORITY CFE_PLATFORM_TIME_TONE_TASK_PRIORITY
-#define CFE_TIME_1HZ_TASK_PRIORITY CFE_PLATFORM_TIME_1HZ_TASK_PRIORITY
-#define CFE_TIME_START_TASK_STACK_SIZE CFE_PLATFORM_TIME_START_TASK_STACK_SIZE
-#define CFE_TIME_TONE_TASK_STACK_SIZE CFE_PLATFORM_TIME_TONE_TASK_STACK_SIZE
-#define CFE_TIME_1HZ_TASK_STACK_SIZE CFE_PLATFORM_TIME_1HZ_TASK_STACK_SIZE
-#define CFE_TBL_START_TASK_PRIORITY CFE_PLATFORM_TBL_START_TASK_PRIORITY
-#define CFE_TBL_START_TASK_STACK_SIZE CFE_PLATFORM_TBL_START_TASK_STACK_SIZE
-#define CFE_ES_CDS_MAX_NUM_ENTRIES CFE_PLATFORM_ES_CDS_MAX_NUM_ENTRIES
-#define CFE_ES_MAX_PROCESSOR_RESETS CFE_PLATFORM_ES_MAX_PROCESSOR_RESETS
-#define CFE_ES_MEM_BLOCK_SIZE_01 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_01
-#define CFE_ES_MEM_BLOCK_SIZE_02 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_02
-#define CFE_ES_MEM_BLOCK_SIZE_03 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_03
-#define CFE_ES_MEM_BLOCK_SIZE_04 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_04
-#define CFE_ES_MEM_BLOCK_SIZE_05 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_05
-#define CFE_ES_MEM_BLOCK_SIZE_06 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_06
-#define CFE_ES_MEM_BLOCK_SIZE_07 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_07
-#define CFE_ES_MEM_BLOCK_SIZE_08 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_08
-#define CFE_ES_MEM_BLOCK_SIZE_09 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_09
-#define CFE_ES_MEM_BLOCK_SIZE_10 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_10
-#define CFE_ES_MEM_BLOCK_SIZE_11 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_11
-#define CFE_ES_MEM_BLOCK_SIZE_12 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_12
-#define CFE_ES_MEM_BLOCK_SIZE_13 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_13
-#define CFE_ES_MEM_BLOCK_SIZE_14 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_14
-#define CFE_ES_MEM_BLOCK_SIZE_15 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_15
-#define CFE_ES_MEM_BLOCK_SIZE_16 CFE_PLATFORM_ES_MEM_BLOCK_SIZE_16
-#define CFE_ES_MAX_BLOCK_SIZE CFE_PLATFORM_ES_MAX_BLOCK_SIZE
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_01 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_01
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_02 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_02
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_03 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_03
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_04 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_04
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_05 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_05
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_06 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_06
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_07 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_07
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_08 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_08
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_09 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_09
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_10 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_10
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_11 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_11
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_12 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_12
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_13 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_13
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_14 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_14
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_15 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_15
-#define CFE_ES_CDS_MEM_BLOCK_SIZE_16 CFE_PLATFORM_ES_CDS_MEM_BLOCK_SIZE_16
-#define CFE_ES_CDS_MAX_BLOCK_SIZE CFE_PLATFORM_ES_CDS_MAX_BLOCK_SIZE
-#define CFE_EVS_MAX_EVENT_FILTERS CFE_PLATFORM_EVS_MAX_EVENT_FILTERS
-#define CFE_EVS_LOG_ON CFE_PLATFORM_EVS_LOG_ON
-#define CFE_EVS_DEFAULT_LOG_FILE CFE_PLATFORM_EVS_DEFAULT_LOG_FILE
-#define CFE_EVS_LOG_MAX CFE_PLATFORM_EVS_LOG_MAX
-#define CFE_EVS_DEFAULT_APP_DATA_FILE CFE_PLATFORM_EVS_DEFAULT_APP_DATA_FILE
-#define CFE_EVS_PORT_DEFAULT CFE_PLATFORM_EVS_PORT_DEFAULT
-#define CFE_EVS_DEFAULT_TYPE_FLAG CFE_PLATFORM_EVS_DEFAULT_TYPE_FLAG
-#define CFE_EVS_DEFAULT_LOG_MODE CFE_PLATFORM_EVS_DEFAULT_LOG_MODE
-#define CFE_EVS_DEFAULT_MSG_FORMAT_MODE CFE_PLATFORM_EVS_DEFAULT_MSG_FORMAT_MODE
-#define CFE_TBL_BUF_MEMORY_BYTES CFE_PLATFORM_TBL_BUF_MEMORY_BYTES
-#define CFE_TBL_MAX_DBL_TABLE_SIZE CFE_PLATFORM_TBL_MAX_DBL_TABLE_SIZE
-#define CFE_TBL_MAX_SNGL_TABLE_SIZE CFE_PLATFORM_TBL_MAX_SNGL_TABLE_SIZE
-#define CFE_TBL_MAX_NUM_TABLES CFE_PLATFORM_TBL_MAX_NUM_TABLES
-#define CFE_TBL_MAX_CRITICAL_TABLES CFE_PLATFORM_TBL_MAX_CRITICAL_TABLES
-#define CFE_TBL_MAX_NUM_HANDLES CFE_PLATFORM_TBL_MAX_NUM_HANDLES
-#define CFE_TBL_MAX_SIMULTANEOUS_LOADS CFE_PLATFORM_TBL_MAX_SIMULTANEOUS_LOADS
-#define CFE_TBL_MAX_NUM_VALIDATIONS CFE_PLATFORM_TBL_MAX_NUM_VALIDATIONS
-#define CFE_TBL_DEFAULT_REG_DUMP_FILE CFE_PLATFORM_TBL_DEFAULT_REG_DUMP_FILE
-#define CFE_TBL_VALID_SCID_COUNT CFE_PLATFORM_TBL_VALID_SCID_COUNT
-#define CFE_TBL_U32FROM4CHARS CFE_PLATFORM_TBL_U32FROM4CHARS
-#define CFE_TBL_VALID_SCID_1 CFE_PLATFORM_TBL_VALID_SCID_1
-#define CFE_TBL_VALID_SCID_2 CFE_PLATFORM_TBL_VALID_SCID_2
-#define CFE_TBL_VALID_PRID_COUNT CFE_PLATFORM_TBL_VALID_PRID_COUNT
-#define CFE_TBL_VALID_PRID_1 CFE_PLATFORM_TBL_VALID_PRID_1
-#define CFE_TBL_VALID_PRID_2 CFE_PLATFORM_TBL_VALID_PRID_2
-#define CFE_TBL_VALID_PRID_3 CFE_PLATFORM_TBL_VALID_PRID_3
-#define CFE_TBL_VALID_PRID_4 CFE_PLATFORM_TBL_VALID_PRID_4
-#define CFE_ES_STARTUP_SYNC_POLL_MSEC CFE_PLATFORM_ES_STARTUP_SYNC_POLL_MSEC
-#define CFE_CORE_MAX_STARTUP_MSEC CFE_PLATFORM_CORE_MAX_STARTUP_MSEC
-#define CFE_ES_STARTUP_SCRIPT_TIMEOUT_MSEC CFE_PLATFORM_ES_STARTUP_SCRIPT_TIMEOUT_MSEC
-
-/*
- * This was previously configurable, now fixed.
- * Keeping it here will trigger a "redefined" warning if some mission
- * had configured it as "false" for some reason.
- */
-#define CFE_TIME_ENA_1HZ_CMD_PKT true
-
-#endif /* CFE_OMIT_DEPRECATED_6_6 */
-
-#endif /* _cfe_platform_cfg_ */
-
diff --git a/fsw/nos3_defs/default_osconfig.cmake b/fsw/nos3_defs/default_osconfig.cmake
new file mode 100644
index 00000000..1f2bed60
--- /dev/null
+++ b/fsw/nos3_defs/default_osconfig.cmake
@@ -0,0 +1,210 @@
+##########################################################################
+#
+# CFE configuration options for OSAL
+#
+# This file specifies the default values for various compile-time options
+# supported by OSAL. These options can be further tuned by the specific
+# OSAL and BSP selection, as well as the user application.
+#
+##########################################################################
+
+
+##############################################################
+# Code/Feature Selection Options for the OSAL implementation
+##############################################################
+
+
+# OSAL_CONFIG_INCLUDE_NETWORK
+# ----------------------------------
+#
+# Whether to include the Network API
+#
+# If set TRUE, the the socket abstraction (if applicable on the platform)
+# will be included. If set FALSE, then all calls to the network API will
+# return OS_ERR_NOT_IMPLEMENTED.
+#
+# This can be set FALSE for platforms which do not have a network or
+# IP stack available, or to save code space if the application does
+# not use network resources.
+#
+set(OSAL_CONFIG_INCLUDE_NETWORK TRUE)
+
+
+#
+# OSAL_CONFIG_INCLUDE_DYNAMIC_LOADER
+# ----------------------------------
+#
+# Whether to include the capability of loading dynamic code objects
+#
+# This is normally set TRUE to support modularized applications on
+# platforms which have this capability.
+#
+# For deployments which are always statically linked, this may be set
+# FALSE for a smaller library size and reduced linking requirements.
+#
+set(OSAL_CONFIG_INCLUDE_DYNAMIC_LOADER TRUE)
+
+
+#
+# OSAL_CONFIG_INCLUDE_STATIC_LOADER
+# ----------------------------------
+#
+# Whether to include a compatibility "loader" for statically-linked objects
+#
+# This feature allows applications normally written for dynamic module loading
+# operate transparently in a static link environment. If this is set TRUE,
+# then the application must supply an object named "OS_STATIC_SYMBOL_TABLE" that
+# contains the names and addresses of statically-linked symbols that should
+# be known to the lookup/load functions.
+#
+# Note that modules "loaded" using this abstraction are still assigned a
+# module ID and still require a slot in the module table even though
+# no actual runtime loading is performed (see OSAL_CONFIG_MAX_MODULES).
+#
+set(OSAL_CONFIG_INCLUDE_STATIC_LOADER TRUE)
+
+#
+# OSAL_CONFIG_INCLUDE_SHELL
+# ----------------------------------
+#
+# Whether to include features which utilize the operating system shell.
+#
+# Remote Shell commands can be very powerful tool for remotely diagnosing
+# and mitigating runtime issues in the field, but also have significant
+# security implications. If this is set to "false" then shell functionality
+# is disabled and OSAL functions which invoke the shell will return
+# OS_ERR_NOT_IMPLEMENTED.
+#
+set(OSAL_CONFIG_INCLUDE_SHELL FALSE)
+
+
+#
+# OSAL_CONFIG_DEBUG_PERMISSIVE_MODE
+# ----------------------------------
+#
+# The OSAL_CONFIG_DEBUG_PERMISSIVE_MODE option controls how privileged operations
+# are handled by the OSAL in the event that the user does not have sufficient permission.
+# In particular this applies to task priorities and message queues.
+#
+# If set FALSE, then all permissions are enforced, and a failure due to lack of permission
+# will cause a failure of the overall operation, which is passed back to the application.
+#
+# If set to TRUE, this will treat some errors non-fatal and enable a graceful fallback,
+# allowing the overall operation to complete in a reduced form. This makes the
+# OSAL library compatible with a non-root (normal user mode) environment.
+#
+# In the PC-Linux/Posix build, this means:
+# - A message queue deeper than the maximum system limit will be silently truncated
+# to the maximum system limit (no error).
+# - If the user does not have permission to create elevated priority tasks, then the tasks will
+# be created at the default priority (no error).
+#
+set(OSAL_CONFIG_DEBUG_PERMISSIVE_MODE TRUE)
+
+#
+# OSAL_CONFIG_DEBUG_PRINTF
+# ----------------------------------
+#
+# Controls inclusion of OS_DEBUG statements in the code
+#
+# If set FALSE, all OS_DEBUG statements are compiled out.
+#
+# If set TRUE, all the "OS_DEBUG" statements will be compiled in and displayed
+# on the debug console. The statements may still be suppressed at runtime.
+#
+set(OSAL_CONFIG_DEBUG_PRINTF TRUE)
+
+
+#############################################
+# Resource Limits for the OS API
+#############################################
+
+# The maximum number of concurrently-running tasks to support
+set(OSAL_CONFIG_MAX_TASKS 128)
+
+# The maximum number of queues to support
+set(OSAL_CONFIG_MAX_QUEUES 128)
+
+# The maximum number of counting semaphores to support
+set(OSAL_CONFIG_MAX_COUNT_SEMAPHORES 45)
+
+# The maximum number of binary semaphores to support
+set(OSAL_CONFIG_MAX_BIN_SEMAPHORES 45)
+
+# The maximum number of mutexes to support
+set(OSAL_CONFIG_MAX_MUTEXES 45)
+
+# The maximum number of loadable modules to support
+# Note that emulating module loading for statically-linked objects also
+# requires a slot in this table, as it still assigns an OSAL ID.
+set(OSAL_CONFIG_MAX_MODULES 64)
+
+# The maximum number of time base objects (reference for timers)
+set(OSAL_CONFIG_MAX_TIMEBASES 5)
+
+# The maximum number of user timers / app callbacks that can be registered
+set(OSAL_CONFIG_MAX_TIMERS 10)
+
+# The maximum number of concurrently open file descriptors to support
+set(OSAL_CONFIG_MAX_NUM_OPEN_FILES 50)
+
+# The maximum number of concurrently open directory descriptors to support
+set(OSAL_CONFIG_MAX_NUM_OPEN_DIRS 4)
+
+# The maximum number of file systems that can be managed by OSAL
+set(OSAL_CONFIG_MAX_FILE_SYSTEMS 14)
+
+# The maximum length for a file name, including any extension
+# (This does not include the directory part)
+# This length must include an extra character for NULL termination.
+set(OSAL_CONFIG_MAX_FILE_NAME 28)
+
+# Maximum length for an virtual path name (virtual directory + file)
+# This length must include an extra character for NULL termination.
+set(OSAL_CONFIG_MAX_PATH_LEN 64)
+
+# Maximum length allowed for a object (task,queue....) name
+# This length must include an extra character for NULL termination.
+set(OSAL_CONFIG_MAX_API_NAME 20)
+
+# Maximum length of a symbol name for OS_SymbolLookup()
+# This length must include an extra character for NULL termination.
+set(OSAL_CONFIG_MAX_SYM_LEN 64)
+
+# Maximum length of a network socket address
+# This is only relevant if network support is included, and the
+# required length depends on the address families in use
+set(OSAL_CONFIG_SOCKADDR_MAX_LEN 28)
+
+# Maximum length of a single message produced by OS_printf()
+set(OSAL_CONFIG_PRINTF_BUFFER_SIZE 172)
+
+# Maximum number of OS_printf() messages that will be buffered
+set(OSAL_CONFIG_PRINTF_BUFFER_DEPTH 100)
+
+# Priority level of a console output helper task
+#
+# Set logically low (high number) to maximize performance.
+# - Messages from OS_printf() may show on the console with some delay
+# but should have minimal impact to real time tasks.
+#
+# Set logically high (low number) for debugging
+# - Messages from OS_printf() will have more timely output, but may
+# adversely impact real time tasks.
+set(OSAL_CONFIG_UTILITYTASK_PRIORITY 245)
+
+# Stack size of console output task.
+#
+# This applies to RTOS layers with precise stack control,
+# normally not necessary to change this unless the task implementation
+# changes.
+set(OSAL_CONFIG_UTILITYTASK_STACK_SIZE 2048)
+
+# The size of a command that can be passed to the underlying OS
+# This length must include an extra character for NULL termination.
+set(OSAL_CONFIG_MAX_CMD_LEN 1000)
+
+# The maximum depth of an OSAL message queue.
+# On some implementations this may affect the overall OSAL memory footprint
+# so it may be beneficial to set this limit accordingly.
+set(OSAL_CONFIG_QUEUE_MAX_DEPTH 1024)
diff --git a/fsw/nos3_defs/global_build_options.cmake b/fsw/nos3_defs/global_build_options.cmake
new file mode 100644
index 00000000..642b0008
--- /dev/null
+++ b/fsw/nos3_defs/global_build_options.cmake
@@ -0,0 +1,25 @@
+#
+# Example global_build_options.cmake
+# ----------------------------------
+#
+# This may set global definitions that apply to ALL targets in ALL scopes,
+# including FSW code that is cross-compiled for a target as well as code
+# built for the development host itself (native).
+#
+# As such, it should only invoke basic commands that have wide applicability,
+# such as "add_definitions()" for macro definitions that should be set
+# globally. It should not include any compiler-specific options that might
+# change between compiler vendors or target processor families.
+#
+
+# If the OMIT_DEPRECATED flag is specified, then define the respective macros
+# that omit the deprecated features from the build. This is conditional in this
+# example for CI purposes, so it can be tested both ways. Most projects would
+# likely set this only one way.
+set(OMIT_DEPRECATED $ENV{OMIT_DEPRECATED} CACHE STRING "Omit deprecated elements")
+if (OMIT_DEPRECATED)
+ message (STATUS "OMIT_DEPRECATED=true: Not including deprecated elements in build")
+ add_definitions(-DCFE_OMIT_DEPRECATED_6_7 -DCFE_OMIT_DEPRECATED_6_6 -DOSAL_OMIT_DEPRECATED)
+else()
+ message (STATUS "OMIT_DEPRECATED=false: Deprecated elements included in build")
+endif (OMIT_DEPRECATED)
diff --git a/fsw/nos3_defs/mission_build_custom.cmake b/fsw/nos3_defs/mission_build_custom.cmake
new file mode 100644
index 00000000..92506bc9
--- /dev/null
+++ b/fsw/nos3_defs/mission_build_custom.cmake
@@ -0,0 +1,28 @@
+#
+# Example mission_build_custom.cmake
+# ----------------------------------
+#
+# This file will be automatically included in the top level ("mission") build scope
+#
+# Definitions and options specified here will be used when building local tools and
+# other code that runs on the development host, but do _NOT_ apply to flight software
+# (embedded) code or anything built for the target machine.
+#
+# These options assume a GCC toolchain but a similar set should be applicable to clang.
+#
+add_compile_options(
+ -std=c99 # Target the C99 standard (without gcc extensions)
+ -pedantic # Issue all the warnings demanded by strict ISO C
+ -Wall # Warn about most questionable operations
+ -Wstrict-prototypes # Warn about missing prototypes
+ -Wwrite-strings # Warn if not treating string literals as "const"
+ -Wpointer-arith # Warn about suspicious pointer operations
+ -Wcast-align # Warn about casts that increase alignment requirements
+ -Werror # Treat warnings as errors (code should be clean)
+)
+
+# The _XOPEN_SOURCE directive is required for glibc to enable conformance with the
+# the X/Open standard version 6, which includes POSIX.1c as well as SUSv2/UNIX98 extensions.
+add_definitions(
+ -D_XOPEN_SOURCE=600
+)
diff --git a/fsw/nos3_defs/native_osconfig.cmake b/fsw/nos3_defs/native_osconfig.cmake
new file mode 100644
index 00000000..2ddb5f8e
--- /dev/null
+++ b/fsw/nos3_defs/native_osconfig.cmake
@@ -0,0 +1,5 @@
+#
+# OSAL configuration addendum when building with SIMULATION=native
+# In this mode, enable the PERMISSIVE option, which allows for easier testing.
+#
+set(OSAL_CONFIG_DEBUG_PERMISSIVE_MODE TRUE)
diff --git a/fsw/nos3_defs/nos3_mission_cfg.h b/fsw/nos3_defs/nos3_mission_cfg.h
index 1207139a..e4337bcb 100644
--- a/fsw/nos3_defs/nos3_mission_cfg.h
+++ b/fsw/nos3_defs/nos3_mission_cfg.h
@@ -60,11 +60,9 @@
**
** \par Limits
** All versions of the cFE currently support only CCSDS as the message format
-** Defining only MESSAGE_FORMAT_IS_CCSDS implements the 11 bit APID format in the primary header
-** Also defining MESSAGE_FORMAT_IS_CCSDS_VER_2 implements the APID extended header format
-** MESSAGE_FORMAT_IS_CCSDS must be defined for all cFE deployments. MESSAGE_FORMAT_IS_CCSDS_VER_2 is optional
+** Defining MESSAGE_FORMAT_IS_CCSDS_VER_2 implements the APID extended header format
+** MESSAGE_FORMAT_IS_CCSDS_VER_2 is optional
*/
-#define MESSAGE_FORMAT_IS_CCSDS
/* #define MESSAGE_FORMAT_IS_CCSDS_VER_2 */
#undef MESSAGE_FORMAT_IS_CCSDS_VER_2
@@ -218,13 +216,13 @@
** \par Limits
** Not Applicable
*/
-#define CFE_MISSION_TIME_DEF_MET_SECS 1000
+#define CFE_MISSION_TIME_DEF_MET_SECS 0
#define CFE_MISSION_TIME_DEF_MET_SUBS 0
-#define CFE_MISSION_TIME_DEF_STCF_SECS 1000000
+#define CFE_MISSION_TIME_DEF_STCF_SECS 0
#define CFE_MISSION_TIME_DEF_STCF_SUBS 0
-#define CFE_MISSION_TIME_DEF_LEAPS 32
+#define CFE_MISSION_TIME_DEF_LEAPS 37
#define CFE_MISSION_TIME_DEF_DELAY_SECS 0
#define CFE_MISSION_TIME_DEF_DELAY_SUBS 1000
@@ -244,7 +242,7 @@
** Minute - 0 to 59
** Second - 0 to 59
*/
-#define CFE_MISSION_TIME_EPOCH_YEAR 1980
+#define CFE_MISSION_TIME_EPOCH_YEAR 2000
#define CFE_MISSION_TIME_EPOCH_DAY 1
#define CFE_MISSION_TIME_EPOCH_HOUR 0
#define CFE_MISSION_TIME_EPOCH_MINUTE 0
@@ -266,8 +264,8 @@
**
** Worksheet:
**
-** S/C epoch = Jan 1, 2005 (LRO ground system epoch)
-** FS epoch = Jan 1, 1980 (vxWorks DOS file system epoch)
+** S/C epoch = Jan 1, 2000 (GTOSat ground system epoch)
+** FS epoch = Jan 1, 1988 (RTEMS file system epoch)
**
** Delta = 25 years, 0 days, 0 hours, 0 minutes, 0 seconds
**
@@ -279,15 +277,15 @@
** 1 hour = 3,600 seconds
** 1 minute = 60 seconds
**
-** 25 years = 788,400,000 seconds
-** 7 extra leap days = 604,800 seconds
+** 12 years = 378,432,000 seconds
+** 4 extra leap days = 345,600 seconds
**
-** total delta = 789,004,800 seconds
+** total delta = 378,777,600 seconds
**
** \par Limits
** Not Applicable
*/
-#define CFE_MISSION_TIME_FS_FACTOR 789004800
+#define CFE_MISSION_TIME_FS_FACTOR 378777600
/**
@@ -300,7 +298,9 @@
**
**
** \par Limits
-** Not Applicable
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
+**
*/
#define CFE_MISSION_ES_CDS_MAX_NAME_LENGTH 16
@@ -310,7 +310,7 @@
** \cfeevscfg Maximum Event Message Length
**
** \par Description:
-** Indicates the maximum length (in characers) of the formatted text
+** Indicates the maximum length (in characters) of the formatted text
** string portion of an event message
**
** \par Limits
@@ -349,7 +349,8 @@
** form: "ApplicationName.TblName"
**
** \par Limits
-** Not Applicable
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
*/
#define CFE_MISSION_TBL_MAX_NAME_LENGTH 16
@@ -421,6 +422,8 @@
#define CFE_MISSION_TBL_SEND_HK_MSG 12
#define CFE_MISSION_TIME_SEND_HK_MSG 13
+#define CFE_MISSION_SB_SUB_RPT_CTRL_MSG 14
+
#define CFE_MISSION_TIME_TONE_CMD_MSG 16
#define CFE_MISSION_TIME_1HZ_CMD_MSG 17
@@ -500,6 +503,8 @@
** Note this affects the size of messages, so it must not cause any message
** to exceed the max length.
**
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
*/
#define CFE_MISSION_ES_MAX_SHELL_CMD 64
@@ -522,6 +527,9 @@
** Note this affects the size of messages, so it must not cause any message
** to exceed the max length.
**
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
+**
*/
#define CFE_MISSION_ES_MAX_SHELL_PKT 64
@@ -547,7 +555,8 @@
**
** \par Description:
** Indicates the maximum length (in characters) of the entire table name
-** within software bus messages
+** within software bus messages, in "AppName.TableName" notation.
+**
** This affects the layout of command/telemetry messages but does not affect run
** time behavior or internal allocation.
**
@@ -556,8 +565,10 @@
** Note this affects the size of messages, so it must not cause any message
** to exceed the max length.
**
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
*/
-#define CFE_MISSION_TBL_MAX_FULL_NAME_LEN (CFE_MISSION_TBL_MAX_NAME_LENGTH + CFE_MISSION_MAX_API_LEN + 2)
+#define CFE_MISSION_TBL_MAX_FULL_NAME_LEN (CFE_MISSION_TBL_MAX_NAME_LENGTH + CFE_MISSION_MAX_API_LEN + 4)
/**
** \cfesbcfg Maximum Number of pipes that SB command/telemetry messages may hold
@@ -578,43 +589,76 @@
/**
-** \cfemissioncfg cFE Maximum length for filenames in messages
+** \cfemissioncfg cFE Maximum length for pathnames within data exchange structures
**
** \par Description:
-** The value of this constant dictates the size of filenames within SB messages.
+** The value of this constant dictates the size of pathnames within all structures
+** used for external data exchange, such as Software bus messages and table definitions.
** This is typically the same as OS_MAX_PATH_LEN but that is OSAL dependent --
** and as such it definable on a per-processor/OS basis and hence may be different
-** across multiple processors. Since this defines a message format, it must be
-** consistent across ALL processors exchanging SB messages.
+** across multiple processors. It is recommended to set this to the value of the
+** largest OS_MAX_PATH_LEN in use on any CPU on the mission.
**
-** This affects the layout of command/telemetry messages but does not affect run
-** time behavior or internal allocation.
+** This affects only the layout of command/telemetry messages and table definitions;
+** internal allocation may use the platform-specific OS_MAX_PATH_LEN value.
**
** \par Limits
-** All CPUs within the same SB domain (mission) must share the same definition
+** All CPUs within the same SB domain (mission) and ground tools must share the
+** same definition.
** Note this affects the size of messages, so it must not cause any message
** to exceed the max length.
**
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
*/
#define CFE_MISSION_MAX_PATH_LEN 64
/**
-** \cfemissioncfg cFE Maximum length for API names in messages
+** \cfemissioncfg cFE Maximum length for filenames within data exchange structures
+**
+** \par Description:
+** The value of this constant dictates the size of filenames within all structures
+** used for external data exchange, such as Software bus messages and table definitions.
+** This is typically the same as OS_MAX_FILE_LEN but that is OSAL dependent --
+** and as such it definable on a per-processor/OS basis and hence may be different
+** across multiple processors. It is recommended to set this to the value of the
+** largest OS_MAX_FILE_LEN in use on any CPU on the mission.
+**
+** This affects only the layout of command/telemetry messages and table definitions;
+** internal allocation may use the platform-specific OS_MAX_FILE_LEN value.
+**
+** \par Limits
+** All CPUs within the same SB domain (mission) and ground tools must share the
+** same definition.
+** Note this affects the size of messages, so it must not cause any message
+** to exceed the max length.
+**
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
+*/
+#define CFE_MISSION_MAX_FILE_LEN 20
+
+/**
+** \cfemissioncfg cFE Maximum length for API names within data exchange structures
**
** \par Description:
-** The value of this constant dictates the size of API names within SB messages.
+** The value of this constant dictates the size of filenames within all structures
+** used for external data exchange, such as Software bus messages and table definitions.
** This is typically the same as OS_MAX_API_LEN but that is OSAL dependent --
** and as such it definable on a per-processor/OS basis and hence may be different
-** across multiple processors.
+** across multiple processors. It is recommended to set this to the value of the
+** largest OS_MAX_API_LEN in use on any CPU on the mission.
**
-** This affects the layout of command/telemetry messages but does not affect run
-** time behavior or internal allocation.
+** This affects only the layout of command/telemetry messages and table definitions;
+** internal allocation may use the platform-specific OS_MAX_API_LEN value.
**
** \par Limits
** All CPUs within the same SB domain (mission) must share the same definition
** Note this affects the size of messages, so it must not cause any message
** to exceed the max length.
**
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
*/
#define CFE_MISSION_MAX_API_LEN 20
@@ -632,8 +676,11 @@
** All CPUs within the same SB domain (mission) must share the same definition
** Note this affects the size of messages, so it must not cause any message
** to exceed the max length.
+**
+** This value should be kept as a multiple of 4, to maintain alignment of
+** any possible neighboring fields without implicit padding.
*/
-#define CFE_MISSION_ES_CDS_MAX_NAME_LEN (CFE_MISSION_ES_CDS_MAX_NAME_LENGTH + CFE_MISSION_MAX_API_LEN + 2)
+#define CFE_MISSION_ES_CDS_MAX_NAME_LEN (CFE_MISSION_ES_CDS_MAX_NAME_LENGTH + CFE_MISSION_MAX_API_LEN + 4)
/*
diff --git a/fsw/nos3_defs/tables/cf_cfgtable.c b/fsw/nos3_defs/tables/cf_cfgtable.c
new file mode 100644
index 00000000..f0945f24
--- /dev/null
+++ b/fsw/nos3_defs/tables/cf_cfgtable.c
@@ -0,0 +1,371 @@
+/************************************************************************
+** File:
+** $Id: cf_cfgtable.c 1.8.1.1 2015/03/06 15:30:28EST sstrege Exp $
+**
+** Copyright � 2007-2014 United States Government as represented by the
+** Administrator of the National Aeronautics and Space Administration.
+** All Other Rights Reserved.
+**
+** This software was created at NASA's Goddard Space Flight Center.
+** This software is governed by the NASA Open Source Agreement and may be
+** used, distributed and modified only pursuant to the terms of that
+** agreement.
+**
+** Purpose:
+** The CFDP (CF) Application Configuration Table Definition
+**
+** Notes:
+** The configuration parameters in the comments below are defined in the
+** platform cfg file and dictate the size of the table.
+** It is required that the 'max' number be defined in the table.
+** Mark unused elements as 'CF_ENTRY_UNUSED'.
+** CF_MAX_PLAYBACK_CHANNELS
+** CF_MAX_POLLING_DIRS_PER_CHAN
+**
+** $Log: cf_cfgtable.c $
+** Revision 1.8.1.1 2015/03/06 15:30:28EST sstrege
+** Added copyright information
+** Revision 1.8 2011/05/09 11:52:12EDT rmcgraw
+** DCR13317:1 Allow Destintaion path to be blank
+** Revision 1.7 2010/11/02 10:15:43EDT rmcgraw
+** DCR12802:1 Moved peer entity ID from channels section to polling section
+** Revision 1.6 2010/10/25 11:21:50EDT rmcgraw
+** DCR12573:1 Changes to allow more than one incoming PDU MsgId
+** Revision 1.5 2010/07/20 14:37:39EDT rmcgraw
+** Dcr11510:1 Remove Downlink buffer references
+** Revision 1.4 2010/07/07 17:43:15EDT rmcgraw
+** DCR11510:1 Removed TmpPath
+** Revision 1.3 2010/04/23 14:52:47EDT rmcgraw
+** DCR11510:1 Made to match the platform cfg settings
+** Revision 1.2 2010/03/12 12:14:34EST rmcgraw
+** DCR11510:1 Initial check-in towards CF Version 1000
+** Revision 1.1 2009/11/24 12:49:24EST rmcgraw
+** Initial revision
+** Member added to CFS CF project
+**
+*************************************************************************/
+
+
+/************************************************************************
+** Includes
+*************************************************************************/
+#include "cfe.h"
+#include "cfe_tbl_filedef.h"
+#include "cf_tbldefs.h"
+#include "cf_platform_cfg.h"
+#include "cf_msgids.h"
+#include "cf_defs.h"
+
+static CFE_TBL_FileDef_t CFE_TBL_FileDef =
+{
+ "CF_ConfigTable", "CF.ConfigTable", "CF Config Tbl",
+ "cf_cfgtable.tbl", sizeof (cf_config_table_t)
+};
+
+
+/*
+** Sample playback table data - See NOTE Above
+*/
+
+cf_config_table_t CF_ConfigTable =
+{
+
+ "Sample CF Table",/* TableIdString */
+ 2, /* TableVersion (integer) */
+ 4, /* NumEngCyclesPerWakeup */
+ 2, /* NumWakeupsPerQueueChk */
+ 16, /* NumWakeupsPerPollDirChk */
+ 100, /* UplinkHistoryQDepth */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ "10", /* AckTimeout (secs, entered as string) */
+ "25", /* AckLimit (max timeouts, string) */
+ "5", /* NakTimeout (secs, string) */
+ "25", /* NakLimit (max timeouts, string) */
+ "30", /* InactivityTimeout (secs, string) */
+ "200", /* OutgoingFileChunkSize (bytes, string)*/
+ "no", /* SaveIncompleteFiles (yes,no, string) */
+ "0.24", /* Flight EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+
+ { /* Input Channel Array */
+
+ { /* Input Channel 0 */
+
+ CF_INCOMING_PDU_MID,
+ 0, /* Output Chan for Class 2 Uplink Responses, ACK-EOF,Nak,Fin etc) */
+ 0, /* spare */
+
+ }, /* end Input Channel 0 */
+
+ }, /* end Input Channel Array */
+
+ { /* Playback Channel Array */
+
+ { /* Playback Channel #0 */
+ CF_ENTRY_IN_USE, /* Playback Channel Entry In Use */
+ CF_ENABLED, /* Dequeue Enable */
+ CF_SPACE_TO_GND_PDU_MID, /* Space To Gnd PDU MsgId */
+ 100, /* Pending Queue Depth */
+ 100, /* History Queue Depth */
+ "TOPBOutputChan0", /* Playback Channel Name */
+ "CFTOSemId", /* Handshake Semaphore Name */
+
+ { /* Polling Directory Array */
+
+ { /* Polling Directory 0 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 5, /* Priority */
+ CF_KEEP_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll0/", /* SrcPath, no spaces, fwd slash at end */
+ "cftesting/", /* DstPath, no spaces */
+ },/* End Polling Directory 0 */
+
+ { /* Polling Directory 1 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_KEEP_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll1/", /* SrcPathname */
+ "/gnd/", /* DestPathname */
+
+ },/* End Polling Directory 1 */
+
+
+ { /* Polling Directory 2 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 5, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll2/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ },/* End Polling Directory 2 */
+
+ { /* Polling Directory 3 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_KEEP_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll3/", /* SrcPathname */
+ "/gnd/", /* DestPathname */
+
+ },/* End Polling Directory 3 */
+
+ { /* Polling Directory 4 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 5, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll4/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ },/* End Polling Directory 4 */
+
+ { /* Polling Directory 5 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_KEEP_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll5/", /* SrcPathname */
+ "/gnd/", /* DestPathname */
+
+ },/* End Polling Directory 5 */
+
+ { /* Polling Directory 6 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 5, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll6/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ },/* End Polling Directory 6 */
+
+ { /* Polling Directory 7 */
+ CF_ENTRY_IN_USE,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_KEEP_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch0poll7/", /* SrcPathname */
+ "/gnd/", /* DestPathname */
+
+ },/* End Polling Directory 7 */
+
+ }, /* End Polling Directory Array */
+
+ }, /* End Playback Channel #0 */
+
+
+ { /* Playback Channel #1 */
+ CF_ENTRY_UNUSED, /* Playback Channel Entry In Use */
+ CF_DISABLED, /* Dequeue Enable */
+ CF_SPACE_TO_GND_PDU_MID, /* Space To Gnd PDU MsgId */
+ 100, /* Pending Queue Depth */
+ 100, /* History Queue Depth */
+ "TOPBOutputChan0", /* Playback Channel Name */
+ "CFTOSemId", /* Handshake Semaphore Name */
+
+ { /* Polling Directory Array */
+
+ { /* Polling Directory 0 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll0/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ },/* End Polling Directory 0 */
+
+ { /* Polling Directory 1 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll1/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ }, /* End Polling Directory 1 */
+
+ { /* Polling Directory 2 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll2/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ },/* End Polling Directory 2 */
+
+ { /* Polling Directory 3 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll3/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ }, /* End Polling Directory 3 */
+
+ { /* Polling Directory 4 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll4/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ },/* End Polling Directory 4 */
+
+ { /* Polling Directory 5 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll5/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ }, /* End Polling Directory 5 */
+
+ { /* Polling Directory 6 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll6/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ },/* End Polling Directory 6 */
+
+ { /* Polling Directory 7 */
+ CF_ENTRY_UNUSED,/* Poll Directory In Use or Not */
+ CF_DISABLED, /* Enable State */
+ 1, /* Class (1 or 2)*/
+ 0, /* Priority */
+ CF_DELETE_FILE, /* Preserve files after successful transfer? */
+ 0, /* Reserved1 */
+ 0, /* Reserved2 */
+ 0, /* Reserved3 */
+ "0.23", /* Gnd EntityId - 2 byte dotted-decimal string eg. "0.255"*/
+ "/cf/ch1poll7/", /* SrcPathname */
+ "cftesting/", /* DstPathname */
+ }, /* End Polling Directory 7 */
+
+ }, /* End Polling Directory Array */
+
+ }, /* End Playback Channel #1 */
+
+ }, /* End Playback Channel Array */
+
+}; /* End CF_ConfigTable */
+
+
+/************************/
+/* End of File Comment */
+/************************/
diff --git a/fsw/nos3_defs/tables/ds_file_tbl.c b/fsw/nos3_defs/tables/ds_file_tbl.c
new file mode 100644
index 00000000..5b50fa83
--- /dev/null
+++ b/fsw/nos3_defs/tables/ds_file_tbl.c
@@ -0,0 +1,314 @@
+/************************************************************************
+** File: ds_file_tbl.c
+**
+** File: ds_file_tbl.c
+**
+** NASA Docket No. GSC-18448-1, and identified as "cFS Data Storage (DS)
+** application version 2.5.2”
+**
+** Copyright © 2019 United States Government as represented by the Administrator
+** of the National Aeronautics and Space Administration. All Rights Reserved.
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+** http://www.apache.org/licenses/LICENSE-2.0
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+**
+**
+** Purpose:
+** CFS Data Storage (DS) sample destination file table
+**
+** Note:
+** This source file creates a sample table that defines several
+** data storage destination files using a variety of the options
+** available. None of the file system details (name, size, etc.)
+** are known at this time for the target platform. Therefore,
+** the file pathnames are set to "set_by_cmd_b4_enable" which
+** indicates that pathnames must be set by command before trying
+** to enable any of the destination files. Max file size values
+** should also be modified via command before using this table.
+**
+** Obviously, a better solution is to replace this sample table
+** and the sample packet filter table (which references this
+** table) with mission specific versions that define the data
+** storage behavior appropriate for the platform.
+**
+** But, as long as the target platform has a file system, the
+** sample data storage tables may be used to demonstrate data
+** storage.
+**
+*************************************************************************/
+
+#include "cfe.h"
+#include "cfe_tbl_filedef.h"
+#include "ds_platform_cfg.h"
+#include "ds_appdefs.h"
+#include "ds_app.h"
+#include "ds_msg.h"
+#include "ds_indices.h"
+
+/*
+** Sample Destination File Table Data
+*/
+DS_DestFileTable_t DS_DestFileTable =
+{
+ /* .Descriptor = */ "Sample File Table Data",
+ /* .File = */
+ {
+ /* File Index 00 -- Event Packets */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ "/data/evs",
+ /* .Basename = */ "evs",
+ /* .Extension = */ ".ds",
+
+ /* .FileNameType = */ DS_BY_TIME,
+ /* .EnableState = */ DS_ENABLED,
+ /* .MaxFileSize = */ (1024 * 1024 * 4), /* 4 M-bytes */
+ /* .MaxFileAge = */ (60 * 60 * 24), /* 24 hours */
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 01 -- Camera */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ "/data/cam",
+ /* .Basename = */ "cam",
+ /* .Extension = */ ".ds",
+
+ /* .FileNameType = */ DS_BY_TIME,
+ /* .EnableState = */ DS_ENABLED,
+ /* .MaxFileSize = */ (1024 * 1024 * 4), /* 4 M-bytes */
+ /* .MaxFileAge = */ (60 * 10), /* 10 min */
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 02 -- Housekeeping */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ "/data/hk",
+ /* .Basename = */ "hk",
+ /* .Extension = */ ".ds",
+
+ /* .FileNameType = */ DS_BY_TIME,
+ /* .EnableState = */ DS_ENABLED,
+ /* .MaxFileSize = */ (1024 * 1024 * 4), /* 4 M-bytes */
+ /* .MaxFileAge = */ (60 * 60 * 24), /* 24 hours */
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 03 - Sample Instrument */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ "/data/inst",
+ /* .Basename = */ "inst",
+ /* .Extension = */ ".ds",
+
+ /* .FileNameType = */ DS_BY_TIME,
+ /* .EnableState = */ DS_ENABLED,
+ /* .MaxFileSize = */ (1024 * 1024 * 4), /* 4 M-bytes */
+ /* .MaxFileAge = */ (60 * 60 * 24), /* 24 hours */
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 04 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 05 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 06 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 07 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 08 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 09 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 10 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 11 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 12 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 13 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 14 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ /* File Index 15 */
+ {
+#if (DS_MOVE_FILES == TRUE)
+ /* .Movename = */ DS_EMPTY_STRING,
+#endif
+ /* .Pathname = */ DS_EMPTY_STRING,
+ /* .Basename = */ DS_EMPTY_STRING,
+ /* .Extension = */ DS_EMPTY_STRING,
+
+ /* .FileNameType = */ DS_UNUSED,
+ /* .EnableState = */ DS_UNUSED,
+ /* .MaxFileSize = */ DS_UNUSED,
+ /* .MaxFileAge = */ DS_UNUSED,
+ /* .SequenceCount = */ DS_UNUSED,
+ },
+ }
+};
+
+/*
+** Sample Destination File Table Header
+*/
+CFE_TBL_FILEDEF(DS_DestFileTable, DS.FILE_TBL, DS Destination File Table,ds_file_tbl.tbl)
+
+
+/************************/
+/* End of File Comment */
+/************************/
diff --git a/fsw/nos3_defs/tables/ds_filter_tbl.c b/fsw/nos3_defs/tables/ds_filter_tbl.c
new file mode 100644
index 00000000..e9daf329
--- /dev/null
+++ b/fsw/nos3_defs/tables/ds_filter_tbl.c
@@ -0,0 +1,3137 @@
+/************************************************************************
+** File: ds_filter_tbl.c
+**
+** File: ds_filter_tbl.c
+**
+** NASA Docket No. GSC-18448-1, and identified as "cFS Data Storage (DS)
+** application version 2.5.2”
+**
+** Copyright © 2019 United States Government as represented by the Administrator
+** of the National Aeronautics and Space Administration. All Rights Reserved.
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+** http://www.apache.org/licenses/LICENSE-2.0
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+**
+**
+** Purpose:
+** CFS Data Storage (DS) sample packet filter table
+**
+** Note:
+** This source file creates a sample table that stores packets using
+** several different destination storage files. Some packets have
+** one filter that is set to store every packet in one file and
+** another filter that will store every other packet in a second
+** file. Also, some filters are disabled and thus will not store
+** any packets. There is no real purpose to this particular set of
+** filters other than to provide an example of how various fields
+** in the table might be used.
+**
+*************************************************************************/
+
+#include "cfe.h"
+#include "cfe_tbl_filedef.h"
+#include "ds_platform_cfg.h"
+#include "ds_appdefs.h"
+#include "ds_app.h"
+#include "ds_msg.h"
+#include "ds_indices.h"
+
+/*
+** Sample packet filter table data
+*/
+DS_FilterTable_t DS_FilterTable =
+{
+ /* .Descriptor = */ "Sample filter table data",
+ /* .Packet = */
+ {
+ /* Packet Index 000 */
+ {
+ /* .MessageID = */ CFE_ES_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 001 */
+ {
+ /* .MessageID = */ CFE_EVS_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 002 */
+ {
+ /* .MessageID = */ CFE_SB_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 2, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 003 */
+ {
+ /* .MessageID = */ CFE_TBL_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 2, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 004 */
+ {
+ /* .MessageID = */ CFE_TIME_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 2, 1 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 005 */
+ {
+ /* .MessageID = */ CFE_TIME_DIAG_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 2, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 006 */
+ {
+ /* .MessageID = */ CFE_EVS_LONG_EVENT_MSG_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_EVENT_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 007 */
+ {
+ /* .MessageID = */ CFE_SB_STATS_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 008 */
+ {
+ /* .MessageID = */ CFE_ES_APP_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 009 */
+ {
+ /* .MessageID = */ CFE_TBL_REG_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 010 */
+ {
+ /* .MessageID = */ CFE_SB_ALLSUBS_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 011 */
+ {
+ /* .MessageID = */ CFE_SB_ONESUB_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 012 */
+ {
+ /* .MessageID = */ CFE_MISSION_ES_SHELL_TLM_MSG,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 013 */
+ {
+ /* .MessageID = */ CFE_ES_MEMSTATS_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 014 */
+ {
+ /* .MessageID = */ DS_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 015 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 016 */
+ {
+ /* .MessageID = */ CAM_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_CAM_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 017 */
+ {
+ /* .MessageID = */ CAM_EXP_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 018 */
+ {
+ /* .MessageID = */ GENERIC_RW_APP_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 019 */
+ {
+ /* .MessageID = */ NAV_SEND_HK_TLM,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_HK_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 020 */
+ {
+ /* .MessageID = */ SAMPLE_APP_HK_TLM_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_SAMPLE_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 021 */
+ {
+ /* .MessageID = */ SAMPLE_APP_SEND_DEV_HK_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_SAMPLE_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 022 */
+ {
+ /* .MessageID = */ SAMPLE_APP_SEND_DEV_DATA_MID,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { FILE_SAMPLE_PKTS, DS_BY_COUNT, 1, 1, 0 },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 023 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 024 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 025 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 026 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 027 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 028 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 029 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 030 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 031 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 032 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 033 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 034 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 035 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 036 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 037 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 038 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 039 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 040 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 041 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 042 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 043 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 044 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 045 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 046 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 047 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 048 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 049 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 050 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 051 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 052 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 053 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 054 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 055 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 056 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 057 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 058 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 059 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 060 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 061 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 062 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 063 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 064 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 065 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 066 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 067 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 068 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 069 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 070 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 071 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 072 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 073 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 074 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 075 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 076 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 077 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 078 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 079 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 080 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 081 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 082 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 083 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 084 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 085 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 086 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 087 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 088 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 089 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 090 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 091 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 092 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 093 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 094 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 095 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 096 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 097 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 098 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 099 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 100 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 101 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 102 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 103 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 104 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 105 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 106 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 107 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 108 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 109 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 110 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 111 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 112 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 113 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 114 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 115 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 116 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 117 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 118 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 119 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 120 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 121 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 122 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 123 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 124 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 125 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 126 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 127 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 128 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 129 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 130 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 131 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 132 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 133 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 134 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 135 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 136 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 137 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 138 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 139 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 140 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 141 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 142 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 143 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 144 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 145 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 146 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 147 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 148 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 149 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 150 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 151 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 152 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 153 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 154 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 155 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 156 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 157 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 158 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 159 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 160 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 161 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 162 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 163 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 164 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 165 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 166 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 167 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 168 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 169 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 170 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 171 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 172 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 173 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 174 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 175 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 176 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 177 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 178 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 179 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 180 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 181 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 182 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 183 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 184 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 185 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 186 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 187 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 188 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 189 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 190 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 191 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 192 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 193 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 194 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 195 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 196 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 197 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 198 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 199 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 200 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 201 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 202 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 203 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 204 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 205 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 206 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 207 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 208 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 209 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 210 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 211 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 212 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 213 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 214 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 215 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 216 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 217 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 218 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 219 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 220 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 221 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 222 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 223 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 224 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 225 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 226 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 227 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 228 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 229 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 230 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 231 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 232 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 233 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 234 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 235 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 236 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 237 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 238 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 239 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 240 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 241 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 242 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 243 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 244 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 245 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 246 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 247 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 248 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 249 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 250 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 251 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 252 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 253 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 254 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ },
+ /* Packet Index 255 */
+ {
+ /* .MessageID = */ DS_UNUSED,
+ /* .Filter = */
+ {
+ /* File table index, filter type, N, X, O */
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED },
+ { DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED, DS_UNUSED }
+ }
+ }
+ }
+};
+
+/*
+** Sample packet filter table header
+*/
+CFE_TBL_FILEDEF(DS_FilterTable, DS.FILTER_TBL, DS Packet Filter Table,ds_filter_tbl.tbl)
+
+
+/************************/
+/* End of File Comment */
+/************************/
diff --git a/fsw/nos3_defs/tables/ds_indices.h b/fsw/nos3_defs/tables/ds_indices.h
new file mode 100644
index 00000000..ae0cd567
--- /dev/null
+++ b/fsw/nos3_defs/tables/ds_indices.h
@@ -0,0 +1,38 @@
+#ifndef _DS_INDICES_H_
+#define _DS_INDICES_H_
+
+/*
+** cFS Includes
+*/
+#include "cfe_msgids.h"
+#include "cf_msgids.h"
+#include "ci_msgids.h"
+//#include "cs_msgids.h"
+#include "ds_msgids.h"
+#include "fm_msgids.h"
+//#include "hk_msgids.h"
+//#include "hs_msgids.h"
+#include "lc_msgids.h"
+//#include "md_msgids.h"
+//#include "mm_msgids.h"
+#include "sc_msgids.h"
+#include "sch_msgids.h"
+#include "to_msgids.h"
+
+/*
+** Component Include Files
+*/
+#include "cam_msgids.h"
+#include "generic_reaction_wheel_msgids.h"
+#include "nav_msgids.h"
+#include "sample_app_msgids.h"
+
+/**********************
+* DS Index IDs
+***********************/
+#define FILE_EVENT_PKTS 0
+#define FILE_CAM_PKTS 1
+#define FILE_HK_PKTS 2
+#define FILE_SAMPLE_PKTS 3
+
+#endif /* _DS_INDICES_H_ */
diff --git a/fsw/nos3_defs/tables/fm_freespace.c b/fsw/nos3_defs/tables/fm_freespace.c
new file mode 100644
index 00000000..f72eb835
--- /dev/null
+++ b/fsw/nos3_defs/tables/fm_freespace.c
@@ -0,0 +1,103 @@
+/*
+** Filename: fm_freespace.c
+**
+** NASA Docket No. GSC-18,475-1, identified as “Core Flight Software System (CFS)
+** File Manager Application Version 2.5.3
+**
+** Copyright © 2020 United States Government as represented by the Administrator of
+** the National Aeronautics and Space Administration. All Rights Reserved.
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+**
+** You may obtain a copy of the License at
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*
+** Title: File Manager (FM) File System Free Space Table Data
+**
+** Purpose: Default table contents
+**
+** Notes:
+**
+*/
+
+/*************************************************************************
+**
+** Include section
+**
+**************************************************************************/
+#include "cfe.h"
+#include "cfe_tbl_filedef.h"
+#include "fm_platform_cfg.h"
+#include "fm_tbl.h"
+#include "fm_msg.h"
+
+/*
+** FM file system free space table header
+*/
+static CFE_TBL_FileDef_t CFE_TBL_FileDef __attribute__((__used__)) =
+{
+ "FM_FreeSpaceTable", FM_APP_NAME "." FM_TABLE_CFE_NAME,
+ FM_TABLE_DEF_DESC, FM_TABLE_FILENAME, sizeof(FM_FreeSpaceTable_t)
+};
+
+/*
+** FM file system free space table data
+**
+** -- table entries must be enabled or disabled or unused
+**
+** -- enabled table entries may be disabled by command
+** -- disabled table entries may be enabled by command
+** -- unused table entries may not be modified by command
+**
+** -- enabled or disabled entries must have a valid file system name
+**
+** -- the file system name for unused entries is ignored
+*/
+FM_FreeSpaceTable_t FM_FreeSpaceTable =
+{
+ {
+ { /* - 0 - */
+ FM_TABLE_ENTRY_ENABLED, /* Entry state (enabled, disabled, unused) */
+ "/data", /* File system name (logical mount point) */
+ },
+ { /* - 1 - */
+ FM_TABLE_ENTRY_ENABLED, /* Entry state (enabled, disabled, unused) */
+ "/ram", /* File system name (logical mount point) */
+ },
+ { /* - 2 - */
+ FM_TABLE_ENTRY_DISABLED, /* Entry state (enabled, disabled, unused) */
+ "/alt", /* File system name (logical mount point) */
+ },
+ { /* - 3 - */
+ FM_TABLE_ENTRY_UNUSED, /* Entry state (enabled, disabled, unused) */
+ "", /* File system name (logical mount point) */
+ },
+ { /* - 4 - */
+ FM_TABLE_ENTRY_UNUSED, /* Entry state (enabled, disabled, unused) */
+ "", /* File system name (logical mount point) */
+ },
+ { /* - 5 - */
+ FM_TABLE_ENTRY_UNUSED, /* Entry state (enabled, disabled, unused) */
+ "", /* File system name (logical mount point) */
+ },
+ { /* - 6 - */
+ FM_TABLE_ENTRY_UNUSED, /* Entry state (enabled, disabled, unused) */
+ "", /* File system name (logical mount point) */
+ },
+ { /* - 7 - */
+ FM_TABLE_ENTRY_UNUSED, /* Entry state (enabled, disabled, unused) */
+ "", /* File system name (logical mount point) */
+ },
+ },
+};
+
+/************************/
+/* End of File Comment */
+/************************/
diff --git a/fsw/nos3_defs/tables/sc_rts001.c b/fsw/nos3_defs/tables/sc_rts001.c
new file mode 100644
index 00000000..ed061e94
--- /dev/null
+++ b/fsw/nos3_defs/tables/sc_rts001.c
@@ -0,0 +1,55 @@
+#include "cfe.h"
+#include "cfe_tbl_filedef.h"
+
+#include "sc_platform_cfg.h" /* defines table buffer size */
+#include "sc_msgdefs.h" /* defines SC command code values */
+#include "sc_msgids.h" /* defines SC packet msg ID's */
+
+/*
+** Component Includes
+*/
+#include "ds_msgids.h"
+#include "lc_msgids.h"
+#include "sample_app_msgids.h"
+#include "to_lab_msgids.h"
+
+/*
+** Command packet segment flags and sequence counter
+** - 2 bits of segment flags (0xC000 = start and end of packet)
+** - 14 bits of sequence count (unused for command packets)
+*/
+#define PKT_FLAGS 0xC000
+
+/*
+** Command code defines
+*/
+#define DS_SET_APP_STATE_CC 0x0200
+#define LC_SET_LC_STATE_CC 0x0200
+#define SAMPLE_APP_NOOP_CC 0x0000
+#define TO_DEBUG_ENABLE_CC 0x0200
+
+/*
+** cFE Table Header
+*/
+static CFE_TBL_FileDef_t CFE_TBL_FileDef __attribute__((__used__)) =
+{
+ "RTS_Table001", "SC.RTS_TBL001", "SC RTS_TBL001",
+ "sc_rts001.tbl", (SC_RTS_BUFF_SIZE * sizeof(uint16))
+};
+
+/*
+** RTS Table Data
+*/
+uint16 RTS_Table001[SC_RTS_BUFF_SIZE] =
+{
+/* cmd time, <---------------------------- cmd pkt primary header ----------------------------> <----- cmd pkt 2nd header ----> <-- opt data ---> */
+ 1, CFE_MAKE_BIG16(DS_CMD_MID), CFE_MAKE_BIG16(PKT_FLAGS), CFE_MAKE_BIG16(5), CFE_MAKE_BIG16(DS_SET_APP_STATE_CC), 0x0001, 0x0000, // Enable DS
+ 1, CFE_MAKE_BIG16(TO_LAB_CMD_MID), CFE_MAKE_BIG16(PKT_FLAGS), CFE_MAKE_BIG16(21), CFE_MAKE_BIG16(TO_DEBUG_ENABLE_CC), 0x0031, 0x3237, 0x2E30, 0x2E30, 0x2E31, 0x0000, 0x0000, 0x0000, 0x0095, 0x1300, // Enable Debug, 127.0.0.1, 5013
+ 1, CFE_MAKE_BIG16(SAMPLE_APP_CMD_MID), CFE_MAKE_BIG16(PKT_FLAGS), CFE_MAKE_BIG16(1), CFE_MAKE_BIG16(SAMPLE_APP_NOOP_CC), // Sample Instrument NOOP
+ 5, CFE_MAKE_BIG16(LC_CMD_MID), CFE_MAKE_BIG16(PKT_FLAGS), CFE_MAKE_BIG16(5), CFE_MAKE_BIG16(LC_SET_LC_STATE_CC), 0x0001, 0x0000, // Enable LC
+
+};
+
+/************************/
+/* End of File Comment */
+/************************/
diff --git a/fsw/nos3_defs/tables/sch_def_msgtbl.c b/fsw/nos3_defs/tables/sch_def_msgtbl.c
index 433ea9c7..568fb317 100644
--- a/fsw/nos3_defs/tables/sch_def_msgtbl.c
+++ b/fsw/nos3_defs/tables/sch_def_msgtbl.c
@@ -30,45 +30,24 @@
#include "sch_tbldefs.h"
#include "cfe_msgids.h"
+#include "cf_msgids.h"
#include "ci_msgids.h"
-#include "to_msgids.h"
-//#include "ds_msgids.h"
-//#include "fm_msgids.h"
-#include "hk_msgids.h"
-#include "hs_msgids.h"
+#include "ds_msgids.h"
+#include "fm_msgids.h"
+//#include "hk_msgids.h"
+//#include "hs_msgids.h"
#include "lc_msgids.h"
#include "sc_msgids.h"
#include "sch_msgids.h"
+#include "to_msgids.h"
/*
** Component Include Files
*/
-
-/*************************************************************************
-**
-** Macro definitions
-**
-**************************************************************************/
-
-/*
-** (none)
-*/
-
-/*************************************************************************
-**
-** Type definitions
-**
-**************************************************************************/
-
-/*
-** (none)
-*/
-
-/*************************************************************************
-**
-** Exported data
-**
-**************************************************************************/
+#include "cam_msgids.h"
+#include "generic_reaction_wheel_msgids.h"
+#include "nav_msgids.h"
+#include "sample_app_msgids.h"
/*
** Message Table entry map...
@@ -112,11 +91,9 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
/*{ { CFE_MAKE_BIG16(CS_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #7 - Data Store HK Request */
-/*{ { CFE_MAKE_BIG16(DS_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(DS_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #8 - File Manager HK Request */
-/*{ { CFE_MAKE_BIG16(FM_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(FM_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #9 - Housekeeping HK Request */
/*{ { CFE_MAKE_BIG16(HK_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
@@ -125,8 +102,7 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
/*{ { CFE_MAKE_BIG16(HS_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #11 - Limit Checker HK Request */
-/*{ { CFE_MAKE_BIG16(LC_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(LC_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #12 - Memory Dwell HK Request */
/*{ { CFE_MAKE_BIG16(MD_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
@@ -134,8 +110,7 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
/*{ { CFE_MAKE_BIG16(MM_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #14 - Stored Command HK Request */
-/*{ { CFE_MAKE_BIG16(SC_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(SC_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #15 - Scheduler HK Request */
{ { CFE_MAKE_BIG16(SCH_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
@@ -158,21 +133,19 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
/*{ { CFE_MAKE_BIG16(CS_BACKGROUND_CYCLE_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #21 - SC 1 Hz Wakeup */
-/*{ { CFE_MAKE_BIG16(SC_1HZ_WAKEUP_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(SC_1HZ_WAKEUP_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #22 - LC Sample Action Points */
-/*{ { CFE_MAKE_BIG16(LC_SAMPLE_AP_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0005), 0x0000, LC_ALL_ACTIONPOINTS, 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(LC_SAMPLE_AP_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0005), 0x0000, LC_ALL_ACTIONPOINTS, 0x0000 } },
/* command ID #23 - DS 1 HZ Wakeup */
/*{ { CFE_MAKE_BIG16(DS_1HZ_WAKEUP_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #24 - MD Wakeup */
/*{ { CFE_MAKE_BIG16(MD_WAKEUP_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
- /* command ID #25 */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
- /* command ID #26 */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ /* command ID #25 - CF Wakeup */
+ { { CFE_MAKE_BIG16(CF_WAKE_UP_REQ_CMD_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
+ /* command ID #26 - CF HK Request */
+ { { CFE_MAKE_BIG16(CF_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #27 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #28 */
@@ -184,11 +157,9 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
** Mission Defined Messages
*/
/* command ID #30 - Command Ingest HK Request Example */
-/*{ { CFE_MAKE_BIG16(CI_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(CI_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #31 - Telemetry Output HK Request Example */
-/*{ { CFE_MAKE_BIG16(TO_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } }, */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ { { CFE_MAKE_BIG16(TO_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #32 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #33 */
@@ -206,8 +177,8 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
/* command ID #39 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
- /* command ID #40 */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ /* command ID #40 - CAM HK */
+ { { CFE_MAKE_BIG16(CAM_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #41 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #42 */
@@ -216,8 +187,8 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #44 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
- /* command ID #45 */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ /* command ID #45 - RW HK */
+ { { CFE_MAKE_BIG16(GENERIC_RW_APP_CMD_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), CFE_MAKE_BIG16(0x0200) } },
/* command ID #46 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #47 */
@@ -227,8 +198,8 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
/* command ID #49 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
- /* command ID #50 */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ /* command ID #50 - GPS HK */
+ { { CFE_MAKE_BIG16(NAV_CMD_REQ_NAV_SCH_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #51 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #52 */
@@ -237,8 +208,8 @@ SCH_MessageEntry_t SCH_DefaultMessageTable[SCH_MAX_MESSAGES] =
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #54 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
- /* command ID #55 */
- { { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
+ /* command ID #55 - Sample HK */
+ { { CFE_MAKE_BIG16(SAMPLE_APP_SEND_HK_MID), CFE_MAKE_BIG16(0xC000), CFE_MAKE_BIG16(0x0001), 0x0000 } },
/* command ID #56 */
{ { CFE_MAKE_BIG16(SCH_UNUSED_MID) } },
/* command ID #57 */
diff --git a/fsw/nos3_defs/tables/sch_def_schtbl.c b/fsw/nos3_defs/tables/sch_def_schtbl.c
index f2ef67a2..0318b93b 100644
--- a/fsw/nos3_defs/tables/sch_def_schtbl.c
+++ b/fsw/nos3_defs/tables/sch_def_schtbl.c
@@ -98,13 +98,13 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #1 */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 26, SCH_GROUP_CFS_HK }, /* CF HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #2 */
+ /* slot #2 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -126,9 +126,9 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #5 */
+ /* slot #5 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 40, SCH_GROUP_NONE }, /* CAM HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -156,8 +156,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #9 */
-/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 4, 2, 7, SCH_GROUP_CFS_HK }, */ /* DS HK Request */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 2, 7, SCH_GROUP_CFS_HK }, /* DS HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -178,7 +177,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #12 */
+ /* slot #12 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -193,16 +192,15 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #14 */
-/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 4, 1, 8, SCH_GROUP_CFS_HK }, */ /* FM HK Request */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 1, 8, SCH_GROUP_CFS_HK }, /* FM HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #15 */
+ /* slot #15 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 45, SCH_GROUP_NONE }, /* RW HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -253,7 +251,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #22 */
+ /* slot #22 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -275,16 +273,16 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #25 */
+ /* slot #25 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 50, SCH_GROUP_CFE_HK }, /* GPS HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #26 */
-/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 25, SCH_GROUP_NONE }, */ /* SC Wakeup */
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 21, SCH_GROUP_NONE }, /* SC Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -306,8 +304,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #29 */
-/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 4, 2, 11, SCH_GROUP_CFS_HK }, */ /* LC HK Request */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 2, 11, SCH_GROUP_CFS_HK }, /* LC HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -328,7 +325,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #32 */
+ /* slot #32 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -350,16 +347,16 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #35 */
+ /* slot #35 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 55, SCH_GROUP_CFE_HK }, /* Sample HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #36 */
-/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 23, SCH_GROUP_NONE }, */ /* DS Wakeup */
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 23, SCH_GROUP_CFS_HK }, /* DS Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -403,7 +400,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #42 */
+ /* slot #42 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -418,14 +415,13 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #44 */
-/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 4, 1, 14, SCH_GROUP_CFS_HK }, */ /* SC HK Request */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 1, 14, SCH_GROUP_CFS_HK }, /* SC HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #45 */
+ /* slot #45 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -468,7 +464,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 25, SCH_GROUP_NONE }, /* CF Wakeup */
/* slot #51 */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 22, SCH_GROUP_NONE }, */ /* LC Sample Action Points */
@@ -478,7 +474,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #52 */
+ /* slot #52 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -499,7 +495,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #55 */
+ /* slot #55 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -508,10 +504,8 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
/* slot #56 */
-/*{ SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 1, 30, SCH_GROUP_NONE }, */ /* CI HK Request */
-/*{ SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 2, 31, SCH_GROUP_NONE }, */ /* TO HK Request */
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- { SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 1, 30, SCH_GROUP_NONE }, /* CI HK Request */
+ { SCH_ENABLED, SCH_ACTIVITY_SEND_MSG, 4, 2, 31, SCH_GROUP_NONE }, /* TO HK Request */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -552,7 +546,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #62 */
+ /* slot #62 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -573,7 +567,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #65 */
+ /* slot #65 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -624,7 +618,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #72 */
+ /* slot #72 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -645,7 +639,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #75 */
+ /* slot #75 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -696,7 +690,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #82 */
+ /* slot #82 - ADCS */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -717,7 +711,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #85 */
+ /* slot #85 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -770,7 +764,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #92 */
+ /* slot #92 - ADCS */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 4, 2, 18, SCH_GROUP_CFS_HK }, */ /* HK Send Combined HK '3' */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 4, 3, 19, SCH_GROUP_CFS_HK }, */ /* HK Send Combined HK '4' */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
@@ -793,7 +787,7 @@ SCH_ScheduleEntry_t SCH_DefaultScheduleTable[SCH_TABLE_ENTRIES] =
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
- /* slot #95 */
+ /* slot #95 - Component HK */
/*{ SCH_DISABLED, SCH_ACTIVITY_SEND_MSG, 1, 0, 24, SCH_GROUP_MD_WAKEUP }, */ /* MD Wakeup */
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
{ SCH_UNUSED, 0, 0, 0, 0, SCH_GROUP_NONE},
diff --git a/fsw/nos3_defs/tables/to_config.c b/fsw/nos3_defs/tables/to_config.c
index 14104e2b..46f2269f 100644
--- a/fsw/nos3_defs/tables/to_config.c
+++ b/fsw/nos3_defs/tables/to_config.c
@@ -52,30 +52,25 @@ extern "C" {
#include "cfe_msgids.h"
-#include "to_msgids.h"
#include "ci_msgids.h"
#include "cf_msgids.h"
+#include "ds_msgids.h"
+#include "fm_msgids.h"
+//#include "hs_msgids.h"
+//#include "hk_msgids.h"
+#include "lc_msgids.h"
+#include "sc_msgids.h"
#include "sch_msgids.h"
-#include "hs_msgids.h"
-#include "hk_msgids.h"
-#include "sch_msgids.h"
+#include "to_msgids.h"
/*
** Component Include Files
*/
-#include "nav_msgids.h"
+#include "cam_msgids.h"
#include "generic_reaction_wheel_msgids.h"
-#include "eps_msgids.h"
+#include "nav_msgids.h"
#include "sample_app_msgids.h"
-/*
-** Local Defines
-*/
-
-
-/*
-** Local Structure Declarations
-*/
static CFE_TBL_FileDef_t CFE_TBL_FileDef =
{
@@ -91,53 +86,53 @@ TO_ConfigTable_t to_ConfigTable =
{
{
/* 0 - 9 */
- {CF_CONFIG_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CF_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CF_SPACE_TO_GND_PDU_MID, {0,0}, 32, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CF_TRANS_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_ES_APP_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_ES_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_ES_MEMSTATS_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CF_CONFIG_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CF_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CF_SPACE_TO_GND_PDU_MID, {0,0}, 64, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CF_TRANS_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_ES_APP_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_ES_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_ES_MEMSTATS_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
{CFE_ES_SHELL_TLM_MID, {0,0}, 32, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
{CFE_EVS_EVENT_MSG_MID, {0,0}, 32, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_EVS_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_EVS_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
/* 10 - 19 */
- {CFE_SB_ALLSUBS_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_SB_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_SB_ONESUB_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_SB_STATS_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_TBL_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_TBL_REG_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_TIME_DIAG_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {CFE_TIME_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
- {TO_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {HS_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {CFE_SB_ALLSUBS_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_SB_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_SB_ONESUB_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_SB_STATS_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_TBL_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_TBL_REG_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_TIME_DIAG_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {CFE_TIME_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_CFE | TO_MGROUP_ONE, 0,1},
+ {TO_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {SCH_DIAG_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
/* 20 - 29 */
- {SCH_DIAG_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {SCH_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {HK_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {CI_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {TO_DATA_TYPE_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {NAV_SEND_HK_TLM, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {GENERIC_RW_APP_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {EPS_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {SAMPLE_APP_HK_TLM_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {SAMPLE_APP_SEND_DEV_HK_MID, {0,0}, 1, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
- {SAMPLE_APP_SEND_DEV_DATA_MID, {0,0}, 64, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
-
+ {SCH_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {CI_HK_TLM_MID, {0,0}, 5, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {TO_DATA_TYPE_MID, {0,0}, 5, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {FM_HK_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {FM_FILE_INFO_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {FM_DIR_LIST_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {FM_OPEN_FILES_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {FM_FREE_SPACE_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {SC_HK_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {LC_HK_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+
/* 30 - 39 */
+ {DS_HK_TLM_MID, {0,0}, 5, 0x0001, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {CAM_HK_TLM_MID, {0,0}, 32, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {CAM_EXP_TLM_MID, {0,0}, 32, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {GENERIC_RW_APP_HK_TLM_MID, {0,0}, 32, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {NAV_SEND_HK_TLM, {0,0}, 32, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {SAMPLE_APP_HK_TLM_MID, {0,0}, 32, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {SAMPLE_APP_SEND_DEV_HK_MID, {0,0}, 32, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
+ {SAMPLE_APP_SEND_DEV_DATA_MID, {0,0}, 32, 0xffff, TO_GROUP_APP | TO_MGROUP_ONE, 0,1},
{TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
{TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
- {TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
- {TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
- {TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
- {TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
- {TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
- {TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
- {TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
-
+
/* 40 - 49 */
{TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
{TO_UNUSED_ENTRY, {0,0}, 0, 0x0000, TO_GROUP_NONE, 0,0},
diff --git a/fsw/nos3_defs/tables/to_lab_sub.c b/fsw/nos3_defs/tables/to_lab_sub.c
new file mode 100644
index 00000000..520ea683
--- /dev/null
+++ b/fsw/nos3_defs/tables/to_lab_sub.c
@@ -0,0 +1,93 @@
+/************************************************************************
+**
+** GSC-18128-1, "Core Flight Executive Version 6.7"
+**
+** Copyright (c) 2006-2002 United States Government as represented by
+** the Administrator of the National Aeronautics and Space Administration.
+** All Rights Reserved.
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+**
+** File: to_lab_sub_table.c
+**
+** Purpose:
+** Define TO Lab CPU specific subscription table
+**
+** Notes:
+**
+*************************************************************************/
+
+/*
+** Include Files
+*/
+#include "cfe_tbl_filedef.h" /* Required to obtain the CFE_TBL_FILEDEF macro definition */
+#include "to_lab_sub_table.h"
+#include "to_lab_msgids.h"
+#include "ci_lab_msgids.h"
+
+#include "fm_msgids.h"
+#include "sc_msgids.h"
+#include "ds_msgids.h"
+#include "lc_msgids.h"
+
+/*
+** Component Include Files
+*/
+#include "cam_msgids.h"
+#include "generic_reaction_wheel_msgids.h"
+#include "nav_msgids.h"
+#include "sample_app_msgids.h"
+
+TO_LAB_Subs_t TO_LAB_Subs =
+{
+ .Subs =
+ {
+ /* CFS App Subscriptions */
+ {CFE_SB_MSGID_WRAP_VALUE(TO_LAB_HK_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(TO_LAB_DATA_TYPES_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CI_LAB_HK_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(SAMPLE_APP_HK_TLM_MID), {0, 0}, 4},
+
+ /* Add these if needed */
+ {CFE_SB_MSGID_WRAP_VALUE(FM_HK_TLM_MID), {0,0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(SC_HK_TLM_MID), {0,0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(DS_HK_TLM_MID), {0,0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(LC_HK_TLM_MID), {0,0}, 4},
+
+ /* cFE Core subscriptions */
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_ES_HK_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_EVS_HK_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_SB_HK_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_TBL_HK_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_TIME_HK_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_TIME_DIAG_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_SB_STATS_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_TBL_REG_TLM_MID), {0, 0}, 4},
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_EVS_LONG_EVENT_MSG_MID), {0, 0}, 32},
+
+ #ifndef CFE_OMIT_DEPRECATED_6_7
+ {CFE_SB_MSGID_WRAP_VALUE(CFE_ES_SHELL_TLM_MID), {0, 0}, 32},
+ #endif
+
+ {CFE_SB_MSGID_WRAP_VALUE(CAM_HK_TLM_MID), {0,0}, 32},
+ {CFE_SB_MSGID_WRAP_VALUE(CAM_EXP_TLM_MID), {0,0}, 32},
+ {CFE_SB_MSGID_WRAP_VALUE(GENERIC_RW_APP_HK_TLM_MID), {0,0}, 32},
+ {CFE_SB_MSGID_WRAP_VALUE(NAV_SEND_HK_TLM), {0,0}, 32},
+ {CFE_SB_MSGID_WRAP_VALUE(SAMPLE_APP_HK_TLM_MID), {0,0}, 32},
+ {CFE_SB_MSGID_WRAP_VALUE(SAMPLE_APP_SEND_DEV_HK_MID), {0,0}, 32},
+ {CFE_SB_MSGID_WRAP_VALUE(SAMPLE_APP_SEND_DEV_DATA_MID), {0,0}, 32},
+
+ }
+};
+
+CFE_TBL_FILEDEF(TO_LAB_Subs, TO_LAB.TO_LAB_Subs, TO Lab Sub Tbl, to_lab_sub.tbl)
diff --git a/fsw/nos3_defs/targets.cmake b/fsw/nos3_defs/targets.cmake
index cfe6d6b7..f6bb7d51 100644
--- a/fsw/nos3_defs/targets.cmake
+++ b/fsw/nos3_defs/targets.cmake
@@ -94,30 +94,28 @@ SET(APPLICATION_LIST
#
# cFS Apps
#
- #cf
+ cf
ci
- #ci_lab
+ ci_lab
#cs
- #ds
- #fm
- hk
- hs
+ ds
+ fm
+ #hk
+ #hs
lc
#md
#mm
sc
sch
- #sch_lab
to
- #to_lab
+ to_lab
#
# Components
#
- sample
- novatel_oem615
arducam
- clyde_eps
generic_reaction_wheel
+ novatel_oem615
+ sample
)
# Create Application Platform Include List
@@ -129,10 +127,10 @@ ENDFOREACH(X)
SET(TGT1_NAME cpu1)
SET(TGT1_APPLIST ${APPLICATION_LIST})
SET(TGT1_FILELIST cfe_es_startup.scr)
-SET(TGT2_OSAL_SYSTEM_CONFIG cpu1_osconfig.h)
+SET(TGT1_OSAL_SYSTEM_CONFIG cpu1_osconfig.h)
# USER Supplied
-SET(TGT2_NAME cpu2)
-SET(TGT2_APPLIST ${APPLICATION_LIST})
-SET(TGT2_FILELIST cfe_es_startup.scr)
-SET(TGT2_OSAL_SYSTEM_CONFIG cpu2_osconfig.h)
\ No newline at end of file
+#SET(TGT2_NAME cpu2)
+#SET(TGT2_APPLIST ${APPLICATION_LIST})
+#SET(TGT2_FILELIST cfe_es_startup.scr)
+#SET(TGT2_OSAL_SYSTEM_CONFIG cpu2_osconfig.h)
\ No newline at end of file
diff --git a/fsw/nos3_defs/toolchain-cpu1.cmake b/fsw/nos3_defs/toolchain-cpu1.cmake
index 3903f0ff..bd86b588 100644
--- a/fsw/nos3_defs/toolchain-cpu1.cmake
+++ b/fsw/nos3_defs/toolchain-cpu1.cmake
@@ -34,5 +34,6 @@ SET(CMAKE_C_FLAGS_INIT "-m32" CACHE STRING "C Flags required by platform")
# Build Specific
add_definitions(-DBYTE_ORDER_LE)
add_definitions(-D_LINUX_OS_)
+
set(CI_TRANSPORT udp)
set(TO_TRANSPORT udp)
diff --git a/fsw/nos3_defs/toolchain-cpu2.cmake b/fsw/nos3_defs/toolchain-cpu2.cmake
deleted file mode 100644
index a3f4ed9d..00000000
--- a/fsw/nos3_defs/toolchain-cpu2.cmake
+++ /dev/null
@@ -1,37 +0,0 @@
-# This example toolchain file describes the cross compiler to use for
-# the target architecture indicated in the configuration file.
-
-# Basic cross system configuration
-SET(CMAKE_SYSTEM_NAME Linux)
-SET(CMAKE_SYSTEM_VERSION 1)
-SET(CMAKE_SYSTEM_PROCESSOR i386)
-
-# Specify the cross compiler executables
-# Typically these would be installed in a home directory or somewhere
-# in /opt. However in this example the system compiler is used.
-if(DEFINED ENV{TARGET_CROSS})
- SET(CMAKE_C_COMPILER "$ENV{TARGET_CROSS}gcc")
- SET(CMAKE_CXX_COMPILER "$ENV{TARGET_CROSS}g++")
-else(NOT DEFINED ENV{TARGET_CROSS})
- SET(CMAKE_C_COMPILER "/usr/bin/gcc")
- SET(CMAKE_CXX_COMPILER "/usr/bin/g++")
-endif()
-
-# Configure the find commands
-SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
-SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY NEVER)
-SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE NEVER)
-
-# These variable settings are specific to cFE/OSAL and determines which
-# abstraction layers are built when using this toolchain
-SET(CFE_SYSTEM_PSPNAME "pc-linux")
-SET(OSAL_SYSTEM_BSPNAME "pc-linux")
-SET(OSAL_SYSTEM_OSTYPE "posix")
-
-# This adds the "" flag to all compile commands
-SET(CMAKE_C_FLAGS_INIT "" CACHE STRING "C Flags required by platform")
-
-# Build Specific
-add_definitions(-D_LINUX_OS_)
-set(CI_TRANSPORT udp)
-set(TO_TRANSPORT udp)
diff --git a/fsw/osal b/fsw/osal
index 51234ac2..cd1eaf64 160000
--- a/fsw/osal
+++ b/fsw/osal
@@ -1 +1 @@
-Subproject commit 51234ac2cf306ec8067aac631486c0b77a2ccdd8
+Subproject commit cd1eaf644b65ce08447484fb62ff4319e2e9b143
diff --git a/fsw/psp b/fsw/psp
index 274f8de0..ac1288df 160000
--- a/fsw/psp
+++ b/fsw/psp
@@ -1 +1 @@
-Subproject commit 274f8de01487d0ff89a6d2ca9e38c1c6a546e5f0
+Subproject commit ac1288df4f848e02db20937f9f30aec2a6bdccd3
diff --git a/fsw/tools/cFS-GroundSystem b/fsw/tools/cFS-GroundSystem
deleted file mode 160000
index efb4be43..00000000
--- a/fsw/tools/cFS-GroundSystem
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit efb4be4330cc7c4d1750eaedc740990b4bb055e1
diff --git a/fsw/tools/elf2cfetbl b/fsw/tools/elf2cfetbl
index 0e6af52b..7a3d1cab 160000
--- a/fsw/tools/elf2cfetbl
+++ b/fsw/tools/elf2cfetbl
@@ -1 +1 @@
-Subproject commit 0e6af52b972fbf287c15cdd46b85846626109bfc
+Subproject commit 7a3d1cab61de365fbc8ff969c6930701220f9578
diff --git a/gsw/OrbitInviewPowerPrediction b/gsw/OrbitInviewPowerPrediction
index b207c763..7d92bcd4 160000
--- a/gsw/OrbitInviewPowerPrediction
+++ b/gsw/OrbitInviewPowerPrediction
@@ -1 +1 @@
-Subproject commit b207c763e1364f31c806e05958f228232c643996
+Subproject commit 7d92bcd4adb7b43fcd03c05c65d608fc1cfb5092
diff --git a/gsw/cosmos b/gsw/cosmos
index 16d2649c..da65ce2c 160000
--- a/gsw/cosmos
+++ b/gsw/cosmos
@@ -1 +1 @@
-Subproject commit 16d2649cfe0dc8463f8a3df0d01f916a3de7db24
+Subproject commit da65ce2cf2eb209de016f498b739b750a6e4a897
diff --git a/gsw/scripts/docker-compose.yml b/gsw/scripts/docker-compose.yml
new file mode 100644
index 00000000..953c6e72
--- /dev/null
+++ b/gsw/scripts/docker-compose.yml
@@ -0,0 +1,112 @@
+version: '3.3'
+services:
+ nos_engine_server_standalone:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: /usr/bin/nos_engine_server_standalone -f $SIM_BIN/nos_engine_server_config.json
+ working_dir: $SIM_BIN
+ tty: true
+ nos-time-driver:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: $SIM_BIN/nos-time-driver
+ working_dir: $SIM_BIN
+ depends_on:
+ - nos_engine_server_standalone
+ nos3-simulator-terminal:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: $SIM_BIN/nos3-simulator-terminal
+ working_dir: $SIM_BIN
+ depends_on:
+ - nos_engine_server_standalone
+ nos3-cam-simulator:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: $SIM_BIN/nos3-cam-simulator
+ working_dir: $SIM_BIN
+ depends_on:
+ - nos_engine_server_standalone
+ nos3-generic-reactionwheel-simulator:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: $SIM_BIN/nos3-generic-reactionwheel-simulator
+ working_dir: $SIM_BIN
+ depends_on:
+ - nos_engine_server_standalone
+ nos3-gps-simulator:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: $SIM_BIN/nos3-gps-simulator
+ working_dir: $SIM_BIN
+ depends_on:
+ - nos_engine_server_standalone
+ nos3-sample-simulator:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: $SIM_BIN/nos3-sample-simulator
+ working_dir: $SIM_BIN
+ depends_on:
+ - nos_engine_server_standalone
+ truth42sim:
+ volumes:
+ - '$SIM_DIR:$SIM_DIR'
+ network_mode: host
+ image: nos3
+ command: $SIM_BIN/nos3-single-simulator truth42sim
+ working_dir: $SIM_BIN
+ depends_on:
+ - nos_engine_server_standalone
+ fsw:
+ volumes:
+ - '$FSW_BIN:$FSW_BIN'
+ network_mode: host
+ image: nos3
+ command: $FSW_BIN/core-cpu1 -R PO
+ working_dir: $FSW_BIN
+ stdin_open: true
+ tty: true
+ sysctls:
+ - fs.mqueue.msg_max=500
+ depends_on:
+ - nos_engine_server_standalone
+ fortytwo:
+ volumes:
+ - '/opt/nos3/42/NOS3InOut:/opt/nos3/42/NOS3InOut'
+ - '/tmp/.X11-unix:/tmp/.X11-unix:ro'
+ network_mode: host
+ image: nos3
+ command: /opt/nos3/42/42 NOS3InOut
+ working_dir: /opt/nos3/42
+ tty: true
+ environment:
+ - DISPLAY=$DISPLAY
+ depends_on:
+ - nos_engine_server_standalone
+ cosmos:
+ volumes:
+ - '/home/nos3/Desktop/github-nos3/gsw/cosmos:/cosmos/cosmos'
+ - '/home/nos3/Desktop/github-nos3/components/:/COMPONENTS'
+ - '/tmp/.X11-unix:/tmp/.X11-unix:ro'
+ network_mode: host
+ image: ballaerospace/cosmos
+ command: /bin/bash -c 'ruby Launcher -c nos3_launcher.txt --system nos3_system.txt && true' # true is necessary to avoid setpgrp error
+ working_dir: /cosmos/cosmos
+ tty: true
+ environment:
+ - DISPLAY=$DISPLAY
+ - QT_X11_NO_MITSHM=1
diff --git a/gsw/scripts/docker_build.sh b/gsw/scripts/docker_build.sh
new file mode 100644
index 00000000..7e7b9c3b
--- /dev/null
+++ b/gsw/scripts/docker_build.sh
@@ -0,0 +1,11 @@
+#!/bin/bash -i
+#
+# Convenience script for NOS3 development
+# Use with the Dockerfile in the deployment repository
+# https://docs.docker.com/engine/install/ubuntu/
+#
+
+SCRIPT_DIR=$(cd `dirname $0` && pwd)
+BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+
+docker run --rm -v $BASE_DIR:$BASE_DIR -w $BASE_DIR -it nos3 make clean all
diff --git a/gsw/scripts/docker_compose_launch.sh b/gsw/scripts/docker_compose_launch.sh
new file mode 100644
index 00000000..86661249
--- /dev/null
+++ b/gsw/scripts/docker_compose_launch.sh
@@ -0,0 +1,44 @@
+#!/bin/bash -i
+#
+# Convenience script for NOS3 development
+# Use with the Dockerfile in the deployment repository
+# https://docs.docker.com/engine/install/ubuntu/
+#
+
+export SCRIPT_DIR=$(cd `dirname $0` && pwd)
+export BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+export FSW_BIN=$BASE_DIR/fsw/build/exe/cpu1
+export SIM_DIR=$BASE_DIR/sims/build
+export SIM_BIN=$SIM_DIR/bin
+export SIMS=$(cd $SIM_BIN; ls nos3*simulator)
+
+# Debugging
+#echo "Script directory = " $SCRIPT_DIR
+#echo "Base directory = " $BASE_DIR
+#echo "FSW directory = " $FSW_BIN
+#echo "Sim directory = " $SIM_BIN
+#echo "Sim list = " $SIMS
+#exit
+
+#echo "Make /tmp folders..."
+#mkdir /tmp/data 2> /dev/null
+#mkdir /tmp/data/hk 2> /dev/null
+#mkdir /tmp/uplink 2> /dev/null
+
+echo "42..."
+cd /opt/nos3/42/
+rm -rf NOS3InOut
+cp -r $BASE_DIR/sims/cfg/InOut /opt/nos3/42/NOS3InOut
+xhost +local:*
+
+echo "COSMOS Ground Station..."
+cd $BASE_DIR/gsw/cosmos
+export MISSION_NAME=$(echo "NOS3")
+export PROCESSOR_ENDIANNESS=$(echo "LITTLE_ENDIAN")
+#docker run --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e QT_X11_NO_MITSHM=1 \
+# -v /home/nos3/Desktop/github-nos3/gsw/cosmos:/cosmos/cosmos \
+# -v /home/nos3/Desktop/github-nos3/components/:/COMPONENTS -w /cosmos/cosmos -d --network=host \
+# ballaerospace/cosmos /bin/bash -c 'ruby Launcher -c nos3_launcher.txt --system nos3_system.txt && true' # true is necessary to avoid setpgrp error
+
+cd $SCRIPT_DIR
+docker compose up -d
diff --git a/gsw/scripts/docker_launch.sh b/gsw/scripts/docker_launch.sh
new file mode 100644
index 00000000..37c357f1
--- /dev/null
+++ b/gsw/scripts/docker_launch.sh
@@ -0,0 +1,59 @@
+#!/bin/bash -i
+#
+# Convenience script for NOS3 development
+# Use with the Dockerfile in the deployment repository
+# https://docs.docker.com/engine/install/ubuntu/
+#
+
+SCRIPT_DIR=$(cd `dirname $0` && pwd)
+BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+FSW_BIN=$BASE_DIR/fsw/build/exe/cpu1
+SIM_DIR=$BASE_DIR/sims/build
+SIM_BIN=$SIM_DIR/bin
+SIMS=$(cd $SIM_BIN; ls nos3*simulator)
+
+# Debugging
+#echo "Script directory = " $SCRIPT_DIR
+#echo "Base directory = " $BASE_DIR
+#echo "FSW directory = " $FSW_BIN
+#echo "Sim directory = " $SIM_BIN
+#echo "Sim list = " $SIMS
+#exit
+
+#echo "Make /tmp folders..."
+#mkdir /tmp/data 2> /dev/null
+#mkdir /tmp/data/hk 2> /dev/null
+#mkdir /tmp/uplink 2> /dev/null
+
+echo "42..."
+cd /opt/nos3/42/
+rm -rf NOS3InOut
+cp -r $BASE_DIR/sims/cfg/InOut /opt/nos3/42/NOS3InOut
+xhost +local:*
+docker run -d -e DISPLAY=$DISPLAY -v /opt/nos3/42/NOS3InOut:/opt/nos3/42/NOS3InOut -v /tmp/.X11-unix:/tmp/.X11-unix:ro --network=host -w /opt/nos3/42 -t nos3 /opt/nos3/42/42 NOS3InOut
+
+echo "Simulators..."
+#cd $SIM_BIN
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN -t nos3 /usr/bin/nos_engine_server_standalone -f $SIM_BIN/nos_engine_server_config.json
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN nos3 $SIM_BIN/nos-time-driver
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN nos3 $SIM_BIN/nos3-simulator-terminal
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN nos3 $SIM_BIN/nos3-cam-simulator
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN nos3 $SIM_BIN/nos3-generic-reactionwheel-simulator
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN nos3 $SIM_BIN/nos3-gps-simulator
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN nos3 $SIM_BIN/nos3-sample-simulator
+docker run --rm -d -v $SIM_DIR:$SIM_DIR --network=host -w $SIM_BIN nos3 $SIM_BIN/nos3-single-simulator truth42sim
+
+echo "COSMOS Ground Station..."
+cd $BASE_DIR/gsw/cosmos
+export MISSION_NAME=$(echo "NOS3")
+export PROCESSOR_ENDIANNESS=$(echo "LITTLE_ENDIAN")
+docker run --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e QT_X11_NO_MITSHM=1 \
+ -v /home/nos3/Desktop/github-nos3/gsw/cosmos:/cosmos/cosmos \
+ -v /home/nos3/Desktop/github-nos3/components/:/COMPONENTS -w /cosmos/cosmos -d --network=host \
+ ballaerospace/cosmos /bin/bash -c 'ruby Launcher -c nos3_launcher.txt --system nos3_system.txt && true' # true is necessary to avoid setpgrp error
+
+sleep 5
+
+echo "Flight Software..."
+cd $FSW_BIN
+gnome-terminal --title="NOS3 Flight Software" -- docker run --rm -it -v $FSW_BIN:$FSW_BIN --network=host -w $FSW_BIN --sysctl fs.mqueue.msg_max=500 nos3 $FSW_BIN/core-cpu1 -R PO &
diff --git a/gsw/scripts/docker_stop.sh b/gsw/scripts/docker_stop.sh
new file mode 100644
index 00000000..d7ab16dc
--- /dev/null
+++ b/gsw/scripts/docker_stop.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+#
+# Convenience script for NOS3 development
+# https://docs.docker.com/engine/install/ubuntu/
+#
+
+export SCRIPT_DIR=$(cd `dirname $0` && pwd)
+export BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+export FSW_BIN=$BASE_DIR/fsw/build/exe/cpu1
+export SIM_DIR=$BASE_DIR/sims/build
+export SIM_BIN=$SIM_DIR/bin
+export SIMS=$(cd $SIM_BIN; ls nos3*simulator)
+
+# NOS3
+
+# NOS3 GPIO
+rm -rf /tmp/gpio_fake
+
+# NOS3 Stored HK
+rm -rf $BASE_DIR/fsw/build/exe/cpu1/scratch/*
+
+# Docker
+cd $SCRIPT_DIR; docker compose down
+for i in $(docker container ls -q); do
+ docker container kill $i
+done
+docker container prune -f
+
+# 42
+rm -rf /opt/nos3/42/NOS3InOut
+rm -rf /tmp/gpio*
+
+# cFS
+
+# COSMOS
+yes | rm $BASE_DIR/gsw/cosmos/Gemfile 2> /dev/null
+yes | rm $BASE_DIR/gsw/cosmos/Gemfile.lock 2> /dev/null
+yes | rm -r $BASE_DIR/gsw/cosmos/COMPONENTS 2> /dev/null
+
+exit 0
\ No newline at end of file
diff --git a/gsw/scripts/gsw.sh b/gsw/scripts/gsw.sh
new file mode 100644
index 00000000..44322dc0
--- /dev/null
+++ b/gsw/scripts/gsw.sh
@@ -0,0 +1,24 @@
+#!/bin/bash -i
+#
+# Convenience script for NOS3 development
+#
+
+SCRIPT_DIR=$(cd `dirname $0` && pwd)
+BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+FSW_BIN=$BASE_DIR/fsw/build/exe/cpu1
+
+# Debugging
+#echo "Script directory = " $SCRIPT_DIR
+#echo "Base directory = " $BASE_DIR
+#exit
+
+#echo "Make /tmp folders..."
+#mkdir /tmp/data 2> /dev/null
+#mkdir /tmp/data/hk 2> /dev/null
+#mkdir /tmp/uplink 2> /dev/null
+
+echo "COSMOS Ground Station..."
+cd $BASE_DIR/gsw/cosmos
+export MISSION_NAME=$(echo "NOS3")
+export PROCESSOR_ENDIANNESS=$(echo "LITTLE_ENDIAN")
+ruby Launcher -c nos3_launcher.txt --system nos3_system.txt &
diff --git a/gsw/scripts/l0.sh b/gsw/scripts/l0.sh
new file mode 100644
index 00000000..a19c092f
--- /dev/null
+++ b/gsw/scripts/l0.sh
@@ -0,0 +1,46 @@
+#!/bin/bash -i
+#
+# Convenience script for NOS3 development
+#
+
+SCRIPT_DIR=$(cd `dirname $0` && pwd)
+BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+DATE=$(date "+%Y%m%d_%H%M")
+COSMOS_DIR=$(cd $BASE_DIR/gsw/cosmos && pwd)
+COSMOS_TOOLS_DIR=$(cd $COSMOS_DIR/tools && pwd)
+
+cd $COSMOS_TOOLS_DIR
+
+###
+### Live Telemetry
+###
+
+COSMOS_DATA=$(cd $BASE_DIR/gsw/cosmos/outputs/logs && pwd)
+TLM_FILES=$(cd $COSMOS_DATA && ls 20*_tlm.bin)
+for entry in $TLM_FILES
+do
+ #echo "$entry"
+ #echo "${entry%.*}"
+
+ ruby TlmExtractor --system nos3_system.txt --config ../../targets/CFS/tools/tlm_extractor/CF_HKPACKET.txt --input $entry --output $COSMOS_DATA"/"${entry%.*}"_CF_HKPACKET.csv" &
+ ruby TlmExtractor --system nos3_system.txt --config ../../targets/CFS/tools/tlm_extractor/CFE_EVS_PACKET.txt --input $entry --output $COSMOS_DATA"/"${entry%.*}"_CFE_EVS_PACKET.csv" &
+ ruby TlmExtractor --system nos3_system.txt --config ../../targets/CFS/tools/tlm_extractor/LC_HKPACKET.txt --input $entry --output $COSMOS_DATA"/"${entry%.*}"_LC_HKPACKET.csv" &
+ ruby TlmExtractor --system nos3_system.txt --config ../../targets/CFS/tools/tlm_extractor/SC_HKTLM.txt --input $entry --output $COSMOS_DATA"/"${entry%.*}"_SC_HKTLM.csv" &
+
+ wait
+done
+
+###
+### DS Files
+###
+
+#HK_DATA=$(cd $COSMOS_DATA/data/hk && pwd)
+#HK_FILES=$(cd $HK_DATA && ls *.ds)
+#for entry in $HK_FILES
+#do
+# ruby TlmExtractor --system nos3_ds_system.txt --config ../../targets/CFS/tools/tlm_extractor/CF_HKPACKET.txt --input ./data/hk/$entry --output $HK_DATA"/"${entry%.*}"_CF_HKPACKET.csv" &
+#
+# wait
+#done
+
+exit 0
diff --git a/gsw/scripts/launch.sh b/gsw/scripts/launch.sh
index 5a9617dc..988767f9 100644
--- a/gsw/scripts/launch.sh
+++ b/gsw/scripts/launch.sh
@@ -8,7 +8,6 @@ BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
FSW_BIN=$BASE_DIR/fsw/build/exe/cpu1
SIM_BIN=$BASE_DIR/sims/build/bin
SIMS=$(cd $SIM_BIN; ls nos3*simulator)
-#SIM_TABS=$(for i in $SIMS; do printf " --tab --title=$i -e \"$SIM_BIN/$i\" "; done)
# Debugging
#echo "Script directory = " $SCRIPT_DIR
@@ -16,35 +15,55 @@ SIMS=$(cd $SIM_BIN; ls nos3*simulator)
#echo "FSW directory = " $FSW_BIN
#echo "Sim directory = " $SIM_BIN
#echo "Sim list = " $SIMS
-#echo "Sim tabs = " $SIM_TABS
#exit
-echo "COSMOS Ground Station..."
-cd $BASE_DIR/gsw/cosmos
-bundle install # just in case... sometimes the first run of cosmos fails on the nokogiri gem
-ruby Launcher -c nos3_launcher.txt -- system nos3_system.txt &
+#echo "Make /tmp folders..."
+#mkdir /tmp/data 2> /dev/null
+#mkdir /tmp/data/hk 2> /dev/null
+#mkdir /tmp/uplink 2> /dev/null
-echo "Simulators..."
-cd $SIM_BIN
-gnome-terminal \
---tab --title="NOS Engine Standalone Server" -e "/usr/bin/nos_engine_server_standalone -f $SIM_BIN/nos_engine_server_config.json" \
---tab --title="NOS Time Driver" -e $SIM_BIN/nos-time-driver \
---tab --title="Simulator Terminal" -e $SIM_BIN/nos3-simulator-terminal \
---tab -t 'Sample Simulator' -e "$SIM_BIN/nos3-sample-simulator" \
---tab -t 'Battery Simulator' -e "$SIM_BIN/nos3-battery-simulator --config $SIM_BIN/batteries.json" \
---tab -t 'CAM Simulator' -e "$SIM_BIN/nos3-cam-simulator" \
---tab -t 'EPS Simulator' -e "$SIM_BIN/nos3-eps-simulator --iconic true --config $SIM_BIN/eps.json" \
---tab -t 'GPS Simulator' -e "$SIM_BIN/nos3-gps-simulator" \
---tab -t 'RW Simulator' -e "$SIM_BIN/nos3-generic-reactionwheel-simulator" \
---tab --title="truth42sim" -e "$SIM_BIN/nos3-single-simulator truth42sim"
-#$SIM_TABS > /dev/null
+echo "Make data folders..."
+# FSW Side
+mkdir $FSW_BIN/data 2> /dev/null
+mkdir $FSW_BIN/data/cam 2> /dev/null
+mkdir $FSW_BIN/data/evs 2> /dev/null
+mkdir $FSW_BIN/data/hk 2> /dev/null
+mkdir $FSW_BIN/data/inst 2> /dev/null
+# GSW Side
+mkdir /tmp/data 2> /dev/null
+mkdir /tmp/data/cam 2> /dev/null
+mkdir /tmp/data/evs 2> /dev/null
+mkdir /tmp/data/hk 2> /dev/null
+mkdir /tmp/data/inst 2> /dev/null
+mkdir /tmp/uplink 2> /dev/null
+cp $BASE_DIR/fsw/build/exe/cpu1/cf/cfe_es_startup.scr /tmp/uplink/tmp0.so 2> /dev/null
+cp $BASE_DIR/fsw/build/exe/cpu1/cf/sample.so /tmp/uplink/tmp1.so 2> /dev/null
echo "42..."
cd /opt/nos3/42/
rm -rf NOS3InOut
cp -r $BASE_DIR/sims/cfg/InOut /opt/nos3/42/NOS3InOut
-gnome-terminal --title="42 Dynamic Simulator" -e "/opt/nos3/42/42 NOS3InOut" \
+gnome-terminal --tab --title="42 Dynamic Simulator" -- /opt/nos3/42/42 NOS3InOut
+
+echo "Simulators..."
+cd $SIM_BIN
+gnome-terminal --tab --title="NOS Engine Server" -- /usr/bin/nos_engine_server_standalone -f $SIM_BIN/nos_engine_server_config.json
+gnome-terminal --tab --title="NOS Time Driver" -- $SIM_BIN/nos-time-driver
+gnome-terminal --tab --title="NOS Terminal" -- $SIM_BIN/nos3-simulator-terminal
+gnome-terminal --tab --title='CAM Sim' -- $SIM_BIN/nos3-cam-simulator
+gnome-terminal --tab --title='RW Sim' -- $SIM_BIN/nos3-generic-reactionwheel-simulator
+gnome-terminal --tab --title='GPS Sim' -- $SIM_BIN/nos3-gps-simulator
+gnome-terminal --tab --title='Sample Sim' -- $SIM_BIN/nos3-sample-simulator
+gnome-terminal --tab --title="42 Truth Sim" -- $SIM_BIN/nos3-single-simulator truth42sim
+
+echo "COSMOS Ground Station..."
+cd $BASE_DIR/gsw/cosmos
+export MISSION_NAME=$(echo "NOS3")
+export PROCESSOR_ENDIANNESS=$(echo "LITTLE_ENDIAN")
+ruby Launcher -c nos3_launcher.txt --system nos3_system.txt &
+
+sleep 5
echo "Flight Software..."
cd $FSW_BIN
-gnome-terminal --title="NOS3 Flight Software" -- $FSW_BIN/core-cpu1 &
+gnome-terminal --title="NOS3 Flight Software" -- $FSW_BIN/core-cpu1 -R PO &
diff --git a/gsw/scripts/log.sh b/gsw/scripts/log.sh
new file mode 100644
index 00000000..a0b2fa34
--- /dev/null
+++ b/gsw/scripts/log.sh
@@ -0,0 +1,23 @@
+#!/bin/bash -i
+#
+# Convenience script for NOS3 development
+#
+
+SCRIPT_DIR=$(cd `dirname $0` && pwd)
+BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+DATE=$(date "+%Y%m%d_%H%M")
+CAP_NAME=$DATE'_console.txt'
+
+echo "Move minicom.cap for archival..."
+mv $BASE_DIR/minicom.cap $BASE_DIR/gsw/cosmos/outputs/logs/$CAP_NAME 2> /dev/null
+
+#echo "/tmp/data for archival..."
+#mv /tmp/data $BASE_DIR/gsw/cosmos/outputs/logs/data 2> /dev/null
+
+echo "Processing L0 CSVs..."
+cd $SCRIPT_DIR
+./l0.sh
+
+echo "Tar COSMOS files..."
+cd $BASE_DIR/gsw/cosmos/outputs/logs
+tar -czvf $BASE_DIR/$DATE.tar.gz 20* data && yes | rm $BASE_DIR/gsw/cosmos/outputs/logs/20* && yes | rm -r $BASE_DIR/gsw/cosmos/outputs/logs/data
diff --git a/gsw/scripts/real_clean.sh b/gsw/scripts/real_clean.sh
new file mode 100644
index 00000000..fc43f722
--- /dev/null
+++ b/gsw/scripts/real_clean.sh
@@ -0,0 +1,16 @@
+#!/bin/bash -i
+#
+# Convenience script for NOS3 development
+#
+
+SCRIPT_DIR=$(cd `dirname $0` && pwd)
+BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+
+echo "Cleaning up all COSMOS files..."
+yes | rm $BASE_DIR/gsw/cosmos/Gemfile 2> /dev/null
+yes | rm $BASE_DIR/gsw/cosmos/Gemfile.lock 2> /dev/null
+yes | rm -r $BASE_DIR/gsw/cosmos/COMPONENTS 2> /dev/null
+yes | rm -r $BASE_DIR/gsw/cosmos/outputs 2> /dev/null
+yes | rm $BASE_DIR/minicom.cap 2> /dev/null
+
+exit 0
diff --git a/gsw/scripts/stop.sh b/gsw/scripts/stop.sh
index bafde996..ee785c19 100644
--- a/gsw/scripts/stop.sh
+++ b/gsw/scripts/stop.sh
@@ -3,14 +3,33 @@
# Convenience script for NOS3 development
#
+SCRIPT_DIR=$(cd `dirname $0` && pwd)
+BASE_DIR=$(cd `dirname $SCRIPT_DIR`/.. && pwd)
+
# cFS
killall -q -r -9 core-cpu*
# COSMOS
killall -q -9 ruby
+yes | rm $BASE_DIR/gsw/cosmos/Gemfile 2> /dev/null
+yes | rm $BASE_DIR/gsw/cosmos/Gemfile.lock 2> /dev/null
+yes | rm -r $BASE_DIR/gsw/cosmos/COMPONENTS 2> /dev/null
# NOS3
-killall -q -INT -r 'nos3.*simulator.*'
+killall -q -r -9 'nos3.*simulator.*'
+killall -q -r -9 nos3-*
killall -q nos_engine_server_standalone
killall -q nos-time-driver
+
+# NOS3 GPIO
+rm -rf /tmp/gpio_fake
+
+# NOS3 Stored HK
+rm -rf $BASE_DIR/fsw/build/exe/cpu1/scratch/*
+
+# 42
killall -q 42
+rm -rf /opt/nos3/42/NOS3InOut
+rm -rf /tmp/gpio*
+
+exit 0
\ No newline at end of file
diff --git a/sims/CMakeLists.txt b/sims/CMakeLists.txt
index 5acf6dfa..a00d518c 100644
--- a/sims/CMakeLists.txt
+++ b/sims/CMakeLists.txt
@@ -28,18 +28,23 @@ set(CXX_11 ON)
set(CMAKE_SHARED_LINKER_FLAGS "-m32 -Wl,--disable-new-dtags")
endif(CXX_11)
+set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR})
include(MissionSettings.cmake)
# NOS3 Sim Core
add_subdirectory(sim_common)
add_subdirectory(nos_time_driver)
add_subdirectory(sim_terminal)
+add_subdirectory(truth_42_sim)
# Add Component Sims
-FILE(GLOB _ALL_FILES ${CMAKE_CURRENT_SOURCE_DIR}/*_sim)
+FILE(GLOB _ALL_FILES ${CMAKE_CURRENT_SOURCE_DIR}/../components/*)
FOREACH(_FILE ${_ALL_FILES})
IF(IS_DIRECTORY ${_FILE})
- add_subdirectory(${_FILE})
+ get_filename_component(SIM_NAME ${_FILE} NAME)
+ IF(NOT SIM_NAME STREQUAL "template")
+ add_subdirectory(${_FILE}/sim ./${SIM_NAME})
+ ENDIF()
ENDIF()
ENDFOREACH()
diff --git a/sims/arducam_sim b/sims/arducam_sim
deleted file mode 160000
index 71a6fb45..00000000
--- a/sims/arducam_sim
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 71a6fb4591f23dd7e6da0d4ccd0854a604fd8957
diff --git a/sims/cfg/InOut/Flex_Simple.txt b/sims/cfg/InOut/Flex_Simple.txt
deleted file mode 100644
index 3cf956bf..00000000
--- a/sims/cfg/InOut/Flex_Simple.txt
+++ /dev/null
@@ -1,68 +0,0 @@
-<<<<<<<<<<<<<< Flexible Body Inputs for 42 >>>>>>>>>>>>>>>>>>>
-Simple Flex Model ! Description
-2 ! Number of Flex Modes
-****************** Initial Modal States x, u ******************
-1.0E-6 0.0 ! Mode 0 x, u
-1.0E-6 0.0 ! Mode 1 x, u
-****************** Analysis Node Locations *********************
-2 ! Number of Analysis Nodes
-500001 1.0 -1.0 1.5 ! Node ID, location, m
-500002 -1.0 0.0 2.5 ! Node ID, location, m
-****************** Joint Node Mode Shapes *********************
-******* Non-zero Translation Mode Shape (PSI) Elements ********
-0 ! Number of non-zero elements
-******* Non-zero Rotation Mode Shape (THETA) Elements ********
-0 ! Number of non-zero elements
-**************** Analysis Node Mode Shapes *********************
-******* Non-zero Translation Mode Shape (PSI) Elements ********
-12 ! Number of non-zero elements
- 0 0 0 0.1 ! [Mode] [Node] [Axis] Value
- 0 0 1 0.1 ! [Mode] [Node] [Axis] Value
- 0 0 2 0.1 ! [Mode] [Node] [Axis] Value
- 0 1 0 -0.1 ! [Mode] [Node] [Axis] Value
- 0 1 1 -0.1 ! [Mode] [Node] [Axis] Value
- 0 1 2 -0.1 ! [Mode] [Node] [Axis] Value
- 1 0 0 0.1 ! [Mode] [Node] [Axis] Value
- 1 0 1 0.1 ! [Mode] [Node] [Axis] Value
- 1 0 2 0.1 ! [Mode] [Node] [Axis] Value
- 1 1 0 0.1 ! [Mode] [Node] [Axis] Value
- 1 1 1 0.1 ! [Mode] [Node] [Axis] Value
- 1 1 2 0.1 ! [Mode] [Node] [Axis] Value
-******* Non-zero Rotation Mode Shape (THETA) Elements ********
-12 ! Number of non-zero elements
- 0 0 0 0.1 ! [Mode] [Node] [Axis] Value
- 0 0 1 0.0707 ! [Mode] [Node] [Axis] Value
- 0 0 2 0.057735 ! [Mode] [Node] [Axis] Value
- 0 1 0 -0.1 ! [Mode] [Node] [Axis] Value
- 0 1 1 -0.0707 ! [Mode] [Node] [Axis] Value
- 0 1 2 -0.057735 ! [Mode] [Node] [Axis] Value
- 1 0 0 0.1 ! [Mode] [Node] [Axis] Value
- 1 0 1 0.0707 ! [Mode] [Node] [Axis] Value
- 1 0 2 0.057735 ! [Mode] [Node] [Axis] Value
- 1 1 0 0.1 ! [Mode] [Node] [Axis] Value
- 1 1 1 0.0707 ! [Mode] [Node] [Axis] Value
- 1 1 2 0.057735 ! [Mode] [Node] [Axis] Value
-**************** Non-zero Mass Matrix Elements ******************
-2 ! Number of non-zero elements
-0 0 1.0 ! [Row] [Col] Value
-1 1 1.0 ! [Row] [Col] Value
-************* Non-zero Stiffness Matrix Elements ****************
-2 ! Number of non-zero elements
-0 0 39.478 ! [Row] [Col] Value (1 Hz)
-1 1 3947.8 ! [Row] [Col] Value (10 Hz)
-************* Non-zero Damping Matrix Elements ****************
-2 ! Number of non-zero elements
-0 0 0.012566 ! [Row] [Col] Value (0.1%)
-1 1 0.12566 ! [Row] [Col] Value (0.1%)
-********* Linear Momentum Modal Integral, Pf, 3 x Nf *********
-0.0 0.0 0.0 ! Mode 0, [x y z]
-0.0 0.0 0.0 ! Mode 1, [x y z]
-******** Angular Momentum Modal Integral, Hf, 3 x Nf *********
-0.0 0.0 0.0 ! Mode 0, [x y z]
-0.0 0.0 0.0 ! Mode 1, [x y z]
-********** Linear Modal Integral, L, 3 x 3 x Nf **************
-0 ! Number of non-zero elements
-********* Angular Modal Integral, N, 3 x 3 x Nf x Nf *********
-0 ! Number of non-zero elements
-[EOF]
-
\ No newline at end of file
diff --git a/sims/cfg/InOut/ISS_TLE.txt b/sims/cfg/InOut/ISS_TLE.txt
new file mode 100644
index 00000000..ad698ed8
--- /dev/null
+++ b/sims/cfg/InOut/ISS_TLE.txt
@@ -0,0 +1,3 @@
+ISS
+1 25544U 98067A 18267.56068992 .00016717 00000-0 10270-3 0 9006
+2 25544 51.6363 243.4961 0004165 202.7876 157.3092 15.53770437 13961
\ No newline at end of file
diff --git a/sims/cfg/InOut/Inp_Cmd.txt b/sims/cfg/InOut/Inp_Cmd.txt
index 7a04cefc..c0de4e56 100644
--- a/sims/cfg/InOut/Inp_Cmd.txt
+++ b/sims/cfg/InOut/Inp_Cmd.txt
@@ -1,5 +1,5 @@
<<<<<<<<<<<<<<<<< 42: Command Script File >>>>>>>>>>>>>>>>>
-0.0 SC[0] qrl = [0.0 0.0 0.0 1.0]
+0.0 SC[0] Cmd Angles = [0.0 0.0 0.0] deg, Seq = 123 wrt L Frame
EOF
##############################################################
@@ -24,9 +24,6 @@ EOF
%lf SC[%ld].G[%ld].TrnLocked[%ld] %s
%lf Impart Impulsive Delta-V of [%lf %lf %lf] m/s in Frame %c to Orb[%ld]
%c can be N or L
-%lf SC[%ld].LoopGain = %lf
-%lf SC[%ld].LoopDelay = %lf
-%lf SC[%ld].GainAndDelayActive = %s
# GUI-related commands
%lf POV.Host.SC %ld
@@ -36,7 +33,7 @@ EOF
%lf Banner = "Banner in Quotes"
%lf GL Output Step = %lf
%lf POV CmdRange = %lf
-%lf POV CmdSeq = %ld
+%lf POV CmdSeq = %li
%lf POV CmdAngle = [%lf %lf %lf] deg
%lf POV CmdPermute = [%lf %lf %lf; %lf %lf %lf; %lf %lf %lf]
%lf POV TimeToGo = %lf
diff --git a/sims/cfg/InOut/Inp_FOV.txt b/sims/cfg/InOut/Inp_FOV.txt
index dafaa956..74752c11 100644
--- a/sims/cfg/InOut/Inp_FOV.txt
+++ b/sims/cfg/InOut/Inp_FOV.txt
@@ -33,11 +33,11 @@ TRUE TRUE ! Draw Near Field, Draw Far Field
135.0 0.0 0.0 213 ! Euler Angles [deg], Sequence
--------------------------------------------------------------------
"PLANE" ! Label
-24 8.0 ! Number of Sides, Length [m]
+24 8.0 ! Number of Sides, Length [m]
0.0 0.0 ! X Width, Y Height [deg]
1.0 1.0 1.0 0.3 ! Color RGB+Alpha
-PLANE ! WIREFRAME, SOLID, VECTOR, or PLANE
-TRUE TRUE ! Draw Near Field, Draw Far Field
-0 0 ! SC, Body
+PLANE ! WIREFRAME, SOLID, VECTOR, or PLANE
+FALSE FALSE ! Draw Near Field, Draw Far Field
+0 0 ! SC, Body
0.0 0.0 0.0 ! Position in Body [m]
-45.0 0.0 0.0 213 ! Euler Angles [deg], Sequence
diff --git a/sims/cfg/InOut/Inp_Graphics.txt b/sims/cfg/InOut/Inp_Graphics.txt
index b7810217..ec1f2081 100644
--- a/sims/cfg/InOut/Inp_Graphics.txt
+++ b/sims/cfg/InOut/Inp_Graphics.txt
@@ -2,23 +2,23 @@
1.0 ! GL Output Interval [sec]
Skymap09.txt ! Star Catalog File Name
TRUE ! Map Window Exists
-TRUE ! Orrery Window Exists
-TRUE ! Unit Sphere Window Exists
+FALSE ! Orrery Window Exists
+FALSE ! Unit Sphere Window Exists
******************************* POV *********************************
FALSE ! Pause at Startup
TRACK_HOST ! POV Mode (TRACK_HOST, TRACK_TARGET, FIXED_IN_HOST)
SC ! Host Type (WORLD, REFORB, FRM, SC, BODY)
0 0 L ! Initial Host SC, Body, POV Frame
SC ! Target Type (WORLD, REFORB, FRM, SC, BODY)
-0 0 L ! Initial Target SC, Body, POV Frame
-POS_Z ! Boresight Axis
-NEG_Y ! Up Axis
-4.0 ! Initial POV Range from Target [m]
+0 0 N ! Initial Target SC, Body, POV Frame
+NEG_Y ! Boresight Axis
+POS_Z ! Up Axis
+3.2 ! Initial POV Range from Target [m]
30.0 ! POV Angle (Vertical) [deg]
0.0 0.0 0.0 ! POV Position in Host [m]
FRONT ! Initial POV View (FRONT, FRONT_RIGHT, etc)
******************************* CAM *********************************
-"42 Cam" ! Cam Title [delimited by "]
+"42 Cam" ! Cam Title [delimited by "]
800 800 ! Width, Height [pixels]
5.0E-5 ! Mouse Scale Factor
1.8 ! Display's Gamma Exponent (1.8-4.0)
@@ -37,7 +37,7 @@ FALSE "Prox Ops" ! Show Prox Ops
FALSE "TDRS" ! Show TDRS Satellites
TRUE "Shadows" ! Show Shadows
FALSE "Astro Labels" ! Show Astro Labels
-FALSE "Truth Vectors" ! Show Truth Vectors
+TRUE "Truth Vectors" ! Show Truth Vectors
FALSE "FSW Vectors" ! Show FSW Vectors
TRUE "Milky Way" ! Show Milky Way
FALSE "Fermi Sky" ! Show Fermi Sky
@@ -52,4 +52,4 @@ TRUE "Night" ! Show Night
********************* Unit Sphere Show Menu *************************
TRUE ! Show Major Constellations
TRUE ! Show Zodiac Constellations
-FALSE ! Show Minor Constellations
\ No newline at end of file
+FALSE ! Show Minor Constellations
diff --git a/sims/cfg/InOut/Inp_IPC.txt b/sims/cfg/InOut/Inp_IPC.txt
index 7bb5a03b..32cf61ba 100644
--- a/sims/cfg/InOut/Inp_IPC.txt
+++ b/sims/cfg/InOut/Inp_IPC.txt
@@ -40,17 +40,22 @@ FALSE ! Allow Blocking (i.e. wait on RX)
FALSE ! Echo to stdout
1 ! Number of TX prefixes
"SC" ! Prefix 0
-********************************** IPC 4 *****************************
+********************************** Truth data to sim to pass to COSMOS ********************
TX ! IPC Mode (OFF,TX,RX,TXRX,ACS,WRITEFILE,READFILE)
0 ! AC.ID for ACS mode
-"State04.42" ! File name for WRITE or READ
+"State.42" ! File name for WRITE or READ
SERVER ! Socket Role (SERVER,CLIENT,GMSEC_CLIENT)
-localhost 9999 ! Server Host Name, Port
+localhost 9999 ! Server Host Name, Port
FALSE ! Allow Blocking (i.e. wait on RX)
FALSE ! Echo to stdout
-2 ! Number of TX prefixes
-"SC" ! Prefix 0
-"Orb" ! Prefix 1
+7 ! Number of TX prefixes
+"SC[0].PosR" ! Prefix 0
+"SC[0].VelR" ! Prefix 1
+"SC[0].svb" ! Prefix 2
+"SC[0].bvb" ! Prefix 3
+"SC[0].Hvb" ! Prefix 4
+"SC[0].B[0]" ! Prefix 5
+"Orb" ! Prefix 6
********************************** Write to file for analysis *****************************
WRITEFILE ! IPC Mode (OFF,TX,RX,TXRX,ACS,WRITEFILE,READFILE)
0 ! AC.ID for ACS mode
@@ -59,6 +64,11 @@ SERVER ! Socket Role (SERVER,CLIENT,GMSEC_CLIEN
localhost 6008 ! Server Host Name, Port
FALSE ! Allow Blocking (i.e. wait on RX)
FALSE ! Echo to stdout
-2 ! Number of TX prefixes
-"SC" ! Prefix 0
-"Orb" ! Prefix 1
+7 ! Number of TX prefixes
+"SC[0].PosR" ! Prefix 0
+"SC[0].VelR" ! Prefix 1
+"SC[0].svb" ! Prefix 2
+"SC[0].bvb" ! Prefix 3
+"SC[0].Hvb" ! Prefix 4
+"SC[0].B[0]" ! Prefix 5
+"Orb" ! Prefix 6
diff --git a/sims/cfg/InOut/Inp_Sim.txt b/sims/cfg/InOut/Inp_Sim.txt
index c0cca9f8..1e116d57 100644
--- a/sims/cfg/InOut/Inp_Sim.txt
+++ b/sims/cfg/InOut/Inp_Sim.txt
@@ -1,13 +1,13 @@
<<<<<<<<<<<<<<<<< 42: The Mostly Harmless Simulator >>>>>>>>>>>>>>>>>
************************** Simulation Control **************************
NOS3 ! Time Mode (FAST, REAL, EXTERNAL, or NOS3)
-10000.0 0.1 ! Sim Duration, Step Size [sec]
+86400.0 0.1 ! Sim Duration, Step Size [sec]
1.0 ! File Output Interval [sec]
TRUE ! Graphics Front End?
Inp_Cmd.txt ! Command Script File Name
************************** Reference Orbits **************************
1 ! Number of Reference Orbits
-TRUE Orb_LEO.txt ! Input file name for Orb 0
+TRUE Orb_ISS.txt ! Input file name for Orb 0
***************************** Spacecraft *****************************
1 ! Number of Spacecraft
TRUE 0 SC_NOS3.txt ! Existence, RefOrb, Input file for SC 0
@@ -16,44 +16,44 @@ TRUE 0 SC_NOS3.txt ! Existence, RefOrb, Input file for SC 0
08 30 00.00 ! Time (UTC) (Hr,Min,Sec)
37.0 ! Leap Seconds (sec)
USER ! F10.7, Ap (USER, NOMINAL or TWOSIGMA)
-230.0 ! USER-provided F10.7
-100.0 ! USER-provided Ap
+124.0 ! USER-provided F10.7
+10.0 ! USER-provided Ap
IGRF ! Magfield (NONE,DIPOLE,IGRF)
8 8 ! IGRF Degree and Order (<=10)
8 8 ! Earth Gravity Model N and M (<=18)
2 0 ! Mars Gravity Model N and M (<=18)
2 0 ! Luna Gravity Model N and M (<=18)
-FALSE FALSE ! Aerodynamic Forces & Torques (Shadows)
-FALSE ! Gravity Gradient Torques
-FALSE FALSE ! Solar Pressure Forces & Torques (Shadows)
-FALSE ! Gravity Perturbation Forces
+TRUE FALSE ! Aerodynamic Forces & Torques (Shadows)
+TRUE ! Gravity Gradient Torques
+TRUE FALSE ! Solar Pressure Forces & Torques (Shadows)
+TRUE ! Gravity Perturbation Forces
FALSE ! Passive Joint Forces & Torques
FALSE ! Thruster Plume Forces & Torques
FALSE ! RWA Imbalance Forces and Torques
FALSE ! Contact Forces and Torques
FALSE ! CFD Slosh Forces and Torques
-FALSE ! Output Environmental Torques to Files
+FALSE ! Albedo Effect on CSS Measurements
+TRUE ! Output Environmental Torques to Files
********************* Celestial Bodies of Interest *********************
MEAN ! Ephem Option (MEAN or DE430)
TRUE ! Mercury
TRUE ! Venus
TRUE ! Earth and Luna
-TRUE ! Mars and its moons
-TRUE ! Jupiter and its moons
-TRUE ! Saturn and its moons
-TRUE ! Uranus and its moons
-TRUE ! Neptune and its moons
-TRUE ! Pluto and its moons
+FALSE ! Mars and its moons
+FALSE ! Jupiter and its moons
+FALSE ! Saturn and its moons
+FALSE ! Uranus and its moons
+FALSE ! Neptune and its moons
+FALSE ! Pluto and its moons
FALSE ! Asteroids and Comets
***************** Lagrange Point Systems of Interest ******************
FALSE ! Earth-Moon
FALSE ! Sun-Earth
FALSE ! Sun-Jupiter
************************* Ground Stations ***************************
-6 ! Number of Ground Stations
+5 ! Number of Ground Stations
TRUE EARTH -77.0 37.0 "GSFC" ! Exists, World, Lng, Lat, Label
TRUE EARTH -155.6 19.0 "South Point" ! Exists, World, Lng, Lat, Label
TRUE EARTH 115.4 -29.0 "Dongara" ! Exists, World, Lng, Lat, Label
TRUE EARTH -71.0 -33.0 "Santiago" ! Exists, World, Lng, Lat, Label
-TRUE LUNA 45.0 45.0 "Moon Base Alpha" ! Exists, World, Lng, Lat, Label
-TRUE EARTH -75.512936 37.854886 "Wallops" ! Exists, World, Lng, Lat, Label
+TRUE LUNA 45.0 45.0 "Moon Base Alpha" ! Exists, World, Lng, Lat, Label
\ No newline at end of file
diff --git a/sims/cfg/InOut/Orb_ISS.txt b/sims/cfg/InOut/Orb_ISS.txt
index 1b8fb6d2..93e30f51 100644
--- a/sims/cfg/InOut/Orb_ISS.txt
+++ b/sims/cfg/InOut/Orb_ISS.txt
@@ -4,31 +4,32 @@ CENTRAL ! Orbit Type (ZERO, FLIGHT, CENTRAL, THREE_BODY)
:::::::::::::: Use these lines if ZERO :::::::::::::::::
MINORBODY_2 ! World
FALSE ! Use Polyhedron Gravity
-:::::::::::::: Use these lines if FLIGHT :::::::::::::::::
+:::::::::::::: Use these lines if FLIGHT :::::::::::::::::
0 ! Region Number
FALSE ! Use Polyhedron Gravity
-:::::::::::::: Use these lines if CENTRAL :::::::::::::::::
+:::::::::::::: Use these lines if Body-Centered Orbit :::::::::::::::::
EARTH ! Orbit Center
-TRUE ! Secular Orbit Drift Due to J2
+TRUE ! Secular Orbit Drift Due to J2
KEP ! Use Keplerian elements (KEP) or (RV) or FILE
-AE ! Use Peri/Apoapsis (PA) or min alt/ecc (AE)
-347.0 358.0 ! Periapsis & Apoapsis Altitude, km
-410.7674 0.0003918 ! Min Altitude (km), Eccentricity
-51.6363 ! Inclination (deg)
-180 ! Right Ascension of Ascending Node (deg)
+PA ! Use Peripsis & Apoapsis (PA) or min Alt & Ecc (AE)
+420.0 420.0 ! Periapsis & Apoapsis Altitude, km Apoapsis Altitude (km)
+420.0 0.0 ! Min Altitude (km), Eccentricity
+51.5 ! Inclination (deg)
+22.0 ! Right Ascension of Ascending Node (deg)
202.7876 ! Argument of Periapsis (deg)
-0.0 ! True Anomaly (deg)
+260.0 ! True Anomaly (deg)
0.0 0.0 0.0 ! RV Initial Position (km)
0.0 0.0 0.0 ! RV Initial Velocity (km/sec)
-TLE ISS ! TLE or TRV format, Label to find in file
-ISS_TLE.txt ! File name
+TRV ! TLE, TRV, or SPLINE file format
+"TRV.txt" ! File name
+"EXAMPLE 1" ! Label to find in TLE or TRV file
::::::::::::: Use these lines if Three-Body Orbit ::::::::::::::::
SUNEARTH ! Lagrange system
LAGDOF_MODES ! Propagate using LAGDOF_MODES or LAGDOF_COWELL or LAGDOF_SPLINE
MODES ! Initialize with MODES or XYZ or FILE
L2 ! Libration point (L1, L2, L3, L4, L5)
800000.0 ! XY Semi-major axis, km
-45.0 ! Initial XY Phase, deg (CCW from -Y)
+45.0 ! Initial XY Phase, deg
CW ! Sense (CW, CCW), viewed from +Z
0.0 ! Second XY Mode Semi-major Axis, km (L4, L5 only)
0.0 ! Second XY Mode Initial Phase, deg (L4, L5 only)
diff --git a/sims/cfg/InOut/Orb_LEO.txt b/sims/cfg/InOut/Orb_LEO.txt
index c46cb6ba..5e1bc691 100644
--- a/sims/cfg/InOut/Orb_LEO.txt
+++ b/sims/cfg/InOut/Orb_LEO.txt
@@ -4,31 +4,32 @@ CENTRAL ! Orbit Type (ZERO, FLIGHT, CENTRAL, THREE_BODY)
:::::::::::::: Use these lines if ZERO :::::::::::::::::
MINORBODY_2 ! World
FALSE ! Use Polyhedron Gravity
-:::::::::::::: Use these lines if FLIGHT :::::::::::::::::
+:::::::::::::: Use these lines if FLIGHT :::::::::::::::::
0 ! Region Number
FALSE ! Use Polyhedron Gravity
-:::::::::::::: Use these lines if CENTRAL :::::::::::::::::
+:::::::::::::: Use these lines if Body-Centered Orbit :::::::::::::::::
EARTH ! Orbit Center
FALSE ! Secular Orbit Drift Due to J2
KEP ! Use Keplerian elements (KEP) or (RV) or FILE
PA ! Use Peri/Apoapsis (PA) or min alt/ecc (AE)
-500.0 500.0 ! Periapsis & Apoapsis Altitude, km
-400.0 2.0 ! Min Altitude (km), Eccentricity
-52.0 ! Inclination (deg)
-180.0 ! Right Ascension of Ascending Node (deg)
+100.0 400.0 ! Periapsis & Apoapsis Altitude, km
+200.0 2.0 ! Min Altitude (km), Eccentricity
+30.0 ! Inclination (deg)
+0.0 ! Right Ascension of Ascending Node (deg)
0.0 ! Argument of Periapsis (deg)
-0.0 ! True Anomaly (deg)
-6678.0 0.0 0.0 ! RV Initial Position (km)
-0.0 8.5 0.0 ! RV Initial Velocity (km/sec)
-TRV "EXAMPLE 1" ! TLE or TRV format, Label to find in file
+-30.0 ! True Anomaly (deg)
+0.0 0.0 0.0 ! RV Initial Position (km)
+0.0 0.0 0.0 ! RV Initial Velocity (km/sec)
+TRV ! TLE, TRV, or SPLINE file format
"TRV.txt" ! File name
-::::::::::::: Use these lines if THREE_BODY ::::::::::::::::
+"EXAMPLE 1" ! Label to find in TLE or TRV file
+::::::::::::: Use these lines if Three-Body Orbit ::::::::::::::::
SUNEARTH ! Lagrange system
-LAGDOF_MODES ! Propagate using LAGDOF_MODES or LAGDOF_COWELL or LAGDOF_SPLINE
+LAGDOF_MODES ! Propagate using LAGDOF_MODES or LAGDOF_COWELL
MODES ! Initialize with MODES or XYZ or FILE
L2 ! Libration point (L1, L2, L3, L4, L5)
800000.0 ! XY Semi-major axis, km
-45.0 ! Initial XY Phase, deg (CCW from -Y)
+45.0 ! Initial XY Phase, deg
CW ! Sense (CW, CCW), viewed from +Z
0.0 ! Second XY Mode Semi-major Axis, km (L4, L5 only)
0.0 ! Second XY Mode Initial Phase, deg (L4, L5 only)
@@ -37,8 +38,8 @@ CW ! Sense (CW, CCW), viewed from +Z (L4, L5 only)
60.0 ! Initial Z Phase, deg
1.05 0.5 0.0 ! Initial X, Y, Z (Non-dimensional)
0.0 0.0 0.0 ! Initial Xdot, Ydot, Zdot (Non-dimensional)
-TRV "ORB_ID" ! TLE, TRV or SPLINE format, Label to find in file
-"TRV.txt" ! File name
+TRV "ORB_ID" ! TLE or TRV format, Label to find in file
+"TRV.txt" ! File name, label
******************* Formation Frame Parameters ************************
L ! Formation Frame Fixed in [NL]
0.0 0.0 0.0 123 ! Euler Angles (deg) and Sequence
diff --git a/sims/cfg/InOut/SC_NOS3.txt b/sims/cfg/InOut/SC_NOS3.txt
index 425b8a68..95ab514c 100644
--- a/sims/cfg/InOut/SC_NOS3.txt
+++ b/sims/cfg/InOut/SC_NOS3.txt
@@ -5,17 +5,17 @@ GenScSpriteAlpha.ppm ! Sprite File Name
PASSIVE_FSW ! Flight Software Identifier
0.2 ! FSW Sample Time, sec
************************* Orbit Parameters ****************************
-ENCKE ! Orbit Prop FIXED, EULER_HILL, ENCKE, or COWELL
+FIXED ! Orbit Prop FIXED, EULER_HILL, ENCKE, or COWELL
CM ! Pos of CM or ORIGIN, wrt F
0.0 0.0 0.0 ! Pos wrt Formation (m), expressed in F
0.0 0.0 0.0 ! Vel wrt Formation (m/s), expressed in F
*************************** Initial Attitude ***************************
-NAN ! Ang Vel wrt [NL], Att [QA] wrt [NLF]
-0.0 0.0 0.0 ! Ang Vel (deg/sec)
-0.0 0.0 0.0 1.0 ! Quaternion
-0.0 0.0 0.0 123 ! Angles (deg) & Euler Sequence
+LAL ! Ang Vel wrt [NL], Att [QA] wrt [NLF]
+0.0 0.0 0.0 ! Ang Vel (deg/sec)
+0.0 0.0 0.0 1.0 ! Quaternion
+0.0 0.0 0.0 123 ! Angles (deg) & Euler Sequence
*************************** Dynamics Flags ***************************
-DYN_JOINT ! Rotation STEADY, KIN_JOINT, or DYN_JOINT
+GAUSS_ELIM ! Solve Dynamics by GAUSS_ELIM or ORDER_N
FALSE ! Passive Joint Forces and Torques Enabled
FALSE ! Compute Constraint Forces and Torques
REFPT_CM ! Mass Props referenced to REFPT_CM or REFPT_JOINT
@@ -58,120 +58,132 @@ FALSE FALSE FALSE ! TrnDOF Locked
0.0 0.0 0.0 ! Trn Passive Damping Coefficients (Ns/m)
*************************** Wheel Parameters ***************************
3 ! Number of wheels
-============================= Wheel 0 ================================
+============================= Wheel X ================================
0.0 ! Initial Momentum, N-m-sec
-1.0 0.0 0.0 ! Wheel Axis Components, [X, Y, Z]
-0.004 0.015 ! Max Torque (N-m), Momentum (N-m-sec)
-0.000021 ! Wheel Rotor Inertia, kg-m^2
-0.025 ! Static Imbalance, g-cm
-0.25 ! Dynamic Imbalance, g-cm^2
+0 1.0 0.0 0.0 ! Body, Wheel Axis Components, [X, Y, Z]
+0.001 0.01082 ! Max Torque (N-m), Momentum (N-m-sec)
+1.72e-5 ! Wheel Rotor Inertia, kg-m^2
+0.003 ! Static Imbalance, g-cm
+0.0 ! Dynamic Imbalance, g-cm^2
+0 ! Body
0 ! Flex Node Index
-============================= Wheel 1 ================================
+============================= Wheel Y ================================
0.0 ! Initial Momentum, N-m-sec
-0.0 1.0 0.0 ! Wheel Axis Components, [X, Y, Z]
-0.004 0.015 ! Max Torque (N-m), Momentum (N-m-sec)
-0.000021 ! Wheel Rotor Inertia, kg-m^2
-0.025 ! Static Imbalance, g-cm
-0.25 ! Dynamic Imbalance, g-cm^2
+0 0.0 1.0 0.0 ! Body, Wheel Axis Components, [X, Y, Z]
+0.001 0.01082 ! Max Torque (N-m), Momentum (N-m-sec)
+1.72e-5 ! Wheel Rotor Inertia, kg-m^2
+0.003 ! Static Imbalance, g-cm
+0.0 ! Dynamic Imbalance, g-cm^2
+0 ! Body
0 ! Flex Node Index
-============================= Wheel 2 ================================
+============================= Wheel Z ================================
0.0 ! Initial Momentum, N-m-sec
-0.0 0.0 1.0 ! Wheel Axis Components, [X, Y, Z]
-0.004 0.015 ! Max Torque (N-m), Momentum (N-m-sec)
-0.000021 ! Wheel Rotor Inertia, kg-m^2
-0.025 ! Static Imbalance, g-cm
-0.25 ! Dynamic Imbalance, g-cm^2
+0 0.0 0.0 1.0 ! Body, Wheel Axis Components, [X, Y, Z]
+0.001 0.01082 ! Max Torque (N-m), Momentum (N-m-sec)
+1.72e-5 ! Wheel Rotor Inertia, kg-m^2
+0.003 ! Static Imbalance, g-cm
+0.0 ! Dynamic Imbalance, g-cm^2
+0 ! Body
0 ! Flex Node Index
**************************** MTB Parameters ****************************
3 ! Number of MTBs
============================== MTB 0 =================================
-0.125 ! Saturation (A-m^2)
+1.42 ! Saturation (A-m^2)
1.0 0.0 0.0 ! MTB Axis Components, [X, Y, Z]
0 ! Flex Node Index
============================== MTB 1 =================================
-0.125 ! Saturation (A-m^2)
+1.42 ! Saturation (A-m^2)
0.0 1.0 0.0 ! MTB Axis Components, [X, Y, Z]
0 ! Flex Node Index
============================== MTB 2 =================================
-0.125 ! Saturation (A-m^2)
+1.42 ! Saturation (A-m^2)
0.0 0.0 1.0 ! MTB Axis Components, [X, Y, Z]
0 ! Flex Node Index
************************* Thruster Parameters **************************
-3 ! Number of Thrusters
-============================== Thr 0 =================================
-4.0 ! Thrust Force (N)
-1.0 0.0 0.0 ! Thrust Axis
-.12 -.25 .2 ! Location in B0, m
-0 ! Flex Node Index
-============================== Thr 0 =================================
-4.0 ! Thrust Force (N)
-0.0 1.0 0.0 ! Thrust Axis
-.12 -.25 .2 ! Location in B0, m
-0 ! Flex Node Index
-============================== Thr 0 =================================
-4.0 ! Thrust Force (N)
-0.0 0.0 1.0 ! Thrust Axis
-.12 -.25 .2 ! Location in B0, m
+0 ! Number of Thrusters
+=============================== Thr 0 =================================
+1.0 ! Thrust Force (N)
+-1.0 0.0 0.0 ! Body, Thrust Axis
+1.0 1.0 1.0 ! Location in B0, m
+0 ! Body
0 ! Flex Node Index
******************************* Gyro ************************************
3 ! Number of Gyro Axes
============================== Axis 0 ===================================
-0.1 ! Sample Time,sec
-1.0 0.0 0.0 ! Axis expressed in Body Frame
-1000.0 ! Max Rate, deg/sec
-100.0 ! Scale Factor Error, ppm
-1.0 ! Quantization, arcsec
-0.0 ! Angle Random Walk (deg/rt-hr)
-0.0 1.0 ! Bias Stability (deg/hr) over timespan (hr)
-0.0 ! Angle Noise, arcsec RMS
-0.0 ! Initial Bias (deg/hr)
-1 ! Flex Node Index
+0.01 ! Sample Time,sec
+0.0 0.0 1.0 ! Axis expressed in Body Frame
+400.0 ! Max Rate, deg/sec
+500.0 ! Scale Factor Error, ppm
+0.22 ! Quantization, arcsec
+0.15 ! Angle Random Walk (deg/rt-hr)
+0.3 1.0 ! Bias Stability (deg/hr) over timespan (hr)
+1.0 ! Angle Noise, arcsec RMS
+4.0 ! Initial Bias (deg/hr)
+0 ! Flex Node Index
============================== Axis 1 ===================================
-0.1 ! Sample Time,sec
-0.0 1.0 0.0 ! Axis expressed in Body Frame
-1000.0 ! Max Rate, deg/sec
-100.0 ! Scale Factor Error, ppm
-1.0 ! Quantization, arcsec
-0.0 ! Angle Random Walk (deg/rt-hr)
-0.0 1.0 ! Bias Stability (deg/hr) over timespan (hr)
-0.0 ! Angle Noise, arcsec RMS
-0.0 ! Initial Bias (deg/hr)
-1 ! Flex Node Index
+0.01 ! Sample Time,sec
+-1.0 0.0 0.0 ! Axis expressed in Body Frame
+400.0 ! Max Rate, deg/sec
+500.0 ! Scale Factor Error, ppm
+0.22 ! Quantization, arcsec
+0.15 ! Angle Random Walk (deg/rt-hr)
+0.3 1.0 ! Bias Stability (deg/hr) over timespan (hr)
+1.0 ! Angle Noise, arcsec RMS
+4.0 ! Initial Bias (deg/hr)
+0 ! Flex Node Index
============================== Axis 2 ===================================
-0.1 ! Sample Time,sec
-0.0 0.0 1.0 ! Axis expressed in Body Frame
-1000.0 ! Max Rate, deg/sec
-100.0 ! Scale Factor Error, ppm
-1.0 ! Quantization, arcsec
-0.0 ! Angle Random Walk (deg/rt-hr)
-0.0 1.0 ! Bias Stability (deg/hr) over timespan (hr)
-0.0 ! Angle Noise, arcsec RMS
-0.0 ! Initial Bias (deg/hr)
-1 ! Flex Node Index
+0.01 ! Sample Time,sec
+0.0 -1.0 0.0 ! Axis expressed in Body Frame
+400.0 ! Max Rate, deg/sec
+500.0 ! Scale Factor Error, ppm
+0.22 ! Quantization, arcsec
+0.15 ! Angle Random Walk (deg/rt-hr)
+0.3 1.0 ! Bias Stability (deg/hr) over timespan (hr)
+1.0 ! Angle Noise, arcsec RMS
+4.0 ! Initial Bias (deg/hr)
+0 ! Flex Node Index
*************************** Magnetometer ********************************
-0 ! Number of Magnetometer Axes
+3 ! Number of Magnetometer Axes
============================== Axis 0 ===================================
-0.1 ! Sample Time,sec
+0.03125 ! Sample Time,sec
1.0 0.0 0.0 ! Axis expressed in Body Frame
-60.0E-6 ! Saturation, Tesla
+65536E-9 ! Saturation, Tesla
0.0 ! Scale Factor Error, ppm
-1.0E-6 ! Quantization, Tesla
-1.0E-6 ! Noise, Tesla RMS
-1 ! Flex Node Index
+2.0E-9 ! Quantization, Tesla
+0.1E-9 ! Noise, Tesla RMS
+0 ! Flex Node Index
+============================== Axis 1 ===================================
+0.03125 ! Sample Time,sec
+0.0 1.0 0.0 ! Axis expressed in Body Frame
+65536E-9 ! Saturation, Tesla
+0.0 ! Scale Factor Error, ppm
+2.0E-9 ! Quantization, Tesla
+0.1E-9 ! Noise, Tesla RMS
+0 ! Flex Node Index
+============================== Axis 2 ===================================
+0.03125 ! Sample Time,sec
+0.0 0.0 1.0 ! Axis expressed in Body Frame
+65536E-9 ! Saturation, Tesla
+0.0 ! Scale Factor Error, ppm
+2.0E-9 ! Quantization, Tesla
+0.1E-9 ! Noise, Tesla RMS
+0 ! Flex Node Index
*********************** Coarse Sun Sensor *******************************
0 ! Number of Coarse Sun Sensors
============================== CSS 0 ====================================
0.1 ! Sample Time,sec
-0 1.0 1.0 1.0 ! Body, Axis expressed in Body Frame
+1.0 0.0 0.0 ! Axis expressed in Body Frame
90.0 ! Half-cone Angle, deg
1.0 ! Scale Factor
0.001 ! Quantization
+0 ! Body
0 ! Flex Node Index
************************* Fine Sun Sensor *******************************
0 ! Number of Fine Sun Sensors
=============================== FSS 0 ===================================
0.2 ! Sample Time,sec
70.0 0.0 0.0 231 ! Mounting Angles (deg), Seq in Body
+Z_AXIS ! Boresight Axis X_AXIS, Y_AXIS, or Z_AXIS
32.0 32.0 ! X, Y FOV Size, deg
0.1 ! Noise Equivalent Angle, deg RMS
0.5 ! Quantization, deg
@@ -180,18 +192,19 @@ FALSE FALSE FALSE ! TrnDOF Locked
0 ! Number of Star Trackers
=============================== ST 0 ====================================
0.25 ! Sample Time,sec
--90.0 90.0 00.0 321 ! Mounting Angles (deg), Seq in Body
-8.0 8.0 ! X, Y FOV Size, deg
+30.0 20.0 10.0 213 ! Mounting Angles (deg), Seq in Body
+Z_AXIS ! Boresight Axis X_AXIS, Y_AXIS, or Z_AXIS
+8.0 8.0 ! H, V FOV Size, deg
30.0 10.0 10.0 ! Sun, Earth, Moon Exclusion Angles, deg
2.0 2.0 20.0 ! Noise Equivalent Angle, arcsec RMS
-1 ! Flex Node Index
+0 ! Flex Node Index
****************************** GPS **************************************
1 ! Number of GPS Receivers
============================= GPSR 0 ====================================
0.25 ! Sample Time,sec
-0.0 ! Position Noise, m RMS
-0.00 ! Velocity Noise, m/sec RMS
-00.0E-9 ! Time Noise, sec RMS
+4.0 ! Position Noise, m RMS
+0.02 ! Velocity Noise, m/sec RMS
+20.0E-9 ! Time Noise, sec RMS
0 ! Flex Node Index
*************************** Accelerometer *******************************
3 ! Number of Accel Axes
diff --git a/sims/cfg/nos3-simulator.xml b/sims/cfg/nos3-simulator.xml
index c72d2f43..102c0988 100644
--- a/sims/cfg/nos3-simulator.xml
+++ b/sims/cfg/nos3-simulator.xml
@@ -5,7 +5,8 @@
sim_log_config.xml
- 552110400.0
+
+ 814048200.0
100000
100000
tcp://127.0.0.1:12001
diff --git a/sims/clyde_battery_sim b/sims/clyde_battery_sim
deleted file mode 160000
index 25ebfd55..00000000
--- a/sims/clyde_battery_sim
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 25ebfd554b2d57f9971a901b7153de638b4ff585
diff --git a/sims/clyde_eps_sim b/sims/clyde_eps_sim
deleted file mode 160000
index 568f3930..00000000
--- a/sims/clyde_eps_sim
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 568f393039d9bd2b6ffe1e5365ef4ab5826a52b5
diff --git a/sims/generic_reaction_wheel_sim b/sims/generic_reaction_wheel_sim
deleted file mode 160000
index 9726e3d3..00000000
--- a/sims/generic_reaction_wheel_sim
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 9726e3d3ba29f2dbff487469d78b440d547afc48
diff --git a/sims/novatel_oem615_sim b/sims/novatel_oem615_sim
deleted file mode 160000
index b39fbfa4..00000000
--- a/sims/novatel_oem615_sim
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit b39fbfa43ffeee78d8398ddaeeeed32d9529bdde
diff --git a/sims/sample_sim b/sims/sample_sim
deleted file mode 160000
index cf28f3b4..00000000
--- a/sims/sample_sim
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit cf28f3b4381131ddca583a7a67c71c9d9755fc3b
diff --git a/sims/truth_42_sim b/sims/truth_42_sim
index 5874558b..cfb5f2fb 160000
--- a/sims/truth_42_sim
+++ b/sims/truth_42_sim
@@ -1 +1 @@
-Subproject commit 5874558b6eb37fc89d4bef743742057adf1c46f6
+Subproject commit cfb5f2fb4732849f32fdce79458f7a180f0ec94e