Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
156 commits
Select commit Hold shift + click to select a range
36fe485
updated fprime zephyr version
ineskhou Oct 3, 2025
15d6d7a
Initial radio addition
LeStarch Oct 3, 2025
daa9740
Add LoRa transmit
LeStarch Oct 3, 2025
868fc66
Add com delay component
LeStarch Oct 4, 2025
30fe619
Create custom_space_data_link.py
ineskhou Oct 5, 2025
e677465
Allows Makefile with F Prime version and run GDS with camera
ineskhou Oct 5, 2025
b21abcf
Add circuit pass-through
LeStarch Oct 4, 2025
221c9e1
Update to use aggregation
LeStarch Oct 6, 2025
925ea7e
Update to use aggregation
LeStarch Oct 6, 2025
3369a2e
Appease Linter
Mikefly123 Oct 6, 2025
5ecb939
Ran Linter
Mikefly123 Oct 6, 2025
4b868ad
Merge pull request #42 from Open-Source-Space-Foundation/run-make-fmt…
Mikefly123 Oct 6, 2025
b2deade
Fix Submodules
Mikefly123 Oct 7, 2025
a67e02b
Merge branch 'main' into radio
Mikefly123 Oct 7, 2025
f3d422a
Merge branch 'main' into radio
Mikefly123 Oct 8, 2025
690b31c
try
nateinaction Oct 8, 2025
4469434
Apply suggestion from @nateinaction
nateinaction Oct 8, 2025
6c8d5ee
changed the aggregator
ineskhou Oct 8, 2025
bdbc8e5
Merge branch 'radio' of github.com:Open-Source-Space-Foundation/prove…
ineskhou Oct 8, 2025
1b8c4f7
Merge branch 'main' of github.com:open-source-space-foundation/proves…
nateinaction Oct 10, 2025
ceb570f
Revert bootloadertrigger change
nateinaction Oct 10, 2025
2810ace
Merge branch 'main' of github.com:open-source-space-foundation/proves…
nateinaction Oct 11, 2025
72beeda
spacing
nateinaction Oct 11, 2025
60881fa
Merged
LeStarch Oct 12, 2025
6017947
updated instrcutions and flow to run the circuitpython radio example
ineskhou Oct 12, 2025
e9b81b2
Add in com splitter and UART com
LeStarch Oct 12, 2025
e591397
Merge remote-tracking branch 'origin/radio' into radio
LeStarch Oct 12, 2025
caac355
Fix format errors
LeStarch Oct 12, 2025
cd4dcce
letting ComIn be valid
ineskhou Oct 13, 2025
90b5c3d
added the initial authenticate obejct
ineskhou Oct 13, 2025
0db398a
inintali form of the sdd
ineskhou Oct 13, 2025
e77e28d
smallfixe
ineskhou Oct 14, 2025
83ec6c3
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Oct 31, 2025
4b2fc76
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 3, 2025
cffdbc4
finished riting out path and stuff for sdd
ineskhou Nov 4, 2025
24e3968
started backwards componetn thing
ineskhou Nov 4, 2025
a8be11c
cmake
ineskhou Nov 4, 2025
9cc14a4
file update sdd
ineskhou Nov 4, 2025
c353f5c
removed authenticato
ineskhou Nov 5, 2025
0b350c2
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 5, 2025
2cd4e56
making outline of the Authenticate
ineskhou Nov 5, 2025
d2cd4eb
fixed complie formating
ineskhou Nov 5, 2025
bce45de
adding skeleton code
ineskhou Nov 5, 2025
9a072cf
plugin notes
ineskhou Nov 9, 2025
a1833af
erge branch 'authenticate' of github.com:Open-Source-Space-Foundation…
ineskhou Nov 9, 2025
338ffa7
Merge branch 'authenticate' of github.com:Open-Source-Space-Foundatio…
ineskhou Nov 9, 2025
fa3c287
sequence reading and writing
ineskhou Nov 9, 2025
80a3eec
updaye file reading
ineskhou Nov 13, 2025
ab02f8d
fixed linking problems
ineskhou Nov 13, 2025
d29d949
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 13, 2025
564dd4f
fixed telem
ineskhou Nov 13, 2025
6b56546
added file creation on the constructor
ineskhou Nov 13, 2025
e9d799c
added relevent connectgions
ineskhou Nov 13, 2025
2c1c26c
skeleton and robust logic
ineskhou Nov 13, 2025
fc88cd8
added spi stuff prefile
ineskhou Nov 13, 2025
4f7637e
added to comccsds uaert
ineskhou Nov 13, 2025
403215e
fixed most erorrs with sligmnet, hpp ect
ineskhou Nov 13, 2025
4e9ad52
added window parameter
ineskhou Nov 13, 2025
d948784
update param docs
ineskhou Nov 13, 2025
a3966d0
All builds, need to implement a few functions
ineskhou Nov 13, 2025
4acebc5
coorected the packet indexing frmo teh sdd
ineskhou Nov 13, 2025
4e2cd1a
added abliity to choose which encyption will be used
ineskhou Nov 13, 2025
8da76cf
added spi dict
ineskhou Nov 13, 2025
d48ce8f
added things to config so no crash
ineskhou Nov 14, 2025
2d3916a
corrections for config
ineskhou Nov 14, 2025
630a323
dict correction to have varied keys
ineskhou Nov 14, 2025
f0eb7c9
changing format fo txt
ineskhou Nov 14, 2025
6dbda4a
SPI reading workds
ineskhou Nov 15, 2025
9e28cb3
updated sdd
ineskhou Nov 15, 2025
1a52c51
added through connections for UART
ineskhou Nov 15, 2025
342acb9
added framer plugin
ineskhou Nov 15, 2025
9ab5bf6
update to build
ineskhou Nov 15, 2025
ce79763
lowered coverage to be able to push gds
ineskhou Nov 15, 2025
7a152b9
FIXED THE FRAMER
ineskhou Nov 15, 2025
3244dfd
corrected Makefule setups
ineskhou Nov 15, 2025
e99d27f
changed names updated readme
ineskhou Nov 16, 2025
9d9030a
updated readme
ineskhou Nov 16, 2025
e648692
header communication
ineskhou Nov 16, 2025
3c06e56
can read security header
ineskhou Nov 16, 2025
6e5784e
adding config, setting config when no auth added to packets
ineskhou Nov 16, 2025
35fab2b
adding sequence increment
ineskhou Nov 16, 2025
e130a80
adding the mbedtls lirbary to f prime zephyr
ineskhou Nov 17, 2025
2300655
appease linter
ineskhou Nov 17, 2025
1493d19
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 17, 2025
0122599
WORKS!
ineskhou Nov 17, 2025
6db3abb
cleanup
ineskhou Nov 18, 2025
e6bbda8
Update code.py
ineskhou Nov 18, 2025
fc92ff0
Update code.py
ineskhou Nov 18, 2025
804e4bc
updated sdd
ineskhou Nov 18, 2025
b1f7580
fixed da telemtry
ineskhou Nov 18, 2025
6d2d745
Merge branch 'authenticate' of github.com:Open-Source-Space-Foundatio…
ineskhou Nov 18, 2025
54ed006
Update Framing/pyproject.toml
ineskhou Nov 18, 2025
a1480d6
Update .pre-commit-config.yaml
ineskhou Nov 18, 2025
f6739b2
Update FprimeZephyrReference/Components/Authenticate/Authenticate.cpp
ineskhou Nov 18, 2025
3e28ae8
Update UploadsFIlesystem/AuthenticateFiles/spi_dict.txt
ineskhou Nov 18, 2025
8a95b87
applied code review suggestions
ineskhou Nov 18, 2025
379b046
Merge branch 'authenticate' of github.com:Open-Source-Space-Foundatio…
ineskhou Nov 18, 2025
e9697ec
more code review suggestions
ineskhou Nov 18, 2025
b7757d4
typo
ineskhou Nov 18, 2025
0346928
trying testing with framer
ineskhou Nov 18, 2025
cb63bcb
corrected tests
ineskhou Nov 18, 2025
1a1e63a
removing authen test
ineskhou Nov 18, 2025
da4da03
rtc edits
ineskhou Nov 19, 2025
be8bb7f
updated trc test
ineskhou Nov 19, 2025
398753d
added deplay in takedown
ineskhou Nov 19, 2025
c39e835
fix for large packets
ineskhou Nov 19, 2025
b0b2593
ability to change params in the gds
ineskhou Nov 19, 2025
912aad8
some review comments
ineskhou Nov 24, 2025
cefae1b
moved memory deletion to another dunction
ineskhou Nov 24, 2025
20778b8
added reject packet central behaviour
ineskhou Nov 24, 2025
ff00b2b
change m vars
ineskhou Nov 24, 2025
56f688a
simplyfy path
ineskhou Nov 24, 2025
f758928
more comments on hpp
ineskhou Nov 24, 2025
c41934f
added if statement back
ineskhou Nov 24, 2025
da3b935
moved header stuff out and did mempy
ineskhou Nov 24, 2025
237061e
final cleanup reformat refact
ineskhou Nov 24, 2025
6573760
remove spi_dict bc its generated now
ineskhou Nov 24, 2025
9a7b6c8
generate keys now
ineskhou Nov 24, 2025
fb38dbf
remvoe spi dict and githifnore it
ineskhou Nov 24, 2025
1ae38b7
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 24, 2025
045c250
fixed merge instancing
ineskhou Nov 24, 2025
552db23
move to older version of python to make CI happy
ineskhou Nov 24, 2025
fc9e07d
removed generat spi dict from Makefile
ineskhou Nov 25, 2025
9f735ef
added back egernattion stuff
ineskhou Nov 25, 2025
7fcd500
put the tlm numbers back
ineskhou Nov 25, 2025
a943b83
removed debug statements
ineskhou Nov 25, 2025
1293de2
if rtc not ready reboot soft
ineskhou Nov 25, 2025
5232705
cold reset
ineskhou Nov 25, 2025
4f75f7e
check rtc not ready and run rtcstuff bc of the throtlting
ineskhou Nov 25, 2025
272550b
del mode manger test to svae time
ineskhou Nov 25, 2025
deec990
chnaged subtopology to allow authentication router
ineskhou Nov 25, 2025
da12650
made component active
ineskhou Nov 26, 2025
7fc0936
updated sdd
ineskhou Nov 26, 2025
dde2e96
Added Skeleton Commands and ports for new additions
ineskhou Nov 26, 2025
feb6e67
paramater add command remove
ineskhou Nov 26, 2025
fee0cdc
read write to file work
ineskhou Nov 26, 2025
469f078
updated test
ineskhou Nov 27, 2025
88e0275
fixed boot loop
ineskhou Nov 27, 2025
e2e45bf
last loss time works, just need to check for reverting to monotonic time
ineskhou Nov 27, 2025
3ee1d59
flag for monotionic timr or not
ineskhou Nov 27, 2025
885f7af
sending commands resets timer
ineskhou Nov 27, 2025
f870bb0
one event emits
ineskhou Nov 27, 2025
27a9f05
added monotonic time logic
ineskhou Nov 27, 2025
acde1a3
fixed not reset during restart
ineskhou Nov 27, 2025
73c3d42
cleanup and documantsion
ineskhou Nov 27, 2025
45d383a
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 27, 2025
289ca24
changed to 3 days
ineskhou Nov 27, 2025
ecbdbe0
save state to filesysytem
ineskhou Nov 27, 2025
910d09d
changed back to 6 years
ineskhou Nov 27, 2025
8b95e4e
remove print
ineskhou Nov 28, 2025
402b827
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 28, 2025
1ea518e
trying to rresoluve antenna test
ineskhou Nov 28, 2025
17d9a35
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 28, 2025
2948365
fix antenna deployer test
ineskhou Nov 28, 2025
1179027
modmane
ineskhou Nov 28, 2025
a051b53
Merge branch 'main' of github.com:Open-Source-Space-Foundation/proves…
ineskhou Nov 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .codespell-ignore-words.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
comIn
bufferIn
Ines
rsource
3 changes: 2 additions & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ repos:
args:
- --ignore-init-method
- --omit-covered-files
- --fail-under=100
- --fail-under=40
- -vv
- --color
- --exclude=Framing/*
1 change: 1 addition & 0 deletions FprimeZephyrReference/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@
add_fprime_subdirectory("${CMAKE_CURRENT_LIST_DIR}/project/config")
add_fprime_subdirectory("${CMAKE_CURRENT_LIST_DIR}/Components")
add_fprime_subdirectory("${CMAKE_CURRENT_LIST_DIR}/ComCcsdsUart/")
add_fprime_subdirectory("${CMAKE_CURRENT_LIST_DIR}/ComCcsdsLora/")
add_fprime_subdirectory("${CMAKE_CURRENT_LIST_DIR}/ReferenceDeployment/")
12 changes: 12 additions & 0 deletions FprimeZephyrReference/ComCcsdsLora/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@

register_fprime_module(
EXCLUDE_FROM_ALL
AUTOCODER_INPUTS
"${CMAKE_CURRENT_LIST_DIR}/ComCcsds.fpp"
HEADERS
"${CMAKE_CURRENT_LIST_DIR}/SubtopologyTopologyDefs.hpp"
"${CMAKE_CURRENT_LIST_DIR}/PingEntries.hpp"
DEPENDS
Svc_Subtopologies_ComCcsds_ComCcsdsConfig
INTERFACE
)
179 changes: 179 additions & 0 deletions FprimeZephyrReference/ComCcsdsLora/ComCcsds.fpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,179 @@
module ComCcsdsLora {

# ----------------------------------------------------------------------
# Active Components
# ----------------------------------------------------------------------
instance comQueue: Svc.ComQueue base id ComCcsdsConfig.BASE_ID_LORA + 0x00000 \
queue size ComCcsdsConfig.QueueSizes.comQueue \
stack size ComCcsdsConfig.StackSizes.comQueue \
priority ComCcsdsConfig.Priorities.comQueue \
{
phase Fpp.ToCpp.Phases.configComponents """
using namespace ComCcsdsLora;
Svc::ComQueue::QueueConfigurationTable configurationTable;

// Events (highest-priority)
configurationTable.entries[ComCcsds::Ports_ComPacketQueue::EVENTS].depth = ComCcsdsConfig::QueueDepths::events;
configurationTable.entries[ComCcsds::Ports_ComPacketQueue::EVENTS].priority = ComCcsdsConfig::QueuePriorities::events;

// Telemetry
configurationTable.entries[ComCcsds::Ports_ComPacketQueue::TELEMETRY].depth = ComCcsdsConfig::QueueDepths::tlm;
configurationTable.entries[ComCcsds::Ports_ComPacketQueue::TELEMETRY].priority = ComCcsdsConfig::QueuePriorities::tlm;

// File Downlink Queue (buffer queue using NUM_CONSTANTS offset)
configurationTable.entries[ComCcsds::Ports_ComPacketQueue::NUM_CONSTANTS + ComCcsds::Ports_ComBufferQueue::FILE].depth = ComCcsdsConfig::QueueDepths::file;
configurationTable.entries[ComCcsds::Ports_ComPacketQueue::NUM_CONSTANTS + ComCcsds::Ports_ComBufferQueue::FILE].priority = ComCcsdsConfig::QueuePriorities::file;

// Allocation identifier is 0 as the MallocAllocator discards it
ComCcsdsLora::comQueue.configure(configurationTable, 0, ComCcsds::Allocation::memAllocator);
"""
phase Fpp.ToCpp.Phases.tearDownComponents """
ComCcsdsLora::comQueue.cleanup();
"""
}

# ----------------------------------------------------------------------
# Passive Components
# ----------------------------------------------------------------------
instance frameAccumulator: Svc.FrameAccumulator base id ComCcsdsConfig.BASE_ID_LORA + 0x01000 \
{

phase Fpp.ToCpp.Phases.configObjects """
Svc::FrameDetectors::CcsdsTcFrameDetector frameDetector;
"""
phase Fpp.ToCpp.Phases.configComponents """
ComCcsdsLora::frameAccumulator.configure(
ConfigObjects::ComCcsdsLora_frameAccumulator::frameDetector,
1,
ComCcsds::Allocation::memAllocator,
ComCcsdsConfig::BuffMgr::frameAccumulatorSize
);
"""

phase Fpp.ToCpp.Phases.tearDownComponents """
ComCcsdsLora::frameAccumulator.cleanup();
"""
}

instance commsBufferManager: Svc.BufferManager base id ComCcsdsConfig.BASE_ID_LORA + 0x02000 \
{
phase Fpp.ToCpp.Phases.configObjects """
Svc::BufferManager::BufferBins bins;
"""

phase Fpp.ToCpp.Phases.configComponents """
memset(&ConfigObjects::ComCcsdsLora_commsBufferManager::bins, 0, sizeof(ConfigObjects::ComCcsdsLora_commsBufferManager::bins));
ConfigObjects::ComCcsdsLora_commsBufferManager::bins.bins[0].bufferSize = ComCcsdsConfig::BuffMgr::commsBuffSize;
ConfigObjects::ComCcsdsLora_commsBufferManager::bins.bins[0].numBuffers = ComCcsdsConfig::BuffMgr::commsBuffCount;
ConfigObjects::ComCcsdsLora_commsBufferManager::bins.bins[1].bufferSize = ComCcsdsConfig::BuffMgr::commsFileBuffSize;
ConfigObjects::ComCcsdsLora_commsBufferManager::bins.bins[1].numBuffers = ComCcsdsConfig::BuffMgr::commsFileBuffCount;
ComCcsdsLora::commsBufferManager.setup(
ComCcsdsConfig::BuffMgr::commsBuffMgrId,
0,
ComCcsds::Allocation::memAllocator,
ConfigObjects::ComCcsdsLora_commsBufferManager::bins
);
"""

phase Fpp.ToCpp.Phases.tearDownComponents """
ComCcsdsLora::commsBufferManager.cleanup();
"""
}

instance fprimeRouter: Svc.FprimeRouter base id ComCcsdsConfig.BASE_ID_LORA + 0x03000

instance authenticationRouter: Svc.AuthenticationRouter base id ComCcsdsConfig.BASE_ID_LORA + 0x03500 \
queue size ComCcsdsConfig.QueueSizes.comQueue \
stack size ComCcsdsConfig.StackSizes.comQueue \
priority ComCcsdsConfig.Priorities.comQueue

instance tcDeframer: Svc.Ccsds.TcDeframer base id ComCcsdsConfig.BASE_ID_LORA + 0x04000

instance spacePacketDeframer: Svc.Ccsds.SpacePacketDeframer base id ComCcsdsConfig.BASE_ID_LORA + 0x05000

instance aggregator: Svc.ComAggregator base id ComCcsdsConfig.BASE_ID_LORA + 0x06000 \
queue size ComCcsdsConfig.QueueSizes.aggregator \
stack size ComCcsdsConfig.StackSizes.aggregator

# NOTE: name 'framer' is used for the framer that connects to the Com Adapter Interface for better subtopology interoperability
instance framer: Svc.Ccsds.TmFramer base id ComCcsdsConfig.BASE_ID_LORA + 0x07000

instance spacePacketFramer: Svc.Ccsds.SpacePacketFramer base id ComCcsdsConfig.BASE_ID_LORA + 0x08000

instance apidManager: Svc.Ccsds.ApidManager base id ComCcsdsConfig.BASE_ID_LORA + 0x09000

topology Subtopology {
# Usage Note:
#
# When importing this subtopology, users shall establish 5 port connections with a component implementing
# the Svc.Com (Svc/Interfaces/Com.fpp) interface. They are as follows:
#
# 1) Outputs:
# - ComCcsdsLora.framer.dataOut -> [Svc.Com].dataIn
# - ComCcsdsLora.frameAccumulator.dataReturnOut -> [Svc.Com].dataReturnIn
# 2) Inputs:
# - [Svc.Com].dataReturnOut -> ComCcsdsLora.framer.dataReturnIn
# - [Svc.Com].comStatusOut -> ComCcsdsLora.framer.comStatusIn
# - [Svc.Com].dataOut -> ComCcsdsLora.frameAccumulator.dataIn


# Active Components
instance comQueue

# Passive Components
instance commsBufferManager
instance frameAccumulator
instance fprimeRouter
instance authenticationRouter
instance tcDeframer
instance spacePacketDeframer
instance framer
instance spacePacketFramer
instance apidManager
instance aggregator

connections Downlink {
# ComQueue <-> SpacePacketFramer
comQueue.dataOut -> spacePacketFramer.dataIn
spacePacketFramer.dataReturnOut -> comQueue.dataReturnIn
# SpacePacketFramer buffer and APID management
spacePacketFramer.bufferAllocate -> commsBufferManager.bufferGetCallee
spacePacketFramer.bufferDeallocate -> commsBufferManager.bufferSendIn
spacePacketFramer.getApidSeqCount -> apidManager.getApidSeqCountIn
# SpacePacketFramer <-> TmFramer
spacePacketFramer.dataOut -> aggregator.dataIn
aggregator.dataOut -> framer.dataIn

framer.dataReturnOut -> aggregator.dataReturnIn
aggregator.dataReturnOut -> spacePacketFramer.dataReturnIn

# ComStatus
framer.comStatusOut -> aggregator.comStatusIn
aggregator.comStatusOut -> spacePacketFramer.comStatusIn
spacePacketFramer.comStatusOut -> comQueue.comStatusIn
# (Outgoing) Framer <-> ComInterface connections shall be established by the user
}

connections Uplink {
# (Incoming) ComInterface <-> FrameAccumulator connections shall be established by the user
# FrameAccumulator buffer allocations
frameAccumulator.bufferDeallocate -> commsBufferManager.bufferSendIn
frameAccumulator.bufferAllocate -> commsBufferManager.bufferGetCallee
# FrameAccumulator <-> TcDeframer
frameAccumulator.dataOut -> tcDeframer.dataIn
tcDeframer.dataReturnOut -> frameAccumulator.dataReturnIn
# TcDeframer <-> SpacePacketDeframer
tcDeframer.dataOut -> spacePacketDeframer.dataIn
spacePacketDeframer.dataReturnOut -> tcDeframer.dataReturnIn
# SpacePacketDeframer APID validation
spacePacketDeframer.validateApidSeqCount -> apidManager.validateApidSeqCountIn
# SpacePacketDeframer <-> AuthenticationRouter (routes both commands and files)
spacePacketDeframer.dataOut -> authenticationRouter.dataIn
authenticationRouter.dataReturnOut -> spacePacketDeframer.dataReturnIn
# AuthenticationRouter buffer allocations
authenticationRouter.bufferAllocate -> commsBufferManager.bufferGetCallee
authenticationRouter.bufferDeallocate -> commsBufferManager.bufferSendIn
}
} # end Subtopology

} # end ComCcsdsLora
9 changes: 9 additions & 0 deletions FprimeZephyrReference/ComCcsdsLora/PingEntries.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@

#ifndef COMCCSDSLORA_PINGENTRIES_HPP
#define COMCCSDSLORA_PINGENTRIES_HPP

namespace PingEntries {
// No ping-enabled components in ComCcsdsLora subtopology
}

#endif
21 changes: 21 additions & 0 deletions FprimeZephyrReference/ComCcsdsLora/SubtopologyTopologyDefs.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#ifndef COMCCSDSLORASUBTOPOLOGY_DEFS_HPP
#define COMCCSDSLORASUBTOPOLOGY_DEFS_HPP

#include <Fw/Types/MallocAllocator.hpp>
#include <Svc/BufferManager/BufferManager.hpp>
#include <Svc/FrameAccumulator/FrameDetector/CcsdsTcFrameDetector.hpp>

#include "ComCcsdsConfig/ComCcsdsSubtopologyConfig.hpp"
#include "Svc/Subtopologies/ComCcsds/ComCcsdsConfig/FppConstantsAc.hpp"

namespace ComCcsdsLora {
struct SubtopologyState {
// Empty - no external state needed for ComCcsdsLora subtopology
};

struct TopologyState {
SubtopologyState comCcsdsLora;
};
} // namespace ComCcsdsLora

#endif
15 changes: 9 additions & 6 deletions FprimeZephyrReference/ComCcsdsUart/ComCcsds.fpp
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,10 @@ module ComCcsdsUart {
"""
}

instance fprimeRouter: Svc.FprimeRouter base id ComCcsdsConfig.BASE_ID_UART + 0x03000
instance authenticationRouter: Svc.AuthenticationRouter base id ComCcsdsConfig.BASE_ID_UART + 0x03000 \
queue size ComCcsdsConfig.QueueSizes.comQueue \
stack size ComCcsdsConfig.StackSizes.comQueue \
priority ComCcsdsConfig.Priorities.comQueue

instance tcDeframer: Svc.Ccsds.TcDeframer base id ComCcsdsConfig.BASE_ID_UART + 0x04000

Expand Down Expand Up @@ -132,7 +135,7 @@ module ComCcsdsUart {
# Passive Components
instance commsBufferManager
instance frameAccumulator
instance fprimeRouter
instance authenticationRouter
instance tcDeframer
instance spacePacketDeframer
instance framer
Expand Down Expand Up @@ -185,12 +188,12 @@ module ComCcsdsUart {
spacePacketDeframer.validateApidSeqCount -> apidManager.validateApidSeqCountIn

# SpacePacketDeframer <-> Router
spacePacketDeframer.dataOut -> fprimeRouter.dataIn
fprimeRouter.dataReturnOut -> spacePacketDeframer.dataReturnIn
spacePacketDeframer.dataOut -> authenticationRouter.dataIn
authenticationRouter.dataReturnOut -> spacePacketDeframer.dataReturnIn

# Router buffer allocations
fprimeRouter.bufferAllocate -> commsBufferManager.bufferGetCallee
fprimeRouter.bufferDeallocate -> commsBufferManager.bufferSendIn
authenticationRouter.bufferAllocate -> commsBufferManager.bufferGetCallee
authenticationRouter.bufferDeallocate -> commsBufferManager.bufferSendIn
}
} # end FramingSubtopology

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -426,7 +426,6 @@ void Authenticate ::dataIn_handler(FwIndexType portNum, Fw::Buffer& data, const
#else
// Authentication is disabled - pass data through unchanged
// Mark as authenticated (or leave context unchanged) and pass through
// Note: You may want to set authenticated to 0 or leave it as-is depending on your requirements
contextOut.set_authenticated(
1); // Pass through as authenticated, or use context.authenticated if you want to preserve
#endif
Expand Down
Loading
Loading