OpenC3/cosmos

View on GitHub
openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/targets/INST/cmd_tlm/inst_cmds.txt

Summary

Maintainability
Test Coverage
COMMAND <%= target_name %> COLLECT BIG_ENDIAN "Starts a collect on the <%= target_name %> target"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 1} %>
  PARAMETER    TYPE           64  16  UINT MIN MAX 0 "Collect type which can be normal or special. Note the special collects are hazarous and require user confirmation."
    REQUIRED
    STATE NORMAL  0
    STATE SPECIAL 1 HAZARDOUS
  PARAMETER    DURATION       80  32  FLOAT 0.0 10.0 1.0 "Collect duration"
  PARAMETER    OPCODE        112   8  UINT 0x0 0xFF 0xAB "Collect opcode"
    FORMAT_STRING "0x%0X"
  PARAMETER    TEMP          120  32  FLOAT 0.0 25.0 0.0 "Collect temperature"
    UNITS Celsius C
  RELATED_ITEM <%= target_name %> HEALTH_STATUS COLLECTS
  RELATED_ITEM <%= target_name %> HEALTH_STATUS DURATION
  RELATED_ITEM <%= target_name %> HEALTH_STATUS COLLECT_TYPE

COMMAND <%= target_name %> ABORT BIG_ENDIAN "Aborts a collect on the <%= target_name %> instrument"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 2} %>

COMMAND <%= target_name %> CLEAR BIG_ENDIAN "Clears counters on the <%= target_name %> instrument"
  VALIDATOR inst_cmd_validator.rb
  HAZARDOUS "Clearing counters may lose valuable information."
  <%= render "_ccsds_cmd.txt", locals: {id: 3} %>
  RELATED_ITEM <%= target_name %> HEALTH_STATUS COLLECTS

COMMAND <%= target_name %> SETPARAMS BIG_ENDIAN "Sets numbered parameters"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 4} %>
  # ERB syntax:
  <% (1..5).each do |i| %>
    # The packet is BIG_ENDIAN (CCSDS) but these fields are LITTLE_ENDIAN
    APPEND_PARAMETER VALUE<%= i %> 16 UINT 0 5 1 "Value <%= i %> setting" LITTLE_ENDIAN
    RELATED_ITEM <%= target_name %> PARAMS VALUE<%= i %>
  <% end %>
  SCREEN <%= target_name %> PARAMS

  SELECT_PARAMETER VALUE5
    POLY_WRITE_CONVERSION 0 2

COMMAND <%= target_name %> ASCIICMD BIG_ENDIAN "Enumerated ASCII command"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 5} %>
  APPEND_PARAMETER STRING 2048 STRING "NOOP" "Enumerated string parameter"
    STATE "ARM LASER" "ARM LASER" HAZARDOUS "Arming the laser poses an eye safety hazard."
    STATE "FIRE LASER" "FIRE LASER" HAZARDOUS "WARNING Laser will be fired!"
    STATE "NOOP" "NOOP" DISABLE_MESSAGES
  APPEND_PARAMETER BINARY 32 BLOCK 0xDEADBEEF "Binary string"
  APPEND_PARAMETER ASCII 80 STRING "0xDEADBEEF" "ASCII string"
  RELATED_ITEM <%= target_name %> HEALTH_STATUS ASCIICMD

COMMAND <%= target_name %> FLTCMD BIG_ENDIAN "Command with float parameters"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 6} %>
  PARAMETER    FLOAT32        64  32  FLOAT MIN MAX 0.0 "Float32 parameter"
  PARAMETER    FLOAT64        96  64  FLOAT MIN MAX 0.0 "Float64 parameter"

COMMAND <%= target_name %> ARYCMD BIG_ENDIAN "Command with array parameter"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 7} %>
  ARRAY_PARAMETER ARRAY       64  32  UINT -8 "Array parameter"
  PARAMETER    CRC            -8   8  UINT MIN MAX 0 "CRC"

COMMAND <%= target_name %> SLRPNLDEPLOY BIG_ENDIAN "Deploy solar array panels"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 8} %>
  RELATED_ITEM <%= target_name %> MECH SLRPNL1
  RELATED_ITEM <%= target_name %> MECH SLRPNL2
  RELATED_ITEM <%= target_name %> MECH SLRPNL3
  RELATED_ITEM <%= target_name %> MECH SLRPNL4
  RELATED_ITEM <%= target_name %> MECH SLRPNL5

COMMAND <%= target_name %> SLRPNLRESET BIG_ENDIAN "Reset solar array panels"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 9} %>
  RELATED_ITEM <%= target_name %> MECH SLRPNL1
  RELATED_ITEM <%= target_name %> MECH SLRPNL2
  RELATED_ITEM <%= target_name %> MECH SLRPNL3
  RELATED_ITEM <%= target_name %> MECH SLRPNL4
  RELATED_ITEM <%= target_name %> MECH SLRPNL5

COMMAND <%= target_name %> MEMLOAD BIG_ENDIAN "Load memory"
  VALIDATOR inst_cmd_validator.rb
  DISABLE_MESSAGES # Disable messages on a command that could be sent many many times
  <%= render "_ccsds_cmd.txt", locals: {id: 10} %>
  APPEND_PARAMETER DATA 80 BLOCK "" "Block of data"
  RELATED_ITEM <%= target_name %> HEALTH_STATUS BLOCKTEST

COMMAND <%= target_name %> QUIET BIG_ENDIAN "Enable/disable no out of limits in the demo"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 11} %>
  APPEND_PARAMETER STATE 8 UINT 0 1 1
    STATE FALSE 0
    STATE TRUE 1

COMMAND <%= target_name %> TIME_OFFSET BIG_ENDIAN "Subtract the packet time by the given seconds"
  VALIDATOR inst_cmd_validator.rb
  <%= render "_ccsds_cmd.txt", locals: {id: 12} %>
  APPEND_PARAMETER SECONDS 32 UINT MIN MAX 0 "Seconds to subtract from packet time"

COMMAND <%= target_name %> HIDDEN BIG_ENDIAN "Hidden command to bump the hidden packet"
  VALIDATOR inst_cmd_validator.rb
  HIDDEN
  <%= render "_ccsds_cmd.txt", locals: {id: 13} %>
  APPEND_PARAMETER COUNT 32 UINT MIN MAX 0 "Count to set"