112 lines
4.1 KiB
Plaintext
112 lines
4.1 KiB
Plaintext
## Changes from ASTP 1.0.0 to 1.1.0
|
|
|
|
### PUS
|
|
|
|
- Added PUS C support
|
|
|
|
### Configuration
|
|
|
|
- Additional configuration option fsfwconfig::FSFW_MAX_TM_PACKET_SIZE which
|
|
need to be specified in FSFWConfig.h
|
|
|
|
|
|
|
|
## Changes from ASTP 0.0.1 to 1.0.0
|
|
|
|
### Host OSAL
|
|
|
|
- Bugfix in MessageQueue, which caused the sender not to be set properly
|
|
|
|
### FreeRTOS OSAL
|
|
|
|
- vRequestContextSwitchFromISR is declared extern "C" so it can be defined in
|
|
a C file without issues
|
|
|
|
### PUS Services
|
|
|
|
- It is now possible to change the message queue depth for the telecommand verification service (PUS1)
|
|
- The same is possible for the event reporting service (PUS5)
|
|
- PUS Health Service added, which allows to command and retrieve health via PUS packets
|
|
|
|
|
|
### EnhancedControllerBase
|
|
|
|
- New base class for a controller which also implements HasActionsIF and HasLocalDataPoolIF
|
|
|
|
### Local Pool
|
|
|
|
- Interface of LocalPools has changed. LocalPool is not a template anymore. Instead the size and
|
|
bucket number of the pools per page and the number of pages are passed to the ctor instead of
|
|
two ctor arguments and a template parameter
|
|
|
|
### Parameter Service
|
|
|
|
- The API of the parameter service has been changed to prevent inconsistencies
|
|
between documentation and actual code and to clarify usage.
|
|
- The parameter ID now consists of:
|
|
1. Domain ID (1 byte)
|
|
2. Unique Identifier (1 byte)
|
|
3. Linear Index (2 bytes)
|
|
The linear index can be used for arrays as well as matrices.
|
|
The parameter load command now explicitely expects the ECSS PTC and PFC
|
|
information as well as the rows and column number. Rows and column will
|
|
default to one, which is equivalent to one scalar parameter (the most
|
|
important use-case)
|
|
|
|
### File System Interface
|
|
|
|
- A new interfaces specifies the functions for a software object which exposes the file system of
|
|
a given hardware to use message based file handling (e.g. PUS commanding)
|
|
|
|
### Internal Error Reporter
|
|
|
|
- The new internal error reporter uses the local data pools. The pool IDs for
|
|
the exisiting three error values and the new error set will be hardcoded for
|
|
now, the the constructor for the internal error reporter just takes an object
|
|
ID for now.
|
|
|
|
### Device Handler Base
|
|
|
|
- There is an additional `PERFORM_OPERATION` step for the device handler base. It is important
|
|
that DHB users adapt their polling sequence tables to perform this step. This steps allows for
|
|
a clear distinction between operation and communication steps
|
|
- setNormalDatapoolEntriesInvalid is not an abstract method and a default implementation was provided
|
|
- getTransitionDelayMs is now an abstract method
|
|
|
|
### DeviceHandlerIF
|
|
|
|
- Typo for UNKNOWN_DEVICE_REPLY
|
|
|
|
### Events
|
|
|
|
- makeEvent function: Now takes three input parameters instead of two and
|
|
allows setting a unique ID. Event.cpp source file removed, functions now
|
|
defined in header directly. Namespaces renamed. Functions declared `constexpr`
|
|
now
|
|
|
|
### Commanding Service Base
|
|
|
|
- CSB uses the new fsfwconfig::FSFW_CSB_FIFO_DEPTH variable to determine the FIFO depth for each
|
|
CSB instance. This variable has to be set in the FSFWConfig.h file
|
|
|
|
### Service Interface
|
|
|
|
- Proper printf support contained in ServiceInterfacePrinter.h
|
|
- CPP ostream support now optional (can reduce executable size by 150 - 250 kB)
|
|
- Amalagated header which determines automatically which service interface to use depending on FSFWConfig.h configuration.
|
|
Users can just use #include <fsfw/serviceinterface/ServiceInterface.h>
|
|
- If CPP streams are excluded, sif:: calls won't work anymore and need to be replaced by their printf counterparts.
|
|
For the fsfw, this can be done by checking the processor define FSFW_CPP_OSTREAM_ENABLED from FSFWConfig.h.
|
|
For mission code, developers need to replace sif:: calls by the printf counterparts, but only if the CPP stream are excluded.
|
|
If this is not the case, everything should work as usual.
|
|
|
|
### ActionHelper and ActionMessage
|
|
|
|
- ActionHelper finish function and ActionMessage::setCompletionReply now expects explicit
|
|
information whether to report a success or failure message instead of deriving it implicitely
|
|
from returnvalue
|
|
|
|
### PUS Parameter Service 20
|
|
|
|
Added PUS parameter service 20 (only custom subservices available).
|