<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<?xml-model href="https://pds.nasa.gov/pds4/pds/v1/PDS4_PDS_1J00.sch" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<?xml-model href="https://pds.nasa.gov/pds4/mission/ody/v1/PDS4_ODY_1J00_1020.sch" schematypens="http://purl.oclc.org/dsdl/schematron"?>

<Product_Observational xmlns="http://pds.nasa.gov/pds4/pds/v1"
    xmlns:pds="http://pds.nasa.gov/pds4/pds/v1"
    xmlns:ody="http://pds.nasa.gov/pds4/mission/ody/v1"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://pds.nasa.gov/pds4/pds/v1  https://pds.nasa.gov/pds4/pds/v1/PDS4_PDS_1J00.xsd
    http://pds.nasa.gov/pds4/mission/ody/v1    https://pds.nasa.gov/pds4/mission/ody/v1/PDS4_ODY_1J00_1020.xsd
    ">
  <Identification_Area>
    <logical_identifier>urn:nasa:pds:odyssey_grs_edr:data_hk_raw:command_list_20040708</logical_identifier>
    <version_id>1.0</version_id>
    <title>Mars Odyssey GRS raw housekeeping product: command_list_20040708</title>
    <information_model_version>1.19.0.0</information_model_version>
    <product_class>Product_Observational</product_class>
    <Modification_History>
      <Modification_Detail>
        <modification_date>2026-07-01</modification_date>
        <version_id>1.0</version_id>
        <description>Migration to PDS4</description>
      </Modification_Detail>
    </Modification_History>
  </Identification_Area>
  <Observation_Area>
    <Time_Coordinates>
      <start_date_time>2004-07-08T00:00:03.000Z</start_date_time>
      <stop_date_time>2004-07-08T23:59:14.000Z</stop_date_time>
    </Time_Coordinates>
    <Investigation_Area>
      <name>MARS Odyssey</name>
      <type>Mission</type>
      <Internal_Reference>
        <lid_reference>urn:nasa:pds:context:investigation:mission.2001_mars_odyssey</lid_reference>
        <reference_type>data_to_investigation</reference_type>
      </Internal_Reference>
    </Investigation_Area>
    <Observing_System>
      <Observing_System_Component>
        <name>2001 MARS ODYSSEY</name>
        <type>Host</type>
        <Internal_Reference>
          <lid_reference>urn:nasa:pds:context:instrument_host:spacecraft.ody</lid_reference>
          <reference_type>is_instrument_host</reference_type>
        </Internal_Reference>
      </Observing_System_Component>
      <Observing_System_Component>
        <name>GRS</name>
        <type>Instrument</type>
        <Internal_Reference>
          <lid_reference>urn:nasa:pds:context:instrument:ody.grs</lid_reference>
          <reference_type>is_instrument</reference_type>
        </Internal_Reference>
      </Observing_System_Component>
    </Observing_System>
    <Target_Identification>
        <name>Mars</name>
        <type>Planet</type>
        <Internal_Reference>
            <lid_reference>urn:nasa:pds:context:target:planet.mars</lid_reference>
            <reference_type>data_to_target</reference_type>
        </Internal_Reference>
    </Target_Identification>
    <Mission_Area>
      <ody:ODY_Parameters>
        <ody:GRS_Observation_Information>
          <ody:release_number>0011</ody:release_number>
          <ody:product_type>COMMAND_LIST</ody:product_type>
          <ody:product_version_id>1.0</ody:product_version_id>
          <ody:mission_phase_name>MAPPING</ody:mission_phase_name>
          <ody:spacecraft_clock_start>198070318318</ody:spacecraft_clock_start>
          <ody:spacecraft_clock_stop>198092424211</ody:spacecraft_clock_stop>
        </ody:GRS_Observation_Information>
      </ody:ODY_Parameters>
    </Mission_Area>
  </Observation_Area>
  <File_Area_Observational>
    <File>
      <file_name>command_list_20040708.dat</file_name>
      <local_identifier>command_list_data_table</local_identifier>
      <creation_date_time>2005-02-21T23:35:42.875</creation_date_time>
    </File>
    <Table_Binary>
      <offset unit="byte">0</offset>
      <records>30902</records>
      <description>Commands that have been place on the FIS. Possible opcodes are as follows:

        1 SC_TIME_OPCODE spacecraft time command
        2 EQ_XING_ASC_OPCODE ascending equator crossing command
        3 ANNEAL_DOOR_OPCODE enable the anneal door to be moved
        4 HEND_POWER_OPCODE spacecraft hend power state command
        5 SHUTDOWN_OPCODE grs system is about to be shutdown
        6 IMED_SHUTDOWN_OPCODE grs system is going down immediatly
        7 ANNEAL_ENABLE_OPCODE enable anneal to happen
        10 GAMMA_CMD_OPCODE gamma command
        11 GAMMA_RESET_OPCODE issue reset to gamma board
        12 CHG_GPA_HTR_OPCODE turn on or off the gpa heater
        13 RAMP_GAMMA_OPCODE ramp gamma high voltage
        14 STOP_GAMMA_RAMP_OPCODE stop rampping gamma high voltage
        20 LANL_CMD_OPCODE lanl command
        21 LANL_PRISM_OPCODE lanl prisms
        22 LANL_ALL_PRISM_OPCODE resets all prisms
        23 LANL_MODE_OPCODE lanl modes
        24 LANL_HVPS_OPCODE lanl hi voltage
        25 LANL_HVPS_CNTL_OPCODE hi voltage control
        26 LANL_MUX_OPCODE set lanl mux
        27 LANL_SWAP_OPCODE lanl swap prompt/delay
        28 LANL_RUN_OPCODE lanl run command
        29 LANL_RESET_OPCODE issues a reset to lanl board
        35 HEND_CMD_OPCODE hend command
        36 CHG_HEND_STATUS_OPCODE changes the hend status lines
        45 CHG_MODE_OPCODE change grs operating mode
        46 CHG_ANALOG_OPCODE change and analog table entry
        47 CHG_PARAM_OPCODE change a parameters value
        48 RELOAD_TABLE_OPCODE reload a table from eeprom
        49 DOOR_PWR_CNTRL_OPCODE manually control door or latch powers
        50 ANNEAL_PWR_CNTRL_OPCODE manually control anneal heaters
        51 CAL_CURR_CNTRL_OPCODE change state of cal_curr bit in pcon reg
        52 OP_HTR_OPCODE change state of op_htr bit in pcon reg
        53 CEB_HTR_OPCODE change state of pwr_spare bit in pcon reg
        55 CHG_STATE_OPCODE change the power state
        56 CHG_SEQ_OPCODE change a command sequence
        57 EXEC_SEQ_OPCODE execute a command sequence
        58 CHG_INTERVAL_OPCODE change an instruments collection interval
        59 CHG_CLCT_OPCODE turn instrument data collect
        60 CHG_CEB_INT_OPCODE change a CEB timer interval
        61 CHG_TIMEOUT_OPCODE change the sc or hend recv timeout
        62 DELETE_SEQ_OPCODE deletes a sequence
        65 DELETE_ALL_OPCODE delete all delayed commands
        66 DELETE_ONE_OPCODE delete one delayed command
        67 DOOR_OPCODE move the anneal door
        69 RESET_OPCODE reset the flight software
        70 ANNEAL_OPCODE starts or stops the anneal process
        71 EEPROM_EN_DIS_OPCODE enable the changing of eeprom write state
        75 MEM_LOAD_OPCODE upload new code or data
        76 DUMP_PARAMS_OPCODE download the parameter table
        77 DUMP_ANALOG_OPCODE download the analog table
        78 DUMP_FPGA_REGS_OPCODE download the FPGA registers
        79 DUMP_DMA_REGS_OPCODE download the DMA registers
        80 MEM_DUMP_OPCODE download a portion of memory
        81 DUMP_SEQ_OPCODE download a sequence
        82 DUMP_COUNTS_OPCODE download the sent data counts
        83 FILE_MEMLOAD_OPCODE upload file, data padded to 1000 bytes
        85 SAVE_TO_EE_OPCODE save data to eeprom
        86 CHG_TRACE_OPCODE change the fsw debug level
        87 START_FSW_OPCODE start the fsw
        98 PASS_THRU_OPCODE future GRS command
        100 GET_VERSION_OPCODE returns the current version #
        101 WRITE_REG_OPCODE write a value to a register location
        102 SET_ORB_DURATION_OPCODE change the duration of the orbit
        103 TRIGGER_BURST_OPCODE trigger a manual burst
        104 NO_OP_OPCODE does nothing, generates message
        105 ERROR_OPCODE generates an error message
        106 GET_HEARTBEAT_CNT_OPCODE returns the number of heartbeats sent
      </description>
      <Record_Binary>
        <fields>13</fields>
        <groups>0</groups>
        <record_length unit="byte">77</record_length>
        <Field_Binary>
          <name>CMD_ID</name>
          <field_number>1</field_number>
          <field_location unit="byte">1</field_location>
          <data_type>UnsignedMSB2</data_type>
          <field_length unit="byte">2</field_length>
          <description>ID of the command that was sent to the FIS.</description>
        </Field_Binary>
        <Field_Binary>
          <name>OPCODE</name>
          <field_number>2</field_number>
          <field_location unit="byte">3</field_location>
          <data_type>UnsignedMSB2</data_type>
          <field_length unit="byte">2</field_length>
          <description>Opcode of the command. See Label for values.</description>
        </Field_Binary>
        <Field_Binary>
          <name>FIS_CMD_TYPE</name>
          <field_number>3</field_number>
          <field_location unit="byte">5</field_location>
          <data_type>SignedByte</data_type>
          <field_length unit="byte">1</field_length>
          <description>Flags whether command is interactive (1) or not (0).</description>
          <Special_Constants>
              <invalid_constant>-1</invalid_constant>
          </Special_Constants>
        </Field_Binary>
        <Field_Binary>
          <name>FIS_SEND_TIME</name>
          <field_number>4</field_number>
          <field_location unit="byte">6</field_location>
          <data_type>ASCII_String</data_type>
          <field_length unit="byte">23</field_length>
          <description>UTC time when the command was sent to the FIS, stored as yyyy-mm-ddThh:mm:ss.sss.</description>
        </Field_Binary>
        <Field_Binary>
          <name>SC_SENT_TIME</name>
          <field_number>5</field_number>
          <field_location unit="byte">29</field_location>
          <data_type>ASCII_String</data_type>
          <field_length unit="byte">23</field_length>
          <description>Approximate time command was sent to the spacecraft, stored as yyyy-mm-ddThh:mm:ss.sss.</description>
        </Field_Binary>
        <Field_Binary>
          <name>GRS_EXEC_TIME</name>
          <field_number>6</field_number>
          <field_location unit="byte">52</field_location>
          <data_type>UnsignedMSB8</data_type>
          <field_length unit="byte">8</field_length>
          <description>CEB time when command was executed.</description>
        </Field_Binary>
        <Field_Binary>
          <name>TIME_ORBIT</name>
          <field_number>7</field_number>
          <field_location unit="byte">60</field_location>
          <data_type>UnsignedMSB8</data_type>
          <field_length unit="byte">8</field_length>
          <description>The time or orbit/pixel at which the command should be executed. If TIME_ORBIT_FLAG is true, lowest two bytes contain the pixel, next two bytes contain the orbit. If TIME_ORBIT is zero, the command is to be executed immediately.</description>
        </Field_Binary>
        <Field_Binary>
          <name>TIME_ORBIT_FLAG</name>
          <field_number>8</field_number>
          <field_location unit="byte">68</field_location>
          <data_type>UnsignedByte</data_type>
          <field_length unit="byte">1</field_length>
          <description>True (1) if the command to be executed by orbit/pixel, false (0) if by time value.</description>
        </Field_Binary>
        <Field_Binary>
          <name>DELAY_FLAG</name>
          <field_number>9</field_number>
          <field_location unit="byte">69</field_location>
          <data_type>UnsignedByte</data_type>
          <field_length unit="byte">1</field_length>
          <description>If non-zero, this a delayed command, to be executed at the time or orbit value given in TIME_ORBIT.</description>
        </Field_Binary>
        <Field_Binary>
          <name>PARM1</name>
          <field_number>10</field_number>
          <field_location unit="byte">70</field_location>
          <data_type>SignedMSB2</data_type>
          <field_length unit="byte">2</field_length>
          <description>First command argument.</description>
        </Field_Binary>
        <Field_Binary>
          <name>PARM2</name>
          <field_number>11</field_number>
          <field_location unit="byte">72</field_location>
          <data_type>SignedMSB2</data_type>
          <field_length unit="byte">2</field_length>
          <description>Second command argument.</description>
        </Field_Binary>
        <Field_Binary>
          <name>PARM3</name>
          <field_number>12</field_number>
          <field_location unit="byte">74</field_location>
          <data_type>SignedMSB2</data_type>
          <field_length unit="byte">2</field_length>
          <description>Third command argument.</description>
        </Field_Binary>
        <Field_Binary>
          <name>EXEC_CODE</name>
          <field_number>13</field_number>
          <field_location unit="byte">76</field_location>
          <data_type>SignedMSB2</data_type>
          <field_length unit="byte">2</field_length>
          <description>Completion code for command. If the command executed with no errors this value will be zero otherwise it will the error message id (MSG_ID) of the last error that occurred.</description>
          <Special_Constants>
              <invalid_constant>-1</invalid_constant>
          </Special_Constants>
        </Field_Binary>
      </Record_Binary>
    </Table_Binary>
  </File_Area_Observational>
  <File_Area_Observational_Supplemental>
    <File>
      <file_name>command_list_20040708.lbl</file_name>
    </File>
    <Stream_Text>
      <offset unit="byte">0</offset>
      <parsing_standard_id>PDS3</parsing_standard_id>
      <description>PDS3 label</description>
      <record_delimiter>Carriage-Return Line-Feed</record_delimiter>
    </Stream_Text>
  </File_Area_Observational_Supplemental>
</Product_Observational>
