eive-obsw/CHANGELOG.md

331 lines
15 KiB
Markdown
Raw Normal View History

2022-04-21 14:18:41 +02:00
Change Log
=======
All notable changes to this project will be documented in this file.
2022-05-04 14:43:27 +02:00
The format is based on [Keep a Changelog](http://keepachangelog.com/).
2022-04-21 14:18:41 +02:00
2022-04-21 14:21:02 +02:00
The [milestone](https://egit.irs.uni-stuttgart.de/eive/eive-obsw/milestones)
list yields a list of all related PRs for each release.
2023-01-26 20:33:16 +01:00
Starting at v2.0.0, the following changes will consitute of a breaking
change warranting a new major release:
- The TMTC interface changes in any shape of form.
- The behavour of the OBSW changes in a major shape or form relevant
for operations
2022-04-21 14:18:41 +02:00
# [unreleased]
## Added
- First COM subsystem implementation. It mirrors the Syrlinks mode/submodes but also takes
care of commanding the CCSDS handler. It expects the Syrlinks submodes as mode commands.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/358
2023-01-26 20:04:50 +01:00
# [v1.21.0] 2023-01-26
2023-01-26 20:53:36 +01:00
TMTC version: v2.5.0
Syrlinks PR: PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/353
2023-01-25 13:47:29 +01:00
## Fixed
2023-01-24 19:48:20 +01:00
2023-01-24 19:47:30 +01:00
- The `OBSW_SYRLINKS_SIMULATED` flag is set to 0 for for both EM and FM.
2023-01-25 13:47:29 +01:00
- MGM4 handling in ACS sensor processing: Bugfix in `mulScalar` operation
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/354
2023-01-26 16:22:15 +01:00
- Subsystem ID clash: CORE subsystem ID was the same as Syrlinks subsystem ID.
2023-01-24 19:48:20 +01:00
## Changed
2023-01-24 13:18:29 +01:00
- Startracker temperature set and PCDU switcher set are diagnostic now
2023-01-24 19:48:20 +01:00
- `SyrlinksHkHandler` renamed to `SyrlinksHandler` to better reflect that it does more than
just HK and is also responsible for setting the TX mode of the device.
2023-01-26 13:02:29 +01:00
- `SyrlinksHandler`: Go to startup immediately because the Syrlinks device should always be on
by default.
- `SyrlinksHandler`: Go to normal mode at startup.
2023-01-24 19:48:20 +01:00
## Added
- The Syrlinks handler has submodes for the TX mode now: RX Only (0), RX and TX default
datarate (1), RX and TX Low Rate (2), RX and TX High Rate (3) and TX Carrier Wave (4).
2023-01-26 14:39:23 +01:00
The submodes apply for both ON and NORMAL mode. The default datarate can be updated using
a parameter command (domain ID 0 and unique ID 0) with value 0 for low rate and 1 for high rate.
2023-01-26 16:45:28 +01:00
- The Syrlinks handler always sets TX to standby when switching off
- The Syrlinks handler triggers a new TX_ON event when the transmitter was switched on successfully
and a TX_OFF event when it was switched off successfully.
- Startracker temperature set and PCDU switcher set are diagnostic now
2023-01-24 19:47:30 +01:00
- The CCSDS handler can accept mode commands now. It accepts ON and OFF commands. Furthermore
it has a submode for low datarate (1) and high datarate (2) for the ON command.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/352
2023-01-24 13:18:29 +01:00
2023-01-24 12:30:23 +01:00
# [v1.20.0] 2023-01-24
2023-01-13 13:16:26 +01:00
## Added
2023-01-20 14:25:21 +01:00
- The Q7S SW now checks for a file named `boot_delay_secs.txt` in the home directory.
2023-01-13 13:16:26 +01:00
If it exists and the file is empty, it will delay for 6 seconds before continuing
with the regular boot. It can also try to read delay seconds from the file.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/340.
2023-01-23 11:55:49 +01:00
- Basic TCS Subsystem component.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/319
2023-01-24 12:25:16 +01:00
- Expose base set of STR periodic housekeeping packets
2023-01-13 11:21:02 +01:00
## Changed
2023-01-23 11:55:49 +01:00
- Moved some PDEC/PTME configuration to `common/config/eive/definitions.h`
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/319
2023-01-18 16:10:14 +01:00
- The ACS Controller Gyro Sets (raw and processed) and the MEKF dataset are diagnostics now.
2023-01-13 11:21:02 +01:00
- Bumped FSFW for Service 11 improvement which includes size and CRC check for contained TC
2023-01-18 12:58:45 +01:00
- Syrlinks module now always included for both EM and FM
2023-01-20 12:24:19 +01:00
- SA Deployment: Allow specifying the switch interval and the initial channel. This allows testing
the new deployment procedure where each channel is burned for half of the whole burn duration.
It also allows burning only one channel for the whole burn duration. The autonomous mechanism
was adapted to burn each channel for half of the burn time by default.
2023-01-20 12:25:14 +01:00
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/347
2023-01-20 12:26:45 +01:00
TMTC PR: https://egit.irs.uni-stuttgart.de/eive/eive-tmtc/pulls/127
- `Max31865RtdLowlevelHandler.cpp`: For each RTD device, the config is now re-written before
every read. This seems to fix some issue with invalid temperature sensor readings.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/345
2023-01-13 11:21:02 +01:00
2023-01-18 14:24:17 +01:00
## Fixed
- `GyroADIS1650XHandler`: Updated handler to determine correct dynamic range from `RANG_MDL`
register readout. This is because ADIS16505-3BMLZ devices are used on the ACS board and the
previous range setting was wrong. Also fixed a small error properly set internal state
on shut-down.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/342
- Syrlinks Handler: Read RX frequency shift as 24 bit signed number now. Also include
validity handling for datasets.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/350
2023-01-23 16:07:51 +01:00
- `GyroADIS1650XHandler`: Changed calculation of angular rate to be sensitivity based instead of
max. range based, as previous fix still left an margin of error between ADIS16505 sensors
and L3GD20 sensors.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/346
2023-01-18 14:24:17 +01:00
2023-01-20 14:25:21 +01:00
# [v1.19.0] 2023-01-10
2023-01-10 16:23:54 +01:00
2023-01-10 15:41:09 +01:00
## Changed
- 5V stack is now off by default
2022-12-23 12:18:44 +01:00
## Fixed
- PLOC SUPV: Minor adaptions and important bugfix for UART manager
2023-01-09 16:03:04 +01:00
- Allow cloning and building the hosted OBSW version without proprietary libraries,
which also avoids the need to have a Gitea account.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/337
2022-12-23 12:18:44 +01:00
## Added
- First version of ACS controller
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/329
2022-12-21 13:44:48 +01:00
- Allow commanding the 5V stack internally in software
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/334
2022-12-22 14:37:25 +01:00
- Add automatic 5V stack commanding for all connected devices
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/335
2023-01-20 14:25:21 +01:00
# [v1.18.0] 2022-12-01
2022-04-21 14:18:41 +02:00
2022-11-28 18:23:55 +01:00
## Changed
- PLOC Supervisor: Changes baudrate to 921600
2022-11-29 11:07:02 +01:00
- Renamed `/dev/ul-plsv` to `/dev/ploc_supv`, is not a UART lite anymore
- Renamed `/dev/i2c_eive` to `/dev/i2c_pl` and `/dev/i2c-2` to `/dev/i2c_ps`.
2022-11-29 11:08:34 +01:00
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/328
2022-12-01 15:58:39 +01:00
2023-01-20 14:25:21 +01:00
# [v1.17.0] 2022-11-28
2022-11-28 18:23:55 +01:00
2022-11-18 14:26:40 +01:00
## Added
- PLOC Supervisor Update: Update SW to use newest PLOC SUPV version by TAS
2022-11-28 16:33:50 +01:00
PR 1: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/316
PR 2: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/324
PR 3: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/326
2022-11-18 14:26:40 +01:00
2023-01-20 14:25:21 +01:00
# [v1.16.0] 2022-11-18
2022-11-18 14:22:00 +01:00
2022-11-15 13:41:39 +01:00
- It is now possible to compile Linux components for the hosted build conditionally
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/322
2022-11-04 08:37:59 +01:00
- ACS Subsystem. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/231
- Payload Subsystem. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/231
- Add IRQ mode for PDEC handler. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/310
2022-11-02 10:58:40 +01:00
- Extended TM funnels to allow multiple TM recipients.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/312
2022-11-03 15:34:07 +01:00
- DHB: Transitions to normal mode now possible directly, which simplifies subsystem implementations
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/313
2022-11-03 15:35:32 +01:00
- MAX3185 Low Level Handler and Device Handler: Simplifications and bugfixes to allow switching
off without triggering unrequested replies
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/313
2022-11-11 16:26:16 +01:00
- Add remaining missing TMP1075 device handlers.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/318
2022-11-02 10:59:21 +01:00
2023-01-20 14:25:21 +01:00
# [v1.15.0] 2022-10-27
2022-10-27 08:56:20 +02:00
- Consistent device file naming
2022-10-27 09:00:21 +02:00
- Remove rad sensor from EM build, lead to weird bugs on EM which
prevented `xsc_boot_copy` from working properly
- CFDP closure handling is now working
2022-10-27 09:02:55 +02:00
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/307
- Safety mechanism for SD card handling on graceful reboots
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/308
- Solar Array Deployment handler update
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/305
- IMTQ updates as preparation for ACS controller expansion
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/306
2022-10-27 09:08:26 +02:00
- P60 Module: Reduce number of set IDs, use same set IDs for core, auxiliary
and config HK set across the three PCDU modules
2022-10-27 08:56:20 +02:00
2022-10-27 09:11:10 +02:00
# [v1.14.1] 11.10.2022
2022-10-11 23:10:09 +02:00
- Various bugfixes and regression fixes
- General file handling at program initialization now works properly again
- Scratch buffer preferred SD card handling works again
- Use scoped locks in TCS controller to avoid deadlocks
2022-10-27 09:11:10 +02:00
# [v1.14.0] 10.10.2022
2022-08-24 16:38:38 +02:00
2022-09-28 10:05:36 +02:00
- Provide full SW update capability for the OBSW.
This includes very basic CFDP integration, a software update
procedure specified in detail in the README and some high level
commands to make this easier for operators.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/302
2022-08-24 17:35:06 +02:00
- Update for FSFW: `HasReturnvaluesIF` class replaced by namespace `returnvalue`
2022-08-27 16:04:55 +02:00
- Add some GomSpace clients as a submodule dependency. Use this dependency to deserialize the
GomSpace TM tables
- Add API to retrieve GomSpace device parameter tables
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/287
2022-09-02 13:16:56 +02:00
- Add API to save and load GomSpace config tables
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/293
- Increase number of allowed consescutive action commands from 3 to 16
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/294
2022-09-15 11:38:29 +02:00
- Fix for EM SW: Always create ACS Task
2022-09-27 19:22:06 +02:00
- Added Scex device handler and Scex uart reader
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/303
2022-10-10 17:44:28 +02:00
- ACS Subsystem. PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/228
2022-08-24 17:35:06 +02:00
2022-08-24 16:38:38 +02:00
# [v1.13.0] 24.08.2022
2022-08-16 16:45:14 +02:00
- Added first version of ACS Controller with gathers MGM data in a set
2022-08-24 16:38:38 +02:00
- Some tweaks for IMTQ handler
2022-08-16 16:45:14 +02:00
2022-07-05 02:14:32 +02:00
# [v1.12.1] 05.07.2022
- Disable periodic TCS controller HK generation by default
2022-07-04 11:13:26 +02:00
# [v1.12.0] 04.07.2022
2022-05-05 16:49:10 +02:00
2022-05-07 12:54:25 +02:00
## Added
2022-07-04 11:13:26 +02:00
- Dummy components to run OBSW without relying on external hardware
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/266
- Basic Thermal Controller
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/266
2022-05-24 15:22:45 +02:00
- PUS11 TC scheduler
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/259
2022-05-24 01:14:47 +02:00
- Regular reboot command
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/242
2022-05-23 17:52:44 +02:00
- Commands for individual RTD devices
PR: https://egit.irs.uni-stuttgart.de/eive/eive-tmtc/pulls/84
2022-05-11 01:50:49 +02:00
- `RwAssembly` added to system components. Assembly works in principle,
issues making 4 consecutives RWs communicate at once..
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/224
2022-05-07 12:54:25 +02:00
- Adds a yocto helper script which is able to install the release build binaries
(OBSW and Watchdog) into the `q7s-yocto` repository as long as the `q7s-package`
or `q7s-yocto` repo was cloned in the same directory the EIVE OBSW repo.
This makes updating the root filesystem a lot easier. It also creates and installs a
version file.
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/248
2022-05-07 12:55:48 +02:00
- Create the generic image by default for the Q7S build. The unique binary with the
username appended at the end is created as a side-product now
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/248
2022-05-07 12:54:25 +02:00
2022-05-23 18:39:13 +02:00
## Fixed
- `q7s-cp.py` bugfix
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/256
2022-07-04 11:13:26 +02:00
- Generator scripts output now produce platform-independent artifacts
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/267
2022-05-23 18:39:13 +02:00
2022-05-13 09:35:47 +02:00
### Heater
- Adds `HealthIF` to heaters. Heaters are own system object with queues now which allows to set them faulty.
- SW will attempt to shut down heaters which are on but marked faulty
- Some simplifications for `HeaterHandler`, use `std::vector` instead of `std::unordered_map` for primary container. Using the heater indexes 0 to 7 allows to use natural array indexing
- Some additional input sanity checks in `executeAction`
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/236
2022-05-05 16:55:51 +02:00
## Changed
2022-05-05 16:49:10 +02:00
2022-07-04 11:13:26 +02:00
- CCSDS handler improvements
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/268
- Build unittest as default side product of hosted builds
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/244
- Let CI/CD build host build and run unittest side product in same step
- Catch2 pre-installed in CI/CD docker container, Xiphos SDK installed in CI/CD docker
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/247
2022-05-05 16:49:10 +02:00
- Sun Sensors have names denoting their location and poiting in the satellite now
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/245
2022-05-05 16:55:51 +02:00
- Better RTD names denoting their purpose (and location consequently)
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/246
2022-05-05 16:49:10 +02:00
2022-04-21 14:18:41 +02:00
# [v1.11.0]
2022-05-03 11:34:47 +02:00
## Fixed
- Host build working again
2022-04-28 13:08:19 +02:00
## Added
2022-04-28 17:54:47 +02:00
- Custom Syrlinks FDIR which disabled most of the default FDIR functionality
2022-05-03 12:51:34 +02:00
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/232
2022-05-03 11:33:07 +02:00
- Custom Gomspace FDIR which disabled most of the default FDIR functionality
2022-04-28 17:54:47 +02:00
- Custom Syrlinks FDIR which disabled most of the default FDIR functionality
2022-04-28 13:08:19 +02:00
2022-04-21 14:18:41 +02:00
## Changed
2022-04-22 10:59:43 +02:00
- PCDU handler only called once in PST, but can handle multiple messages now
2022-05-03 12:51:34 +02:00
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/221
Bugfix: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/235
2022-04-21 14:18:41 +02:00
- Update rootfs base of Linux, all related OBSW changes
2022-04-21 14:21:02 +02:00
- Add `/usr/local/bin` to PATH. All shell scripts are there now
2022-04-28 11:37:06 +02:00
- Add Syrlinks and TMP devices to Software by default
2022-05-03 11:33:07 +02:00
- Update GPS Linux Hyperion Handler to use socket interface. Still allows switching
back to SHM interface, but the SHM interface is a possible cause of SW crashes
2022-05-04 14:12:35 +02:00
- Updated code for changed FSFW HAL GPIO API: `readGpio` prototype has changed
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/240 and
https://egit.irs.uni-stuttgart.de/eive/fsfw/pulls/76
2022-04-21 14:18:41 +02:00
2022-05-03 12:51:34 +02:00
### GPS
PRs: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/239
- Rename GPS device to `/dev/gps0`
- Use gpsd version 3.17 now. Includes API changes
2022-05-03 12:48:30 +02:00
### EM and FM splitup & Build Workflow improvements
2022-05-03 12:51:34 +02:00
PR: https://egit.irs.uni-stuttgart.de/eive/eive-obsw/pulls/238
2022-05-03 12:48:30 +02:00
- Split up `bsp_q7s` in separate EM and FM build with module loading set to different
default values. The EM object factory is unique which allows building a parallel setup
with dummy components
- All major BSPs have an own `OBSWConfig.h.in` file which simplifies the file significantly
- Renamed Q7S primary build folders:
- `cmake-build-debug-q7s` for primary development build
- `cmake-build-release-q7s` for primary release build
- `cmake-build-debug-q7s-em` for primary development build of the EM software
- `cmake-build-release-q7s-em` for primary release build of the EM software
- Refactored Q7S helper script handling. It is now intended and preferred to copy the environment
script to the same folder level as the `eive-obsw` and source it. This will also
add the path containing the shell helper scripts to `PATH`
- The actual helper shell scripts were renamed as well to `q7s-<buildSystem>-<buildType>.sh`
2022-04-21 14:18:41 +02:00
2022-04-22 16:16:25 +02:00
# [v1.10.1]
Version bump
2022-04-21 14:18:41 +02:00
# [v1.10.0]
For all releases equal or prior to v1.10.0,
see [milestones](https://egit.irs.uni-stuttgart.de/eive/eive-obsw/milestones)