openc3-cosmos-init/plugins/packages/openc3-cosmos-demo/targets/INST/cmd_tlm/inst_cmds.txt
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"