/  Yamcs 5 Release Notes  /  Changes in Yamcs 5.5

Changes in Yamcs 5.5

Changes in Yamcs 5.5.5 (Oct. 20, 2021)

  • yamcs-web: fixed display of command arguments in the command history

Changes in Yamcs 5.5.4 (Oct. 20, 2021)

  • Fixed the CLTU randomization sequence to conform to CCSDS 231.0 issue 4 when LDPC coding is enabled.

  • Accept numeric value of an enumeration command argument

  • Fixed lost frame count calculation

  • Allow DataSource=ground for parameters

  • Fixed CFDP reliable option not showing

  • Fixed duplicate data in the parameter archive

  • Allow specification of generation time in set parameter value requests

  • Allow configuring the number of threads serving HTTP requests

  • minor tweaks and fixes

Changes in Yamcs 5.5.3 (July 30, 2021)

  • first version of the Yamcs Timeline

  • various tweaks and fixes

Changes in Yamcs 5.5.2 (June 22, 2021)

  • Fixed XTCE reference solver of types para->Type->BaseType which were defined in reverse order in different files.

  • Fixed parameter archive retrieval of raw values only.

  • yamcs-web: fixed replication page not showing info.

Changes in Yamcs 5.5.1 (June 8, 2021)

  • Fixed (again) the name of the packets shown on yamcs-web front page (TM statistics)

  • Fixed an XTCE reference solving bug

  • Fixed the retrieval from parameter archive with the option useRawValue=true

Changes in Yamcs 5.5.0 (June 3, 2021)

  • Added algorithm status and tracing (currently only working for global algorithms)

  • Added support for XTCE transmission constraints and verifiers (using MatchCriteria, BooleanExpression…)

  • Added java-expression algorithms

  • Added types to system parameters

  • Fixed the realtime parameter archive - it can now be used as a preferred configuration for all systems receiving only realtime data (e.g. testing in an EGSE/Lab setup)

  • CCSDS Frame Processing: allow plugging user defined virtual channels handlers

  • Fixed the Parameter Archive to reconstruct aggregate and array parameters out of their components

  • minor tweaks and fixes

Changes in Yamcs 5.4

Changes in Yamcs 5.4.5 (April 5, 2021)

  • Fixed a bug causing the rejection of aggregates with enumeration members when used as command arguments

Changes in Yamcs 5.4.4 (April 2, 2021)

  • Fixed a bug in the TM partitioning flags causing the homepage of Yamcs to not display the packets beyond the top level.

  • Fixed a typo in reading the TCO configuration causing the defaultTof option to be ignored.

Changes in Yamcs 5.4.3 (March 16, 2021)

  • added some REST calls for getting more detailed information about parameter archive (can be used to investigate problems of missing data).

  • added possibility to trace algorithm executions.

  • minor tweaks and fixes

Changes in Yamcs 5.4.2 (March 9, 2021)

  • Fixed the container name used as partition in the tm table. XtceTmRecorder will only use as partition (pname column in the tm table) the containers directly inherited from the root container defined on the stream on which the TM packet is received. Previously, if a container included another container inside, this last one would have been used as partition and also appear as the name of the packet in the home page of yamcs-web.

  • Added a maxValues parameter to the parameter range request

  • Added an API for instance reconfiguration - the instances created from templates can now be updated following template changes, or with modified template variables.

  • Allow aggregate values (not only members) to be used in Java algorithms (not yet available in Python or Javascript algorithms - these have to make reference to aggregate members)

  • minor tweaks and fixes

Changes in Yamcs 5.4.1 (Feb. 17, 2021)

  • CFDP: allow to configure the inactivityTimeout

  • changed yamcs systemd script to not depend on bash being the system shell

  • add support for web response filtering

  • added a minRange option to the parameter range request allowing to limit the number of ranges returned. This is done by aggregating data into multi value range.

Changes in Yamcs 5.4.0 (Feb. 10, 2021)

  • Generalized file transfers: allow different than CFDP file transfer services to be implemented offering the same external API.

  • Added displayName/email attribute support to YamlAuthModule

  • Added queueing support to CFDP - files can be queued for later upload

  • Allow multi-purpose links (e.g. both TM and TC)

  • Added a perftest example useful to asses the performance of Yamcs

  • Added a bidirectional TCP TM/TC link

  • Save the link name in the tm table - this allows later to find out packets received via a certain link

  • The usage of time of flight estimatro (TOF) in the time correlation service (TOC) has been made optional (a config setting can be used to set the tof to a fixed value)

  • yamcs-web: show an view of the replication status

  • yamcs-web: moved the buckets out of the admin area

Changes in Yamcs 5.3

Changes in Yamcs 5.3.5 (Dec. 20, 2020)

  • Fixed a bug related to CFDP records storage in archive - the entity id was not saved for the incoming transfers causing a NPE when retrieving the list of transfers

  • Changed the incoming CFDP transfers to use the object name specified in the metadata rather than an artificially created name.

Changes in Yamcs 5.3.4 (Dec. 17, 2020)

  • Fixed a bug in replication introduced in version 5.3.2 when allowing tuples to contain null values.

  • Improved XTCE support for command verifiers, demonstrated with the PUS simulator.

Changes in Yamcs 5.3.3 (Dec. 14, 2020)

  • Added a simple PUS simulator to exemplify the usage of the time correlation (TCO) service with a free running on-board clock.

  • Save the OBT (value of the free running on-board clock) in the tm table.

  • TCP and UDP packet links populate the ERT (Earth Reception Time) field of the TM packets with the local mission time as this is required by the TCO service.

