From 4d1d4e446e0bb23a6e107fc2932e224a3f3ef136 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 3 Apr 2026 15:48:48 -0400 Subject: [PATCH 01/18] https://github.com/nasa/nos3/issues/848 - Begin incorporating 42 comm link data in the NOS3 radio sim. --- cfg/InOut/Inp_CommLink.txt | 4 ++-- cfg/InOut/Inp_IPC.txt | 13 +++++++++++-- cfg/InOut/Orb_LEO.txt | 2 +- cfg/sims/nos3-simulator.xml | 10 ++++++++-- components/generic_fss | 2 +- components/generic_radio | 2 +- 6 files changed, 24 insertions(+), 9 deletions(-) diff --git a/cfg/InOut/Inp_CommLink.txt b/cfg/InOut/Inp_CommLink.txt index cf81fbd38..cf63c2fc4 100644 --- a/cfg/InOut/Inp_CommLink.txt +++ b/cfg/InOut/Inp_CommLink.txt @@ -1,5 +1,5 @@ <<<<<<<<<<<<<<<<<<< 42: Comm Link Description File >>>>>>>>>>>>>>>>>>> -0 ! Number of Links +2 ! Number of Links =============================== Link 0 ================================ S-Band Uplink ! Description TRUE ! Comm Link Exists @@ -33,7 +33,7 @@ DOWNLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) 17.0 ! Tx Power, (dBw) 35.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) "Ant_XBand.obj" ! Tx Antenna Pattern File -2 0 ! Rx Terminal ID, Body +1 0 ! Rx Terminal ID, Body 0.0 0.0 0.0 123 ! Rx Mounting Angles (deg), Euler Sequence 70.0 -50.0 ! Rx Antenna Peak Gain, Floor Gain (dB) "Ant_Gnd.obj" ! Rx Antenna Pattern File diff --git a/cfg/InOut/Inp_IPC.txt b/cfg/InOut/Inp_IPC.txt index 6dcb7b493..2d4d4a53f 100644 --- a/cfg/InOut/Inp_IPC.txt +++ b/cfg/InOut/Inp_IPC.txt @@ -1,5 +1,5 @@ <<<<<<<<<<<<<<< 42: InterProcess Comm Configuration File >>>>>>>>>>>>>>>> -17 ! Number of Sockets +18 ! Number of Sockets ********************************** RW 0 to 42 ***************************** RX ! IPC Mode (OFF,TX,RX,TXRX,ACS,WRITEFILE,READFILE) "State01.42" ! File name for WRITE or READ @@ -158,4 +158,13 @@ FALSE ! Echo to stdout "SC[0].svb" ! Prefix 0 "SC[0].PosR" ! Prefix 1 "SC[0].qn" ! Prefix 2 -"Orb[0].PosN" ! Prefix 3 \ No newline at end of file +"Orb[0].PosN" ! Prefix 3 +********************************** Radio IPC ***************************** +TX ! IPC Mode (OFF,TX,RX,TXRX,ACS,WRITEFILE,READFILE) +"Radio.42" ! File name for WRITE or READ +SERVER ! Socket Role (SERVER,CLIENT,GMSEC_CLIENT) +fortytwo 4286 ! Server Host Name, Port +FALSE ! Allow Blocking (i.e. wait on RX) +TRUE ! Echo to stdout +1 ! Number of TX prefixes +"CommLink" ! Prefix 0 diff --git a/cfg/InOut/Orb_LEO.txt b/cfg/InOut/Orb_LEO.txt index a9a307262..32ea078a5 100644 --- a/cfg/InOut/Orb_LEO.txt +++ b/cfg/InOut/Orb_LEO.txt @@ -17,7 +17,7 @@ PA ! Use Peri/Apoapsis (PA) or min alt/ecc (AE) 52.0 ! Inclination (deg) 180.0 ! Right Ascension of Ascending Node (deg) 0.0 ! Argument of Periapsis (deg) -0.0 ! True Anomaly (deg) +30.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 ! TLE, TRV, or SPLINE file format diff --git a/cfg/sims/nos3-simulator.xml b/cfg/sims/nos3-simulator.xml index 38fe31a1b..7ef11b7a2 100644 --- a/cfg/sims/nos3-simulator.xml +++ b/cfg/sims/nos3-simulator.xml @@ -613,8 +613,14 @@ 7012 - - GENERIC_RADIO_PROVIDER + + GENERIC_RADIO_42_PROVIDER + fortytwo + 4286 + 30 + 5 + 0 + 1 diff --git a/components/generic_fss b/components/generic_fss index 674f02bab..8439cd1e7 160000 --- a/components/generic_fss +++ b/components/generic_fss @@ -1 +1 @@ -Subproject commit 674f02bab7ca5430b1c6426b4c8231a620458fdc +Subproject commit 8439cd1e712ab5157461eb74f690e22ed1cc8929 diff --git a/components/generic_radio b/components/generic_radio index 687db4817..1ecb63662 160000 --- a/components/generic_radio +++ b/components/generic_radio @@ -1 +1 @@ -Subproject commit 687db4817499e5e617aac2b75b89f89f22624c56 +Subproject commit 1ecb63662276044043636cce1cf63877eac1913a From fcb32268d37928ff0e71ff7d8750d28eb0a49136 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Mon, 13 Apr 2026 12:39:59 -0400 Subject: [PATCH 02/18] https://github.com/nasa/nos3/issues/848 - Fix Inp_CommLink.txt to use GSFC as the ground station. Tweak the orbit so that the spacecraft <-> ground link begins occulted, but soon becomes unocculted. --- cfg/InOut/Inp_CommLink.txt | 6 +++--- cfg/InOut/Orb_LEO.txt | 2 +- components/generic_radio | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/cfg/InOut/Inp_CommLink.txt b/cfg/InOut/Inp_CommLink.txt index cf63c2fc4..8e450b550 100644 --- a/cfg/InOut/Inp_CommLink.txt +++ b/cfg/InOut/Inp_CommLink.txt @@ -8,7 +8,7 @@ FALSE 1.0E-3 ! Adjust Positions for Delay, Delay Accuracy (sec) UPLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) 3.0E9 ! Frequency (Hz) -200.0 ! Link Noise Floor (dBw) -1 0 ! Tx Terminal ID, Body +0 0 ! Tx Terminal ID, Body 0.0 0.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence 100.0 ! Tx Power (dBw) 40.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) @@ -28,12 +28,12 @@ TRUE 1.0E-6 ! Adjust Positions for Delay, Delay Accuracy (sec) DOWNLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) 10.0E9 ! Frequency (Hz) -200.0 ! Link Noise Floor (dBw) -0 1 ! Tx Terminal ID, Body +0 0 ! Tx Terminal ID, Body 0.0 0.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence 17.0 ! Tx Power, (dBw) 35.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) "Ant_XBand.obj" ! Tx Antenna Pattern File -1 0 ! Rx Terminal ID, Body +0 0 ! Rx Terminal ID, Body 0.0 0.0 0.0 123 ! Rx Mounting Angles (deg), Euler Sequence 70.0 -50.0 ! Rx Antenna Peak Gain, Floor Gain (dB) "Ant_Gnd.obj" ! Rx Antenna Pattern File diff --git a/cfg/InOut/Orb_LEO.txt b/cfg/InOut/Orb_LEO.txt index 32ea078a5..c9ce8d05f 100644 --- a/cfg/InOut/Orb_LEO.txt +++ b/cfg/InOut/Orb_LEO.txt @@ -17,7 +17,7 @@ PA ! Use Peri/Apoapsis (PA) or min alt/ecc (AE) 52.0 ! Inclination (deg) 180.0 ! Right Ascension of Ascending Node (deg) 0.0 ! Argument of Periapsis (deg) -30.0 ! True Anomaly (deg) +27.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 ! TLE, TRV, or SPLINE file format diff --git a/components/generic_radio b/components/generic_radio index 1ecb63662..d79df6ab2 160000 --- a/components/generic_radio +++ b/components/generic_radio @@ -1 +1 @@ -Subproject commit 1ecb63662276044043636cce1cf63877eac1913a +Subproject commit d79df6ab25bdc862188ab180d82f257f092e9c18 From 446be946c492687c9f191792c4e840c703ee40ca Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Thu, 21 May 2026 15:03:22 -0400 Subject: [PATCH 03/18] https://github.com/nasa/nos3/issues/848 - Add in sleep so cryptolib does not die. --- scripts/fsw/fsw_cfs_launch.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/fsw/fsw_cfs_launch.sh b/scripts/fsw/fsw_cfs_launch.sh index 50f1476c6..61a1e6643 100755 --- a/scripts/fsw/fsw_cfs_launch.sh +++ b/scripts/fsw/fsw_cfs_launch.sh @@ -141,6 +141,7 @@ do # cp cfg/sims/nos3-simulator.shmem.xml cfg/sims/nos3-simulator.xml echo "" + sleep 5 echo $SC_NUM " - CryptoLib..." gnome-terminal --tab --title=$SC_NUM" - CryptoLib GSW" -- $DFLAGS -e "STANDALONE_TCP=1" -e "GSWALIAS=cosmos" -e "CRYPTO_HOST=cryptolib" -v $BASE_DIR:$BASE_DIR --name $SC_NUM"-cryptolib-gsw" -h cryptolib --network=$SC_NETNAME --network-alias=cryptolib -w $BASE_DIR/gsw/build $DBOX ./support/standalone From 05c80b1c26a05fda5e2878c1e2a6a2f27bbe07e4 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 22 May 2026 14:25:45 -0400 Subject: [PATCH 04/18] https://github.com/nasa/nos3/issues/848 - Minor tweaks to Inp_IPC.txt. Add generic radio 42 data provider configuration information to nos3-simulator.xml. Update submodule to include new functionality for communication determination. --- cfg/InOut/Inp_IPC.txt | 4 ++-- cfg/sims/nos3-simulator.xml | 11 +++++++++-- components/generic_radio | 2 +- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/cfg/InOut/Inp_IPC.txt b/cfg/InOut/Inp_IPC.txt index 2d4d4a53f..8b24e8f7e 100644 --- a/cfg/InOut/Inp_IPC.txt +++ b/cfg/InOut/Inp_IPC.txt @@ -161,10 +161,10 @@ FALSE ! Echo to stdout "Orb[0].PosN" ! Prefix 3 ********************************** Radio IPC ***************************** TX ! IPC Mode (OFF,TX,RX,TXRX,ACS,WRITEFILE,READFILE) -"Radio.42" ! File name for WRITE or READ +"Radio.42" ! File name for WRITE or READ SERVER ! Socket Role (SERVER,CLIENT,GMSEC_CLIENT) fortytwo 4286 ! Server Host Name, Port FALSE ! Allow Blocking (i.e. wait on RX) -TRUE ! Echo to stdout +FALSE ! Echo to stdout 1 ! Number of TX prefixes "CommLink" ! Prefix 0 diff --git a/cfg/sims/nos3-simulator.xml b/cfg/sims/nos3-simulator.xml index 7ef11b7a2..a2636c320 100644 --- a/cfg/sims/nos3-simulator.xml +++ b/cfg/sims/nos3-simulator.xml @@ -613,15 +613,22 @@ 7012 - + GENERIC_RADIO_42_PROVIDER fortytwo 4286 30 5 0 + occulted + 15 1 - + occulted + 15 + + diff --git a/components/generic_radio b/components/generic_radio index 40618a9e9..9c0c38332 160000 --- a/components/generic_radio +++ b/components/generic_radio @@ -1 +1 @@ -Subproject commit 40618a9e92c6670c2a688eb9e0d21cc3dec41ce4 +Subproject commit 9c0c383329101babfd4766c8566ad123fc622ba9 From a86a913dec586c940a3e0a67af30d6ac8139a55f Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Wed, 27 May 2026 08:26:10 -0400 Subject: [PATCH 05/18] https://github.com/nasa/nos3/issues/848 - Add 42 lunar spacecraft scenario to test out R/F delay. --- cfg/InOut/Inp_CommLink.txt | 42 ++++++++- cfg/InOut/Inp_Sim.txt | 9 +- cfg/InOut/Inp_Sim_STF1.txt | 9 +- cfg/InOut/Orb_LLO.txt | 47 ++++++++++ cfg/InOut/SC_LunarComm.txt | 183 +++++++++++++++++++++++++++++++++++++ 5 files changed, 283 insertions(+), 7 deletions(-) create mode 100644 cfg/InOut/Orb_LLO.txt create mode 100644 cfg/InOut/SC_LunarComm.txt diff --git a/cfg/InOut/Inp_CommLink.txt b/cfg/InOut/Inp_CommLink.txt index 8e450b550..8b244a699 100644 --- a/cfg/InOut/Inp_CommLink.txt +++ b/cfg/InOut/Inp_CommLink.txt @@ -1,5 +1,5 @@ <<<<<<<<<<<<<<<<<<< 42: Comm Link Description File >>>>>>>>>>>>>>>>>>> -2 ! Number of Links +4 ! Number of Links =============================== Link 0 ================================ S-Band Uplink ! Description TRUE ! Comm Link Exists @@ -40,3 +40,43 @@ DOWNLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) -130.0 ! Rx System Noise Power (dBw) 1.0 ! Atmo Loss Mean (dB) 0.1 10.0 101 ! Atmo Loss Ran Walk std (dB), Corr Time (sec), Seed +=============================== Link 2 ================================ +S-Band Uplink ! Description +TRUE ! Comm Link Exists +TRUE 10.0 ! Output Enabled, Interval (sec) +FALSE 1.0E-3 ! Adjust Positions for Delay, Delay Accuracy (sec) +UPLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) +3.0E9 ! Frequency (Hz) +-200.0 ! Link Noise Floor (dBw) +1 0 ! Tx Terminal ID, Body +0.0 0.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence +100.0 ! Tx Power (dBw) +40.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) +"Ant_Gnd.obj" ! Tx Antenna Pattern Mesh File +0 0 ! Rx Terminal ID, Body +0.0 0.0 0.0 123 ! Rx Mounting Angles (deg), Euler Sequence +10.0 -50.0 ! Rx Antenna Peak Gain, Floor Gain (dB) +"Ant_SBand.obj" ! Rx Antenna Pattern Mesh File +-130.0 ! Rx System Noise Power (dBw) +1.0 ! Atmo Loss Mean (dB) +0.1 10.0 100 ! Atmo Loss Ran Walk std (dB), Corr Time (sec), Seed +=============================== Link 3 ================================ +X-Band Downlink ! Description +TRUE ! Comm Link Exists +TRUE 20.0 ! Output Enabled, Interval (sec) +TRUE 1.0E-6 ! Adjust Positions for Delay, Delay Accuracy (sec) +DOWNLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) +10.0E9 ! Frequency (Hz) +-200.0 ! Link Noise Floor (dBw) +0 1 ! Tx Terminal ID, Body +0.0 0.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence +17.0 ! Tx Power, (dBw) +35.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) +"Ant_XBand.obj" ! Tx Antenna Pattern File +2 0 ! Rx Terminal ID, Body +0.0 0.0 0.0 123 ! Rx Mounting Angles (deg), Euler Sequence +70.0 -50.0 ! Rx Antenna Peak Gain, Floor Gain (dB) +"Ant_Gnd.obj" ! Rx Antenna Pattern File +-130.0 ! Rx System Noise Power (dBw) +1.0 ! Atmo Loss Mean (dB) +0.1 10.0 101 ! Atmo Loss Ran Walk std (dB), Corr Time (sec), Seed diff --git a/cfg/InOut/Inp_Sim.txt b/cfg/InOut/Inp_Sim.txt index c9b12cf3e..bbee49681 100644 --- a/cfg/InOut/Inp_Sim.txt +++ b/cfg/InOut/Inp_Sim.txt @@ -7,11 +7,13 @@ NOS3 ! Time Mode (FAST, REAL, EXTERNAL, or NOS3) TRUE ! Graphics Front End? Inp_Cmd.txt ! Command Script File Name ************************** Reference Orbits ************************** -1 ! Number of Reference Orbits +2 ! Number of Reference Orbits TRUE Orb_LEO.txt ! Input file name for Orb 0 +TRUE Orb_LLO.txt ! Input file name for Orb 1 ***************************** Spacecraft ***************************** -1 ! Number of Spacecraft +2 ! Number of Spacecraft TRUE 0 SC_NOS3.txt ! Existence, RefOrb, Input file for SC 0 +TRUE 1 SC_LunarComm.txt ! Existence, RefOrb, Input file for SC 1 ***************************** Environment ***************************** 10 20 2025 ! Date (UTC) (Month, Day, Year) 17 43 20.00 ! Time (UTC) (Hr,Min,Sec) @@ -51,9 +53,10 @@ TRUE ! Earth-Moon FALSE ! Sun-Earth FALSE ! Sun-Jupiter ************************* Ground Stations *************************** -5 ! Number of Ground Stations +6 ! 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 -116.9 35.4 "Goldstone" ! Exists, World, Lng, Lat, Label diff --git a/cfg/InOut/Inp_Sim_STF1.txt b/cfg/InOut/Inp_Sim_STF1.txt index c9b12cf3e..bbee49681 100644 --- a/cfg/InOut/Inp_Sim_STF1.txt +++ b/cfg/InOut/Inp_Sim_STF1.txt @@ -7,11 +7,13 @@ NOS3 ! Time Mode (FAST, REAL, EXTERNAL, or NOS3) TRUE ! Graphics Front End? Inp_Cmd.txt ! Command Script File Name ************************** Reference Orbits ************************** -1 ! Number of Reference Orbits +2 ! Number of Reference Orbits TRUE Orb_LEO.txt ! Input file name for Orb 0 +TRUE Orb_LLO.txt ! Input file name for Orb 1 ***************************** Spacecraft ***************************** -1 ! Number of Spacecraft +2 ! Number of Spacecraft TRUE 0 SC_NOS3.txt ! Existence, RefOrb, Input file for SC 0 +TRUE 1 SC_LunarComm.txt ! Existence, RefOrb, Input file for SC 1 ***************************** Environment ***************************** 10 20 2025 ! Date (UTC) (Month, Day, Year) 17 43 20.00 ! Time (UTC) (Hr,Min,Sec) @@ -51,9 +53,10 @@ TRUE ! Earth-Moon FALSE ! Sun-Earth FALSE ! Sun-Jupiter ************************* Ground Stations *************************** -5 ! Number of Ground Stations +6 ! 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 -116.9 35.4 "Goldstone" ! Exists, World, Lng, Lat, Label diff --git a/cfg/InOut/Orb_LLO.txt b/cfg/InOut/Orb_LLO.txt new file mode 100644 index 000000000..306b7f43b --- /dev/null +++ b/cfg/InOut/Orb_LLO.txt @@ -0,0 +1,47 @@ +<<<<<<<<<<<<<<<<< 42: Orbit Description File >>>>>>>>>>>>>>>>> +Low Lunar Orbit ! Description +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 ::::::::::::::::: +0 ! Region Number +FALSE ! Use Polyhedron Gravity +:::::::::::::: Use these lines if CENTRAL ::::::::::::::::: +LUNA ! 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) +100.0 400.0 ! Periapsis & Apoapsis Altitude, km +400.0 2.0 ! Min Altitude (km), Eccentricity +52.0 ! Inclination (deg) +120.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 ! 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 :::::::::::::::: +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) +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) +CW ! Sense (CW, CCW), viewed from +Z (L4, L5 only) +400000.0 ! Z Semi-axis, km +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 +******************* Formation Frame Parameters ************************ +L ! Formation Frame Fixed in [NL] +0.0 0.0 0.0 123 ! Euler Angles (deg) and Sequence +L ! Formation Origin expressed in [NL] +0.0 0.0 0.0 ! Formation Origin wrt Ref Orbit (m) diff --git a/cfg/InOut/SC_LunarComm.txt b/cfg/InOut/SC_LunarComm.txt new file mode 100644 index 000000000..4bd7ecbde --- /dev/null +++ b/cfg/InOut/SC_LunarComm.txt @@ -0,0 +1,183 @@ +<<<<<<<<<<<<<<<<< 42: Spacecraft Description File >>>>>>>>>>>>>>>>> +Simple generic S/C ! Description +"S/C" ! Label +GenScSpriteAlpha.ppm ! Sprite File Name +LUNARCOMM_FSW ! Flight Software Identifier +0.2 ! FSW Sample Time, sec +************************* Orbit Parameters **************************** +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 [NLEF] +0.3 0.4 0.5 ! Ang Vel (deg/sec) +0.0 0.0 0.0 1.0 ! Quaternion +20.0 30.0 40.0 213 ! Angles (deg) & Euler Sequence +*************************** Dynamics Flags *************************** +GAUSS_ELIM ! Solve Dynamics by GAUSS_ELIM or ORDER_N +FALSE ! Compute Constraint Forces and Torques +REFPT_CM ! Mass Props referenced to REFPT_CM or REFPT_JOINT +FALSE ! Flex Active +FALSE ! Include 2nd Order Flex Terms +NONE ! Shaker File Name +2.0 ! Drag Coefficient +************************************************************************ +************************* Body Parameters ****************************** +************************************************************************ +2 ! Number of Bodies +================================ Body 0 ================================ +100.0 ! Mass +200.0 200.0 300.0 ! Moments of Inertia (kg-m^2) +0.0 0.0 0.0 ! Products of Inertia (xy,xz,yz) +0.0 0.0 0.0 ! Location of mass center, m +0.0 0.0 0.0 ! Constant Embedded Momentum (Nms) +0.0 0.0 0.0 ! Constant Embedded Magnetic Dipole (A-m^2) +MDLSat_MainBody.obj ! Geometry Input File Name +NONE ! Node File Name +NONE ! Flex File Name +================================ Body 1 ================================ +10.0 ! Mass +20.0 20.0 30.0 ! Moments of Inertia (kg-m^2) +0.0 0.0 0.0 ! Products of Inertia (xy,xz,yz) +0.0 0.0 0.0 ! Location of mass center, m +0.0 0.0 0.0 ! Constant Embedded Momentum (Nms) +0.0 0.0 0.0 ! Constant Embedded Magnetic Dipole (A-m^2) +MDLSat_Antenna.obj ! Geometry Input File Name +NONE ! Node File Name +NONE ! Flex File Name +************************************************************************ +*************************** Joint Parameters *************************** +************************************************************************ + (Number of Joints is Number of Bodies minus one) +============================== Joint 0 ================================ +ACTUATED ! Type of joint (PASSIVE, ACTUATED, others) +0 1 ! Inner, outer body indices +2 123 GIMBAL ! RotDOF, Seq, GIMBAL or SPHERICAL +0 123 ! TrnDOF, Seq +FALSE FALSE FALSE ! RotDOF Locked +FALSE FALSE FALSE ! TrnDOF Locked +0.0 0.0 0.0 ! Initial Angles [deg] +0.0 0.0 0.0 ! Initial Rates, deg/sec +0.0 0.0 0.0 ! Initial Displacements [m] +0.0 0.0 0.0 ! Initial Displacement Rates, m/sec +180.0 0.0 0.0 213 ! Bi to Gi Static Angles [deg] & Seq +0.0 0.0 0.0 312 ! Go to Bo Static Angles [deg] & Seq +0.0 0.0 -1.0 ! Position wrt inner body origin, m +0.0 0.0 0.0 ! Position wrt outer body origin, m +NONE ! Parameter File Name +*************************** Wheel Parameters *************************** +FALSE ! Wheel Drag Active +FALSE ! Wheel Jitter Active +0 ! Number of wheels +============================= Wheel 0 ================================ +0.0 ! Initial Momentum, N-m-sec +1.0 0.0 0.0 ! Wheel Axis Components, [X, Y, Z] +0.14 50.0 ! Max Torque (N-m), Momentum (N-m-sec) +0.012 ! Wheel Rotor Inertia, kg-m^2 +0 ! Body +0 ! Node +NONE ! Drag/Jitter Input File Name +**************************** MTB Parameters **************************** +0 ! Number of MTBs +============================== MTB 0 ================================= +180.0 ! Saturation (A-m^2) +1.0 0.0 0.0 ! MTB Axis Components, [X, Y, Z] +0 ! Node +************************* Thruster Parameters ************************** +0 ! Number of Thrusters +============================== Thr 0 ================================= +PULSED ! Mode (PULSED or PROPORTIONAL) + 1.0 ! Thrust Force (N) +-1.0 0.0 0.0 ! Thrust Axis +0 ! Body +0 ! Node +******************************* Gyro ************************************ +0 ! 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.07 ! Angle Random Walk (deg/rt-hr) +0.1 1.0 ! Bias Stability (deg/hr) over timespan (hr) +0.1 ! Angle Noise, arcsec RMS +0.1 ! Initial Bias (deg/hr) +0 ! Node +*************************** Magnetometer ******************************** +0 ! Number of Magnetometer Axes +============================== Axis 0 =================================== +0.1 ! Sample Time,sec +1.0 0.0 0.0 ! Axis expressed in Body Frame +60.0E-6 ! Saturation, Tesla +0.0 ! Scale Factor Error, ppm +1.0E-6 ! Quantization, Tesla +1.0E-6 ! Noise, Tesla RMS +0 ! Node +*********************** Coarse Sun Sensor ******************************* +0 ! Number of Coarse Sun Sensors +============================== CSS 0 ==================================== +0.1 ! Sample Time,sec +1.0 1.0 1.0 ! Axis expressed in Body Frame +90.0 ! Half-cone Angle, deg +1.0 ! Scale Factor +0.001 ! Quantization +0 ! Body +0 ! Node +************************* 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 ! H, V FOV Size, deg +0.1 ! Noise Equivalent Angle, deg RMS +0.5 ! Quantization, deg +0 ! Node +************************** Star Tracker ********************************* +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 +Z_AXIS ! Boresight Axis X_AXIS, Y_AXIS, or Z_AXIS +28.0 28.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 +0 ! Node +****************************** GPS ************************************** +0 ! Number of GPS Receivers +============================= GPSR 0 ==================================== +0.25 ! Sample Time,sec +4.0 ! Position Noise, m RMS +0.02 ! Velocity Noise, m/sec RMS +20.0E-9 ! Time Noise, sec RMS +0 ! Node +*************************** Accelerometer ******************************* +0 ! Number of Accel Axes +============================== Axis 0 =================================== +0.1 ! Sample Time,sec +1.0 0.0 0.0 ! Axis expressed in Body Frame +1.0 ! Max Acceleration (m/s^2) +0.0 ! Scale Factor Error, ppm +0.05 ! Quantization, m/s^2 +0.0 ! DV Random Walk (m/s/rt-hr) +0.0 1.0 ! Bias Stability (m/s^2) over timespan (hr) +0.0 ! DV Noise, m/s +0.05 ! Initial Bias (m/s^2) +0 ! Node +************************ Fine Guidance Sensor **************************** +0 ! Number of Fine Guidance Sensors +========================= Fine Guidance Sensor 0 ========================= +0.1 ! Sample Time,sec +0.0 0.0 0.0 321 ! Nominal Mounting Angles (deg), Seq in Body +X_AXIS ! Boresight Axis X_AXIS, Y_AXIS, or Z_AXIS +3600.0 3600.0 ! H, V FOV Size, arcsec +2.0 ! Noise Equivalent Angle, arcsec RMS +60.0 ! Detector Scale, arcsec/pixel +0 0 ! Body, Node +0.0 0.0 0.0 321 ! FOV Frame (Fr) Angles (deg), Seq wrt R frame +0.00 0.0 ! Guide Star H, V (deg) in FOV Frame +NONE ! Optics Input File Name +NONE ! PSF Image File Name + From de71a41aba9ecfb348b1c8f8dd88b2239851b930 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Thu, 28 May 2026 10:53:14 -0400 Subject: [PATCH 06/18] https://github.com/nasa/nos3/issues/848 - Submodule pointer update for radio sim delay code. --- components/generic_radio | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/generic_radio b/components/generic_radio index 9c0c38332..20b300cfa 160000 --- a/components/generic_radio +++ b/components/generic_radio @@ -1 +1 @@ -Subproject commit 9c0c383329101babfd4766c8566ad123fc622ba9 +Subproject commit 20b300cfac7c70d7b9b965251c501a222c88b446 From 6fdf2b6387996c256fa3f1a7cc7f4eb2be0aaf6e Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Thu, 28 May 2026 13:17:16 -0400 Subject: [PATCH 07/18] https://github.com/nasa/nos3/issues/848 - Separate STF1 and Lunar scenarios. Submodule update to fix delay time computations. --- cfg/InOut/Inp_CommLink.txt | 42 +--------------------- cfg/InOut/Inp_Graphics_Lunar.txt | 55 +++++++++++++++++++++++++++++ cfg/InOut/Inp_Sim.txt | 6 ++-- cfg/InOut/Inp_Sim_Lunar.txt | 60 ++++++++++++++++++++++++++++++++ cfg/InOut/Inp_Sim_STF1.txt | 6 ++-- components/generic_radio | 2 +- scripts/cfg/configure.py | 5 ++- 7 files changed, 125 insertions(+), 51 deletions(-) create mode 100644 cfg/InOut/Inp_Graphics_Lunar.txt create mode 100644 cfg/InOut/Inp_Sim_Lunar.txt diff --git a/cfg/InOut/Inp_CommLink.txt b/cfg/InOut/Inp_CommLink.txt index 8b244a699..8e450b550 100644 --- a/cfg/InOut/Inp_CommLink.txt +++ b/cfg/InOut/Inp_CommLink.txt @@ -1,5 +1,5 @@ <<<<<<<<<<<<<<<<<<< 42: Comm Link Description File >>>>>>>>>>>>>>>>>>> -4 ! Number of Links +2 ! Number of Links =============================== Link 0 ================================ S-Band Uplink ! Description TRUE ! Comm Link Exists @@ -40,43 +40,3 @@ DOWNLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) -130.0 ! Rx System Noise Power (dBw) 1.0 ! Atmo Loss Mean (dB) 0.1 10.0 101 ! Atmo Loss Ran Walk std (dB), Corr Time (sec), Seed -=============================== Link 2 ================================ -S-Band Uplink ! Description -TRUE ! Comm Link Exists -TRUE 10.0 ! Output Enabled, Interval (sec) -FALSE 1.0E-3 ! Adjust Positions for Delay, Delay Accuracy (sec) -UPLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) -3.0E9 ! Frequency (Hz) --200.0 ! Link Noise Floor (dBw) -1 0 ! Tx Terminal ID, Body -0.0 0.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence -100.0 ! Tx Power (dBw) -40.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) -"Ant_Gnd.obj" ! Tx Antenna Pattern Mesh File -0 0 ! Rx Terminal ID, Body -0.0 0.0 0.0 123 ! Rx Mounting Angles (deg), Euler Sequence -10.0 -50.0 ! Rx Antenna Peak Gain, Floor Gain (dB) -"Ant_SBand.obj" ! Rx Antenna Pattern Mesh File --130.0 ! Rx System Noise Power (dBw) -1.0 ! Atmo Loss Mean (dB) -0.1 10.0 100 ! Atmo Loss Ran Walk std (dB), Corr Time (sec), Seed -=============================== Link 3 ================================ -X-Band Downlink ! Description -TRUE ! Comm Link Exists -TRUE 20.0 ! Output Enabled, Interval (sec) -TRUE 1.0E-6 ! Adjust Positions for Delay, Delay Accuracy (sec) -DOWNLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) -10.0E9 ! Frequency (Hz) --200.0 ! Link Noise Floor (dBw) -0 1 ! Tx Terminal ID, Body -0.0 0.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence -17.0 ! Tx Power, (dBw) -35.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) -"Ant_XBand.obj" ! Tx Antenna Pattern File -2 0 ! Rx Terminal ID, Body -0.0 0.0 0.0 123 ! Rx Mounting Angles (deg), Euler Sequence -70.0 -50.0 ! Rx Antenna Peak Gain, Floor Gain (dB) -"Ant_Gnd.obj" ! Rx Antenna Pattern File --130.0 ! Rx System Noise Power (dBw) -1.0 ! Atmo Loss Mean (dB) -0.1 10.0 101 ! Atmo Loss Ran Walk std (dB), Corr Time (sec), Seed diff --git a/cfg/InOut/Inp_Graphics_Lunar.txt b/cfg/InOut/Inp_Graphics_Lunar.txt new file mode 100644 index 000000000..4c71e21d7 --- /dev/null +++ b/cfg/InOut/Inp_Graphics_Lunar.txt @@ -0,0 +1,55 @@ +<<<<<<<<<<<<<<<< 42 Graphics Configuration File >>>>>>>>>>>>>>>>>>> +1.0 ! GL Output Interval [sec] +Skymap09.txt ! Star Catalog File Name +TRUE ! Map Window Exists +FALSE ! Orrery Window Exists +TRUE ! 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 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 "] +600 600 ! Width, Height [pixels] +5.0E-5 ! Mouse Scale Factor +1.8 ! Display's Gamma Exponent (1.8-4.0) +************************** CAM Show Menu **************************** +FALSE "N Axes" ! Show N Axes +FALSE "L Axes" ! Show L Axes +FALSE "F Axes" ! Show F Axes +TRUE "B Axes" ! Show B Axes +FALSE "N Grid" ! Show N Grid +FALSE "L Grid" ! Show L Grid +FALSE "F Grid" ! Show F Grid +FALSE "B Grid" ! Show B Grid +FALSE "Gal Grid" ! Show B Grid +FALSE "FOVs" ! Show Fields of View +FALSE "Prox Ops" ! Show Prox Ops +FALSE "TDRS" ! Show TDRS Satellites +TRUE "Shadows" ! Show Shadows +FALSE "Astro Labels" ! Show Astro Labels +TRUE "Truth Vectors" ! Show Truth Vectors +FALSE "FSW Vectors" ! Show FSW Vectors +TRUE "Milky Way" ! Show Milky Way +FALSE "Fermi Sky" ! Show Fermi Sky +******************************* MAP ********************************* +"42 Map" ! Map Title [delimited by "] +512 256 ! Width, Height [pixels] +************************** MAP Show Menu **************************** +TRUE "Clock" ! Show Clock +TRUE "Tlm Clock" ! Show Clock +FALSE "Credits" ! Show Credits +TRUE "Night" ! Show Night +********************* Unit Sphere Show Menu ************************* +TRUE ! Show Major Constellations +TRUE ! Show Zodiac Constellations +FALSE ! Show Minor Constellations diff --git a/cfg/InOut/Inp_Sim.txt b/cfg/InOut/Inp_Sim.txt index bbee49681..ac62cfa5a 100644 --- a/cfg/InOut/Inp_Sim.txt +++ b/cfg/InOut/Inp_Sim.txt @@ -7,13 +7,11 @@ NOS3 ! Time Mode (FAST, REAL, EXTERNAL, or NOS3) TRUE ! Graphics Front End? Inp_Cmd.txt ! Command Script File Name ************************** Reference Orbits ************************** -2 ! Number of Reference Orbits +1 ! Number of Reference Orbits TRUE Orb_LEO.txt ! Input file name for Orb 0 -TRUE Orb_LLO.txt ! Input file name for Orb 1 ***************************** Spacecraft ***************************** -2 ! Number of Spacecraft +1 ! Number of Spacecraft TRUE 0 SC_NOS3.txt ! Existence, RefOrb, Input file for SC 0 -TRUE 1 SC_LunarComm.txt ! Existence, RefOrb, Input file for SC 1 ***************************** Environment ***************************** 10 20 2025 ! Date (UTC) (Month, Day, Year) 17 43 20.00 ! Time (UTC) (Hr,Min,Sec) diff --git a/cfg/InOut/Inp_Sim_Lunar.txt b/cfg/InOut/Inp_Sim_Lunar.txt new file mode 100644 index 000000000..28e23adcf --- /dev/null +++ b/cfg/InOut/Inp_Sim_Lunar.txt @@ -0,0 +1,60 @@ +<<<<<<<<<<<<<<<<< 42: The Mostly Harmless Simulator >>>>>>>>>>>>>>>>> +************************** Simulation Control ************************** +NOS3 ! Time Mode (FAST, REAL, EXTERNAL, or NOS3) +604800.0 0.01 ! Sim Duration, Step Size [sec] +1.0 ! File Output Interval [sec] +0 ! RNG Seed +TRUE ! Graphics Front End? +Inp_Cmd.txt ! Command Script File Name +************************** Reference Orbits ************************** +1 ! Number of Reference Orbits +TRUE Orb_LLO.txt ! Input file name for Orb 1 +***************************** Spacecraft ***************************** +1 ! Number of Spacecraft +TRUE 0 SC_LunarComm.txt ! Existence, RefOrb, Input file for SC 1 +***************************** Environment ***************************** +10 20 2025 ! Date (UTC) (Month, Day, Year) +17 43 20.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 +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 ! Residual Magnetic Moment Torques +FALSE ! Gravity Perturbation Forces +FALSE ! Thruster Plume Forces & Torques +FALSE ! Contact Forces and Torques +FALSE ! CFD Slosh Forces and Torques +FALSE ! Albedo Effect on CSS Measurements +FALSE ! Output Environmental Torques to Files +********************* Celestial Bodies of Interest ********************* +MEAN ! Ephem Option (MEAN, DE430, DE440) +FALSE ! Mercury +FALSE ! Venus +TRUE ! Earth and Luna +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 ****************** +TRUE ! Earth-Moon +FALSE ! Sun-Earth +FALSE ! Sun-Jupiter +************************* Ground Stations *************************** +6 ! Number of Ground Stations +TRUE EARTH -116.9 35.4 "Goldstone" ! Exists, World, Lng, Lat, Label +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 diff --git a/cfg/InOut/Inp_Sim_STF1.txt b/cfg/InOut/Inp_Sim_STF1.txt index bbee49681..ac62cfa5a 100644 --- a/cfg/InOut/Inp_Sim_STF1.txt +++ b/cfg/InOut/Inp_Sim_STF1.txt @@ -7,13 +7,11 @@ NOS3 ! Time Mode (FAST, REAL, EXTERNAL, or NOS3) TRUE ! Graphics Front End? Inp_Cmd.txt ! Command Script File Name ************************** Reference Orbits ************************** -2 ! Number of Reference Orbits +1 ! Number of Reference Orbits TRUE Orb_LEO.txt ! Input file name for Orb 0 -TRUE Orb_LLO.txt ! Input file name for Orb 1 ***************************** Spacecraft ***************************** -2 ! Number of Spacecraft +1 ! Number of Spacecraft TRUE 0 SC_NOS3.txt ! Existence, RefOrb, Input file for SC 0 -TRUE 1 SC_LunarComm.txt ! Existence, RefOrb, Input file for SC 1 ***************************** Environment ***************************** 10 20 2025 ! Date (UTC) (Month, Day, Year) 17 43 20.00 ! Time (UTC) (Hr,Min,Sec) diff --git a/components/generic_radio b/components/generic_radio index 20b300cfa..95a86e204 160000 --- a/components/generic_radio +++ b/components/generic_radio @@ -1 +1 @@ -Subproject commit 20b300cfac7c70d7b9b965251c501a222c88b446 +Subproject commit 95a86e2046c0b49580bae5b69defc3efdf96e486 diff --git a/scripts/cfg/configure.py b/scripts/cfg/configure.py index 06dbf6ae9..667439b5a 100644 --- a/scripts/cfg/configure.py +++ b/scripts/cfg/configure.py @@ -91,7 +91,10 @@ # Scenario scenario = mission_root.find('scenario').text print(' scenario:', scenario) -if (scenario == 'Gateway'): +if (scenario == 'Lunar'): + os.system('cp ./cfg/InOut/Inp_Sim_Lunar.txt ./cfg/InOut/Inp_Sim.txt') + os.system('cp ./cfg/InOut/Inp_Graphics_Lunar.txt ./cfg/InOut/Inp_Graphics.txt') +elif (scenario == 'Gateway'): os.system('cp ./cfg/InOut/Inp_Sim_Gateway.txt ./cfg/InOut/Inp_Sim.txt') os.system('cp ./cfg/InOut/Inp_Graphics_Gateway.txt ./cfg/InOut/Inp_Graphics.txt') else: From 831d11d7577a1d00c820fadbf9abd65dbe269673 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Thu, 28 May 2026 14:38:33 -0400 Subject: [PATCH 08/18] https://github.com/nasa/nos3/issues/848 - Turn on R/F delay processing in the XML config file. --- cfg/sims/nos3-simulator.xml | 2 ++ components/generic_radio | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/cfg/sims/nos3-simulator.xml b/cfg/sims/nos3-simulator.xml index a2636c320..a8bb1590c 100644 --- a/cfg/sims/nos3-simulator.xml +++ b/cfg/sims/nos3-simulator.xml @@ -622,9 +622,11 @@ 0 occulted 15 + true 1 occulted 15 + true - + STF1 diff --git a/scripts/cfg/configure.py b/scripts/cfg/configure.py index 667439b5a..83e63cbb5 100644 --- a/scripts/cfg/configure.py +++ b/scripts/cfg/configure.py @@ -91,9 +91,9 @@ # Scenario scenario = mission_root.find('scenario').text print(' scenario:', scenario) -if (scenario == 'Lunar'): - os.system('cp ./cfg/InOut/Inp_Sim_Lunar.txt ./cfg/InOut/Inp_Sim.txt') - os.system('cp ./cfg/InOut/Inp_Graphics_Lunar.txt ./cfg/InOut/Inp_Graphics.txt') +if (scenario == 'DeepSpace'): + os.system('cp ./cfg/InOut/Inp_Sim_DeepSpace.txt ./cfg/InOut/Inp_Sim.txt') + os.system('cp ./cfg/InOut/Inp_Graphics_DeepSpace.txt ./cfg/InOut/Inp_Graphics.txt') elif (scenario == 'Gateway'): os.system('cp ./cfg/InOut/Inp_Sim_Gateway.txt ./cfg/InOut/Inp_Sim.txt') os.system('cp ./cfg/InOut/Inp_Graphics_Gateway.txt ./cfg/InOut/Inp_Graphics.txt') From 0c42adf83f5b48d4324fdde7047aed4f05cca5db Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 29 May 2026 10:26:19 -0400 Subject: [PATCH 10/18] https://github.com/nasa/nos3/issues/848 - Additional config file tweak. --- cfg/InOut/Inp_Graphics_DeepSpace.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cfg/InOut/Inp_Graphics_DeepSpace.txt b/cfg/InOut/Inp_Graphics_DeepSpace.txt index 493185c06..c154c8c27 100644 --- a/cfg/InOut/Inp_Graphics_DeepSpace.txt +++ b/cfg/InOut/Inp_Graphics_DeepSpace.txt @@ -13,7 +13,7 @@ SC ! Target Type (WORLD, REFORB, FRM, SC, BODY) 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] +15.0 ! 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) From 8d54511c0cf588328cc3a6807c7ecd699400a756 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 29 May 2026 10:36:40 -0400 Subject: [PATCH 11/18] https://github.com/nasa/nos3/issues/848 - Submodule update. --- components/generic_radio | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/generic_radio b/components/generic_radio index 530d40474..f0fb3c47b 160000 --- a/components/generic_radio +++ b/components/generic_radio @@ -1 +1 @@ -Subproject commit 530d40474448f6f72797576aaaac795659752e53 +Subproject commit f0fb3c47ba9a75f2deca5b14d4c79c7aa1e68505 From b8013243c12cb223cbc4f9fb24661779dfbce90f Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 29 May 2026 10:51:52 -0400 Subject: [PATCH 12/18] https://github.com/nasa/nos3/issues/848 - Config file tweak, part 3. --- cfg/InOut/Inp_Sim_DeepSpace.txt | 2 +- cfg/InOut/{SC_LunarComm.txt => SC_DeepSpaceComm.txt} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename cfg/InOut/{SC_LunarComm.txt => SC_DeepSpaceComm.txt} (100%) diff --git a/cfg/InOut/Inp_Sim_DeepSpace.txt b/cfg/InOut/Inp_Sim_DeepSpace.txt index 3abc5a54e..5b0c4a713 100644 --- a/cfg/InOut/Inp_Sim_DeepSpace.txt +++ b/cfg/InOut/Inp_Sim_DeepSpace.txt @@ -11,7 +11,7 @@ Inp_Cmd.txt ! Command Script File Name TRUE Orb_LLO.txt ! Input file name for Orb 1 ***************************** Spacecraft ***************************** 1 ! Number of Spacecraft -TRUE 0 SC_LunarComm.txt ! Existence, RefOrb, Input file for SC 1 +TRUE 0 SC_DeepSpaceComm.txt ! Existence, RefOrb, Input file for SC 1 ***************************** Environment ***************************** 10 20 2025 ! Date (UTC) (Month, Day, Year) 17 43 20.00 ! Time (UTC) (Hr,Min,Sec) diff --git a/cfg/InOut/SC_LunarComm.txt b/cfg/InOut/SC_DeepSpaceComm.txt similarity index 100% rename from cfg/InOut/SC_LunarComm.txt rename to cfg/InOut/SC_DeepSpaceComm.txt From d80a8348358da7abcaef777308585acb0d08eb67 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 29 May 2026 11:24:20 -0400 Subject: [PATCH 13/18] https://github.com/nasa/nos3/issues/848 - Submodule update. --- components/generic_radio | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/generic_radio b/components/generic_radio index f0fb3c47b..4c7df9c0c 160000 --- a/components/generic_radio +++ b/components/generic_radio @@ -1 +1 @@ -Subproject commit f0fb3c47ba9a75f2deca5b14d4c79c7aa1e68505 +Subproject commit 4c7df9c0c7e98844edba4d633c909877ea7da741 From 8220b1f02f8696e75d256b8bc2efa094d6ab94ee Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 29 May 2026 11:47:16 -0400 Subject: [PATCH 14/18] https://github.com/nasa/nos3/issues/848 - Set defaults for the radio to not check any close criteria and to not model any delay. --- cfg/sims/nos3-simulator.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cfg/sims/nos3-simulator.xml b/cfg/sims/nos3-simulator.xml index a8bb1590c..e3e7140e6 100644 --- a/cfg/sims/nos3-simulator.xml +++ b/cfg/sims/nos3-simulator.xml @@ -620,13 +620,13 @@ 30 5 0 - occulted + none 15 - true + false 1 - occulted + none 15 - true + false + 15 + true + 1 + occulted + 15 + true + + diff --git a/scripts/gsw/gsw_yamcs_multi_launch.sh b/scripts/gsw/gsw_yamcs_multi_launch.sh index 8b41ddf00..1215172be 100755 --- a/scripts/gsw/gsw_yamcs_multi_launch.sh +++ b/scripts/gsw/gsw_yamcs_multi_launch.sh @@ -12,7 +12,7 @@ YAMCS_BINDING_HOST=${YAMCS_BINDING_HOST} BINDING_HOST=${YAMCS_BINDING_HOST:-"0.0.0.0"} # gnome-terminal --tab --title="YAMCS" -- $DFLAGS -e COMPONENT_DIR=$COMPONENT_DIR -v $BASE_DIR:$BASE_DIR -v $USER_NOS3_DIR:$USER_NOS3_DIR -p ${BINDING_HOST}:8090:8090 -p 5012:5012 --name cosmos-openc3-operator-1 -h cosmos --network=nos3-core --network-alias=cosmos -w $USER_NOS3_DIR/yamcs $DBOX mvn ${MAVEN_HTTPS_PROXY} -Dmaven.repo.local=$USER_NOS3_DIR/.m2/repository -DCOMPONENT_DIR=$COMPONENT_DIR yamcs:run - +sleep 3 gnome-terminal --tab --title="YAMCS" -- $DFLAGS -e COMPONENT_DIR=$COMPONENT_DIR -v $BASE_DIR:$BASE_DIR -v $USER_NOS3_DIR:$USER_NOS3_DIR -p ${BINDING_HOST}:8090:8090 -p 5012:5012 --name cosmos-openc3-operator-2 -h yamcs --network=nos3-core --network-alias=yamcs -w $USER_NOS3_DIR/yamcs $DBOX mvn ${MAVEN_HTTPS_PROXY} -Dmaven.repo.local=$USER_NOS3_DIR/.m2/repository -DCOMPONENT_DIR=$COMPONENT_DIR yamcs:run pidof firefox > /dev/null From b987eee2ef9ca5fa68fac37596973e13cac03454 Mon Sep 17 00:00:00 2001 From: Mark Suder Date: Fri, 5 Jun 2026 13:35:24 -0400 Subject: [PATCH 16/18] https://github.com/nasa/nos3/issues/848 - Tweaks to the deep space scenario. --- cfg/InOut/Inp_CommLink.txt | 2 +- cfg/InOut/SC_DeepSpaceComm.txt | 16 +++------------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/cfg/InOut/Inp_CommLink.txt b/cfg/InOut/Inp_CommLink.txt index 8e450b550..70c6d5366 100644 --- a/cfg/InOut/Inp_CommLink.txt +++ b/cfg/InOut/Inp_CommLink.txt @@ -29,7 +29,7 @@ DOWNLINK ! Link Type (UPLINK, DOWNLINK, or CROSSLINK) 10.0E9 ! Frequency (Hz) -200.0 ! Link Noise Floor (dBw) 0 0 ! Tx Terminal ID, Body -0.0 0.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence +0.0 90.0 0.0 123 ! Tx Mounting Angles (deg), Euler Sequence 17.0 ! Tx Power, (dBw) 35.0 -50.0 ! Tx Antenna Peak Gain, Floor Gain (dB) "Ant_XBand.obj" ! Tx Antenna Pattern File diff --git a/cfg/InOut/SC_DeepSpaceComm.txt b/cfg/InOut/SC_DeepSpaceComm.txt index 4bd7ecbde..122c2e942 100644 --- a/cfg/InOut/SC_DeepSpaceComm.txt +++ b/cfg/InOut/SC_DeepSpaceComm.txt @@ -2,7 +2,7 @@ Simple generic S/C ! Description "S/C" ! Label GenScSpriteAlpha.ppm ! Sprite File Name -LUNARCOMM_FSW ! Flight Software Identifier +PASSIVE_FSW ! Flight Software Identifier 0.2 ! FSW Sample Time, sec ************************* Orbit Parameters **************************** FIXED ! Orbit Prop FIXED, EULER_HILL, ENCKE, or COWELL @@ -25,7 +25,7 @@ NONE ! Shaker File Name ************************************************************************ ************************* Body Parameters ****************************** ************************************************************************ -2 ! Number of Bodies +1 ! Number of Bodies ================================ Body 0 ================================ 100.0 ! Mass 200.0 200.0 300.0 ! Moments of Inertia (kg-m^2) @@ -33,17 +33,7 @@ NONE ! Shaker File Name 0.0 0.0 0.0 ! Location of mass center, m 0.0 0.0 0.0 ! Constant Embedded Momentum (Nms) 0.0 0.0 0.0 ! Constant Embedded Magnetic Dipole (A-m^2) -MDLSat_MainBody.obj ! Geometry Input File Name -NONE ! Node File Name -NONE ! Flex File Name -================================ Body 1 ================================ -10.0 ! Mass -20.0 20.0 30.0 ! Moments of Inertia (kg-m^2) -0.0 0.0 0.0 ! Products of Inertia (xy,xz,yz) -0.0 0.0 0.0 ! Location of mass center, m -0.0 0.0 0.0 ! Constant Embedded Momentum (Nms) -0.0 0.0 0.0 ! Constant Embedded Magnetic Dipole (A-m^2) -MDLSat_Antenna.obj ! Geometry Input File Name +IonCruiser.obj ! Geometry Input File Name NONE ! Node File Name NONE ! Flex File Name ************************************************************************ From d9bb8e280064c6ab7ce0aad91ee7c575adda65de Mon Sep 17 00:00:00 2001 From: zlynch2 Date: Wed, 10 Jun 2026 17:44:56 +0000 Subject: [PATCH 17/18] [nasa/nos3#848] adding retry into radio to connect to cryptolib and removing sleeps since radio handles waiting --- cfg/sims/nos3-simulator-multipleGDS.xml | 8 ++++---- components/generic_radio | 2 +- scripts/fsw/fsw_cfs_launch.sh | 4 +--- scripts/fsw/fsw_cfs_multipleGSW_launch.sh | 2 +- scripts/gsw/gsw_yamcs_multi_launch.sh | 2 +- 5 files changed, 8 insertions(+), 10 deletions(-) diff --git a/cfg/sims/nos3-simulator-multipleGDS.xml b/cfg/sims/nos3-simulator-multipleGDS.xml index 33f5df1a2..79d1137f6 100644 --- a/cfg/sims/nos3-simulator-multipleGDS.xml +++ b/cfg/sims/nos3-simulator-multipleGDS.xml @@ -637,13 +637,13 @@ 30 5 0 - occulted + none 15 - true + false 1 - occulted + none 15 - true + false