eive-obsw/CHANGELOG.md

9.8 KiB

Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

The milestone list yields a list of all related PRs for each release.

[unreleased]

Fixed

  • PLOC SUPV: Minor adaptions and important bugfix for UART manager

Added

  • First version of ACS controller PR: #329
  • Allow commanding the 5V stack internally in software PR: #334
  • Add automatic 5V stack commanding for all connected devices PR: #335

[v1.18.0] 01.12.2022

Changed

  • PLOC Supervisor: Changes baudrate to 921600
  • 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. PR: #328

[v1.17.0] 28.11.2022

Added

  • PLOC Supervisor Update: Update SW to use newest PLOC SUPV version by TAS PR 1: #316 PR 2: #324 PR 3: #326

[v1.16.0] 18.11.2022

  • It is now possible to compile Linux components for the hosted build conditionally PR: #322
  • ACS Subsystem. PR: #231
  • Payload Subsystem. PR: #231
  • Add IRQ mode for PDEC handler. PR: #310
  • Extended TM funnels to allow multiple TM recipients. PR: #312
  • DHB: Transitions to normal mode now possible directly, which simplifies subsystem implementations PR: #313
  • MAX3185 Low Level Handler and Device Handler: Simplifications and bugfixes to allow switching off without triggering unrequested replies PR: #313
  • Add remaining missing TMP1075 device handlers. PR: #318

[v1.15.0] 27.10.2022

  • Consistent device file naming
  • 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 PR: #307
  • Safety mechanism for SD card handling on graceful reboots PR: #308
  • Solar Array Deployment handler update PR: #305
  • IMTQ updates as preparation for ACS controller expansion PR: #306
  • P60 Module: Reduce number of set IDs, use same set IDs for core, auxiliary and config HK set across the three PCDU modules

[v1.14.1] 11.10.2022

  • 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

[v1.14.0] 10.10.2022

  • 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: #302
  • Update for FSFW: HasReturnvaluesIF class replaced by namespace returnvalue
  • 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: #287
  • Add API to save and load GomSpace config tables PR: #293
  • Increase number of allowed consescutive action commands from 3 to 16 PR: #294
  • Fix for EM SW: Always create ACS Task
  • Added Scex device handler and Scex uart reader PR: #303
  • ACS Subsystem. PR: #228

[v1.13.0] 24.08.2022

  • Added first version of ACS Controller with gathers MGM data in a set
  • Some tweaks for IMTQ handler

[v1.12.1] 05.07.2022

  • Disable periodic TCS controller HK generation by default

[v1.12.0] 04.07.2022

Added

  • Dummy components to run OBSW without relying on external hardware PR: #266
  • Basic Thermal Controller PR: #266
  • PUS11 TC scheduler PR: #259
  • Regular reboot command PR: #242
  • Commands for individual RTD devices PR: eive/eive-tmtc#84
  • RwAssembly added to system components. Assembly works in principle, issues making 4 consecutives RWs communicate at once.. PR: #224
  • 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: #248
  • 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: #248

Fixed

  • q7s-cp.py bugfix PR: #256
  • Generator scripts output now produce platform-independent artifacts PR: #267

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: #236

Changed

  • CCSDS handler improvements PR: #268
  • Build unittest as default side product of hosted builds PR: #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: #247
  • Sun Sensors have names denoting their location and poiting in the satellite now PR: #245
  • Better RTD names denoting their purpose (and location consequently) PR: #246

[v1.11.0]

Fixed

  • Host build working again

Added

  • Custom Syrlinks FDIR which disabled most of the default FDIR functionality PR: #232
  • Custom Gomspace FDIR which disabled most of the default FDIR functionality
  • Custom Syrlinks FDIR which disabled most of the default FDIR functionality

Changed

  • PCDU handler only called once in PST, but can handle multiple messages now PR: #221 Bugfix: #235
  • Update rootfs base of Linux, all related OBSW changes
  • Add /usr/local/bin to PATH. All shell scripts are there now
  • Add Syrlinks and TMP devices to Software by default
  • 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
  • Updated code for changed FSFW HAL GPIO API: readGpio prototype has changed PR: #240 and eive/fsfw#76

GPS

PRs: #239

  • Rename GPS device to /dev/gps0
  • Use gpsd version 3.17 now. Includes API changes

EM and FM splitup & Build Workflow improvements

PR: #238

  • 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

[v1.10.1]

Version bump

[v1.10.0]

For all releases equal or prior to v1.10.0, see milestones