Changes in Yamcs 5.3.2 (Dec. 11, 2020)

  • Reorganized the service creation and initialization such that data links can have access to services before they are initialized. Otherwise for example if a pre-processor wanted to use a time correlation service, it was not possible to check that the service exists when the pre-processor was created.

  • CfsPacketPreprocessor can optionally use the time correlation service to verify the time extracted from the packet.

  • Removed the clock name from the time correlation service, use the serviceName instead.

Changes in Yamcs 5.3.1 (Dec. 8, 2020)

  • CFDP improvements:

    • allow multiple services and multiple local and remote entities per service

    • allow to define fault handlers (i.e. suspend a transaction in case of error so it can be resumed)

  • minor tweaks and fixes

Changes in Yamcs 5.3.0 (Nov. 25, 2020)

Version 5.3.0 released 25-Nov-2020

  • Added a bulk load option to be used by the command yamcs tables load. It does not update the histograms and also disables the RocksDB WAL (write ahead log) resulting in faster loads. the histograms have to be rebuilt manually after this.

  • Introduced a table format V3 which sorts properly the negative numbers and also the strings

    • most Yamcs tables use a timestamp as primary key and the timestamps before 1970 are represented as negative numbers and thus were not sorted properly

    • the old format V2 is still supported but new tables created with this Yamcs version will not be readable by a previous Yamcs vsersion.

  • Preview feature: secondary indices on tables; not used for regular Yamcs tables (tm, events, cmd_history, etc) but it will be used for the soon to come Yamcs timeline.

  • Preview feature: time correlation service; can be used to correlate a free running on-board clock with the ground time.

    • in case the on-board time is correlated using other means (e.g. on-board GPS receiver), the service can still be used for verifying the synchronization.

  • Yamcs-web:

    • show a preview of the evaluation of transmission constraints before sending a command

    • tables/streams are moved to admin section, and a web-based DB-shell is added

    • packets can now be individually exported or copied to clipboard

Changes in Yamcs 5.2

Changes in Yamcs 5.2.1 (Jan. 8, 2021)

YamlAuthModule: added a default role used when the user has no role assigned

Changes in Yamcs 5.2.0 (Oct. 13, 2020)

  • allow all TM data links to update a simulation time if configured

  • allow the XTCE loader to load multiple files using a glob pattern or a list

  • added support for absolute time command arguments

  • added more options for time decoding of Cfs and Pus packet preprocessors.

  • added support for command arguments of type aggregate

  • minor tweaks and fixes

Changes in Yamcs 5.1

Changes in Yamcs 5.1.4 (Nov. 12, 2020)

  • fix serialization of integers in table load (used when importing previously exported data with yamcs tables load command)

Changes in Yamcs 5.1.3 (Sept. 9, 2020)

  • minor tweaks and fixes

Changes in Yamcs 5.1.2 (Aug. 28, 2020)

  • add support for variables when creating instances from templates

  • Add RemoteUserAuthModule for proxied authentication (API only)

  • Fix retrieval of single packets

  • minor tweaks and fixes

Changes in Yamcs 5.1.1 (Aug. 2, 2020)

Fixed the GenericCommandPostprocessor to work with errorDetection: NONE (which is also the default if no errorDetection is specified)

Changes in Yamcs 5.1.0 (Aug. 2, 2020)

  • moved the simulator into its own package out of the examples (such that the examples are independent of eachother)

  • changed the errorCorrection into errorDetection for TC frames (for consistency with TM links and also to documentation)

  • added a parameter on CfsCommandPostprocessor to allow swaping between checksum and command code (necessary on little endian systems with older versions of cFS)

  • added the possibility to specify patterns for the TC streams to define which command goes into which stream (before the way to do this was using some sql statements)

  • various bugfixes

Changes in Yamcs 5.0

Changes in Yamcs 5.0.0 (July 3, 2020)

  • migrated the .def table definitions into the rocksdb. WARNING: the migration is automatic but once migrated the version 4 will not be able to read the data anymore! (the data in the database is not changed, if absolutely necessary we can make a version 4.10.x that can read it)

  • split Event and ParameterValue protobuf messages into internal and external. The internal messages use Yamcs timestamps whereas the external messages use protobuf timestamps.

  • changed the link configuration to be more consistent: removed the “args” parameter; all the properties should be moved one level up.

  • added a status bitfield on all packets where pre-processors can set specific flags such as: packet invalid local time used instead of spacecraft generation time extracted from packet do not archive

  • implemented a replication service

  • removed default yearly partitions for tm/pp data (can still be done by creating manually the tables)

  • added an option to send raw frame data over streams (such that they can be monitored externally or saved into tables)

  • CfsEventDecoder: added an option to specify byte endianess with default to big endian (used to be hardcoded to little endian) added also an option for the charset used to decode the text string, default to US-ASCII

  • removed yamcs-artemis (since it was used mainly for replication)

  • removed the IndexServer: The CCSDS completeness index functionality is provided now by the CcsdsTmIndex service. The histograms do not require definition of any extra service.

  • yamcs-xtce: all parameter and argument types need to be constructed through builders. all data encodings need to be constructed through builders. support the baseType XTCE property which allows a type to inherit properties from another type. AbsoluteTimeParameterType uses java Instant as initial value (rather than Yamcs times)

  • remove the yamcs-simulation rpm. Simulation is one of the examples along others.

  • updated RocksdDB to a newer version such that Yamcs can be run now on Windows 64bits and Linux ARM64 (e.g. Rasbperry Pi 4)