OpenSatKit core Flight System (cFS) starter kit

2.7 Release

Version 2.7 continues to mature OSK along the following main tracks:

  1. Community App Demos and Videos
    • Added a YouTube video for the Housekeeping App and added a demo_hk_feature .rb script to the SimSat target procedures.
    • Presented at the FSW Workshop hosted by Johns Hopkins APL who did a fantastic job. The website provides access to the presentation slides and will eventually contain the videos.
  2. Containerized Kit
    • This is a new track that has emerged due to interest in using the OSK as an operational system that can be used as a telemetry source for advanced telemetry processing research efforts or interactively by people interested in learning about spacecraft systems in general.
    • A prototype MQTT library and app were added to explore commanding the cFS via an MQTT broker and a ‘hello world’ message was successfully sent. MQTT is a lightweight transport protocol used in the ‘internet of things.’ Thanks to Alan Cudmore for his MQTT Library and MQTT App.
  3. App Packaging and Distribution
    • Refactored Alan’s MQTT app to use the OSK C framework library and it provided a second opportunity(since FM refactor) to use and generalize the JSON app init table and the childmgr utility. Both utilities have been moved to the OSK C framework osk_c_fw. I also renamed the existing app framework utility faultrep to staterep since it reports binary states that don’t necessarily represent faults. Existing apps that use osk_c_fw have not been updated to use the ini files.
    • In v2.6 the CCSDS File Delivery Protocol app CF was added to the default startup script because CF is used in some demos. This has caused some confusion because during startup CF issues an event message stating ‘SemGetId Err:Chan 0 downlink PDUs cannot be throttled.0xFFFFFFEF’. CF can share a semaphore with an app(typically telemetry output) that is receiving its Protocol Data Units (PDUs) to manage the PDU flow rate to that app. KIT_TO does not implement this feature so the error is expected. In order to manage the PDU flow I have tweaked the CFDP COSMOS engine to implement a PDU input queue from KIT_TO and I have not seen overflow issues but I have not stressed the interface.
    • I added the Health & Safety app (HS) back to the default app startup script. You will now see periods output in the cFS terminal window. The HS CPU utilization custom function has not been fixed.
  4. Verification and Ops Scripts
    • Nothing noteworthy in this build.

OSK roadmap...

The main themes moving forward are to continue to improve the cFS training material in conjunction with creating YouTube training videos, to incrementally refactor the architecture to support plug 'n play apps and to improve system level features with 42 and low-cost hardware targets.
  • File-Data Management App Group: Create YouTube videos for Data Storage and the file transfer apps (TFTP and CFDP).
  • Continue advancing the containerized kit concepts.
  • Plug n Play Apps: Investigate existing software packaging standards/tools and analyze the benefits of the OSK app framework especially the app JSON init configuration files (runtime vs compile-time configuration) in the context of app packaging/distribution needs. Prototype an application package design & workflow.
  • System: Create continuous unit test integration framework after cFS 7.0 (Caelum) release; enhance the features of the Develop Apps tab.
  • Create cFS Raspberry Pi package that can easily be installed on the Pi and communicate over WiFi with OSK.

See also the OSK GitHub Wiki and the Installation Instructions.