Kubos Changelog¶
v1.21.0 - Apr 2 2020¶
Added basic instructions on how to cross-compile for targets which are not fully supported by Rust
Improved first-time user instructions
Bug Fixes¶
Fixed scheduler service’s wait time after requesting an app be started
Corrected Rust-based example mission app behavior when run locally
v1.20.0 - Nov 22 2019¶
Upgraded Rust usage to v1.39.0
Community Contributions¶
Miscellaneous tutorial fixes
Bug Fixes¶
v1.19.0 - Oct 30 2019¶
- Added Scheduler Service
note: The scheduler service is currently not included in Kubos Linux builds for the iOBC.
Updated kubos-shell-client to allow single command execution
Updated default
config.toml
location from/home/system/etc/config.toml
to/etc/kubos-config.toml
Removed run levels from apps and the associated app arg
Changed app service uninstall logic to nicely kill a running app first
Added
--stdout
flag to services for easy output on stdoutStandardized the default service storage location in
tools/local_config.toml
for easier local developmentMiscellaneous doc improvements
Bug Fixes:¶
Fixed crashing file service & client with bad defaults
Fixed communications issue in ISIS Antenna Service
v1.18.0 - Sept 12 2019¶
Added ability to do bulk telemetry database inserts asychronously
Updated Docker and Vagrant configurations to use Python3.7
Upgraded Rust usage to v1.37.0
Miscellanous doc improvements
v1.17.0 - Aug 15 2019¶
Updated the file transfer service to allow the downlink destination to be configurable
Changed service configuration behavior to fail when config values cannot be read, rather than taking default values
Documented UDP passthrough behavior for the comms service framework
Documented arg passthrough behavior in the app development guide
Tweaked how C-based libraries are included in our Rust workspace to improve the ability to use KubOS software in a local development environment
Updated all Python packages to contain accurate requirements.txt files
Updated all packages and libraries to contain Readme files
Upgraded Rust usage to v1.36.0
Upgraded base CI Docker image to Ubuntu 18.04
Migrated all remaining tooling to Python3
Bug Fixes:¶
Miscellaneous fixes to support building and running KubOS from a MacOS development environment
v1.16.0 - Jul 10 2019¶
The Great Docs Re-Org of 2019
Added instructions for setting up a development environment without using the SDK
Added instructions for running KubOS core services within a local development environment
Reworked tutorials for local execution
Re-organized most docs in order to create a more accessible and intuitive user experience
Updated the comms service framework to use SpacketPacket instead of UDP
Added UDP passthrough to the comms service framework for non-GraphQL messages
Added ability to perform bulk inserts with the telemetry database service
Improved size optimization for Rust executables when doing release builds
Bug Fixes:¶
Fixed ability to pass a custom config file to Rust applications
Fixed assorted timing issues with CI tests
v1.15.0 - May 23 2019¶
Added a comms service implementation for the NSL EyeStar-D2 Duplex radio
Updated comms service framework to use Space Packet Protocol
Added ‘ping’ query to all Kubos services
Added ability to query multiple telemetry fields in one request
Updated docs to reflect use of latest Buildroot LTS release, 2019.02.2
Expanded application unit tests
Added inter-service integration tests
Bug Fixes:¶
Cleaning up orphaned files after app uninstall
Changing current working directory to an app’s registered directory before starting it
v1.14.0 - Apr 3 2019¶
Added logic to the applications service to check if an app immediately fails after being started
Removed UUIDs from the applications service. Apps will now be referenced by name
Updated app registration process to clean up all files if registration fails
Added ability to manually set the active version of an application
Added parameter to Rust app API to allow minimum logging level to be controlled
Added parameter to Python app API to allow minimum logging level to be controlled
Updated comms service framework to translate between UDP and HTTP
Added comms service framework unit tests
Updated the Pumpkin supMCU API to match v4.22 of the firmware manual
Added GraphQL service for the Clyde Space 3rd generation EPS
Improved logging for all Kubos services
Bug Fixes:¶
Updated the comms service framework to correctly validate that a write function is present
Updated the apps service to remove the parent directory if the last version of an app is uninstalled
Updated app registration process to ensure current active version remains active if new registration fails
Fixed Rust app API to use project name for logging
Migrated the Kubos contributor’s agreement to https://cla-assistant.io/kubos/kubos
v1.13.0 - Feb 15 2019¶
Removed all yotta usage. C-based projects are now compiled using CMake
Pinning Rust version at v1.32.0 to prevent accidental version discrepancies
v1.12.0 - Feb 1 2019¶
Updated all Python code to be compatible with Python3.5
Removed CSP from the code base
Removed remaining usage of yotta configuration constants
v1.11.0 - Jan 18 2019¶
Updated all Rust modules to use Rust 2018
Community Contributions:¶
v1.10.0 - Dec 20th 2018¶
v1.9.0 - Dec 6th 2018¶
Updated all Kubos services to use new logging
Updated the applications service to allow more than two files to be present in the directory used to register an application
Bug Fixes:¶
File transfer client now returns error when it fails to communicate with the file service
Updated all Kubos services’ GraphQL responses to follow the official response spec
v1.8.0 - Nov 9th 2018¶
The shell service and client have both been rewritten into Rust
Updated the applications service’s schema to match the styling of the other services
Added cleanup logic when the app service encounters a corrupted app entry
Added the ability to upgrade an application with the applications service
Bug Fixes:¶
Updating telemetry database API to use a double to store the timestamp, rather than a 32-bit integer
Community Contributions:¶
Updated link descriptions for Kubos Linux release files
v1.7.0 - Oct 12th 2018¶
Added tutorials to help new users write their first mission application
Added tutorials to help new users interact with the telemetry database and file transfer services
Bug Fixes:¶
Updated the Python app API to accept an empty string in the ‘errors’ field of GraphQL responses
Updated the file transfer service to not exit if an invalid data packet is received
Updated the file transfer service’s log location
v1.6.0 - Sept 28th 2018¶
Added corrupted chunk and file hash mismatch error handling to the file transfer service
Improved file transfer service multi-client handling
Added timeout and chunk-size configuration options to the file transfer service
Updated the telemetry database service to allow query results to be written to an output file
Added insert and delete capabilities to the telemetry database service
Increased telemetry database timestamp key resolution from seconds to milliseconds
Updated applications service to add ability to passthrough arguments to the application being called
Bug Fixes:¶
v1.5.0 - Sep 7th 2018¶
Added a community Trello board for contributors and KubOS team members
The file transfer service and client have both been rewritten into Rust
Added documentation for how to handle the deployment hold time countdown
Updated the app APIs to commonize behaviour between the Python and Rust versions
Added a verbose example mission application in Python for mission design
Bug Fixes:¶
Standardized usage of the Rust failure crate for version 0.1.2
v1.4.0 - July 23 2018¶
Updated Pumpkin MCU service to be compliant with the latest ICD
Upgraded CircleCI automation config to use the 2.0 configuration format
Updated docs to reflect changes in how auxiliary SD images are generated
v1.3.0 - Jun 21 2018¶
Added Rust API and UDP/GraphQL service for NovAtel OEM6 High Precision GNSS Receiver
Added Rust API and UDP/GraphQL service for Adcole Maryland Aerospace MAI-400 ADACS
Added Rust helper crate for use when creating Kubos services
Upgraded Kubos SDK Vagrant and Docker images to use Rust 1.26
Added documentation for using ethernet as primary board-communication method
Improved documentation about using Python and Rust for development with KubOS
Bug Fixes:¶
Community Contributions:¶
v1.2.0 - Mar 5 2018¶
Migrating
cargo-kubos
into own repoCleaning up doc generation warnings
Finalizing name changes
v1.1.0 - Jan 24 2018¶
Decided on using GraphQL, Rust, and Python for services and applications
Upgraded to BuildRoot LTS 2017.2.8
Refactored the repo to remove deprecated code
Re-organized the docs to have a more nested structure
v1.0.1 - Aug 4 2017¶
Adding support for Beaglebone Black
Adding support for Pumpkin MBM2
Adding Windows Dev Environment guide
v1.0.0 - June 27 2017¶
KUBOS-442 Added support for iOBC I2C bus
KUBOS-445 Integrated iOBC supervisor
KUBOS-274 Completed Kubos Telemetry integration into KubOS Linux
KUBOS-487 Added support for tab-completion to Kubos CLI
Migrated from Markdown to ReStructuredText as the documentation language of choice
Migrated from only Doxygen to Sphinx and Doxygen as the documentation generation tools of choice
Massively improved documentation basically everywhere
Polished everything to a shiny gleam
v0.2.2 - April 7 2017¶
KUBOS-350 Added multi-process communication support to telemetry library
KUBOS-283 Created a background telemetry management service
KUBOS-391 Created a background C&C service
KUBOS-409 Added logging to C&C
KUBOS-376 Added C&C ‘build info’ command
KUBOS-372 Added C&C ‘reboot’ command
KUBOS-338 Added KubOS Linux kernel rollback and recovery
KUBOS-340 Added init script generation and flashing for KubOS Linux projects
v0.2.1 - Mar 7 2017¶
KUBOS-388 Created initial Command & Control framework
KUBOS-350 Added support for inter-process communication between Kubos services
KUBOS-313 Updated Kubos SDK to allow flashing of non-application files to iOBC
KUBOS-321 Added ability to flash and install new KubOS Linux upgrade packages
KUBOS-360 Added Kubos CLI integration testing
KUBOS-363 Fixed Kubos CLI error reporting
v0.2 - Feb 3 2017¶
Created KubOS Linux
Major documentation updates
KUBOS-170 Created Kubos CLI as primary Kubos SDK command tool
KUBOS-175 Migrated from Docker to Vagrant for the Kubos SDK distribution system
KUBOS-329 Added KubOS Linux support to Kubos SDK
KUBOS-361 Added ability to use branched versions of Kubos code to Kubos CLI
KUOBS-267 Added telemetry service libraries for both KubOS RT and KubOS Linux
KUBOS-213 Added telemetry aggregation service libraries
KUBOS-201 Added inter-subsystem communication libraries
v0.1.4 - Oct 14 2016¶
KUBOS-81 Implemented FatFs SPI SD support (Current MSP430 only)
v0.1.3 - Sep 16 2016¶
v0.1.1 - Sep 2 2016¶
Documentation updates
Added basic unit testing for Kubos-HAL, Kubos-HAL-STM32F4 and Kubos-SDK
Miscellaneous bug fixes
v0.1.0 - Aug 19 2016¶
Implemented SPI for the STM32F4.
Added a new sensor interface:
Added the ability to link in local targets with KubOS-SDK
v0.0.5 - Aug 05 2016¶
Added a SPI HAL API for MSP430 based targets (STM32F4 compatibility coming soon)
Added a SDIO HAL API for STM32F4 based targets
Added filesystem support for FatFs based SD Cards, using SDIO (STM32F4 only)
Added drivers for three sensors:
Added support for CSP over the Kubos-HAL UART interface
A new SPI example application using the driver for the BME280 sensor
v0.0.4 - Jul 01 2016¶
Added a new I2C HAL API for both STM32F4 and MSP430 based targets (master mode only, slave coming soon)
Simplified hardware debugging with GDB using the new
kubos debug
andkubos server
commandsA new I2C example application with a WIP driver for the H2U1D temperature sensor
v0.0.3 - Jun 17 2016¶
Added support for NanoAvionics SatBus 3C0 OBC
Implemented link support in KubOS-SDK for local development modules
New KubOS-SDK projects are now based off our latest kubos-rt-example source
v0.0.2 - Jun 03 2016¶
Added support for STM32F405RG based PyBoard
Improved support for yotta commands in KubOS-SDK
Improved error handling in KubOS-SDK