EIR-OPS-006.8: EMOD Health Check


Objective

To assess the health of the EMOD payload following launch and reprogramming.


Introduction

This procedure will perform a health check on the EMOD payload by verifying some basic functionality performs as expected.


Procedure

This procedure contains the following sub-procedures:

Note

A communication pass is required for Sections B - D of this procedure.


A. Pre-pass Preparations

A.1.

  • Prior to the pass, if not already known, the Operators should consult with the Software Engineer to determine:

    • The flight-ready EMOD firmware version (needed for Step B.3),

    • The expected EMOD reset count (Step B.6),

    • The expected EMOD reset type (Step B.7), and

    • The POA if either the reset count and/or type are not as expected during the pass.



B. Configuration Checks

Important

You are about to send the first TC of this procedure - Have you completed the EIR-OPS-003: Start a Communication Pass procedure? A Communication Pass must be started prior to carrying out the operations planned for the pass. Don’t forget to open and set up the parameters/actions that will be used during the pass in MCS before the pass begins!

B.1.

  • To turn on EMOD, Invoke the action platform.EPS.TurnOnEMOD.

TC Details

MCS Operation

Invoke

Action/Param Name

platform.EPS.TurnOnEMOD

Data Expected with TC

No

TM Details

Data Expected from TC

No ( + ACK )


B.2.

  • To ensure the EMOD PDM (i.e PDM 10) is now on, Get the parameter platform.EPS.actualSwitchStates with First row = Last row = 9.

  • Ensure that PDM 10/row 9 = 1 (on).

TC Details

MCS Operation

Get

Action/Param Name

platform.EPS.actualSwitchStates

Data Expected with TC

Yes

Data Info

First row, Last row

Allowed Value(s)

0-9, 0-9

Expected Value(s)

9, 9

TM Details

Data Expected from TC

actualSwitchStates ( + ACK )

Data Size

Boolean

Data Info

SwitchState = 0 (Off), SwitchState=1 (On)

Allowed Value(s)

0-1

Expected Value(s)

1


B.3.

  • To further ensure EMOD is now on, Get the parameter payload.EMOD.FirmwareVersion.

  • Confirm that the returned value is as expected given the firmware version programmed onto the MSP in the previous procedure.

TC Details

MCS Operation

Get

Action/Param Name

payload.EMOD.FirmwareVersion

Data Expected with TC

No

TM Details

Data Expected from TC

FirmwareVersion ( + ACK )

Data Size

3 bytes

Data Info

EMOD firmware version

Allowed Value(s)

000000-FFFFFF (hex)

Expected Value(s)

Firmware version programmed onto MSP in the previous procedure


B.4.

  • To check the current status of the EMOD firmware, Get the parameter payload.EMOD.Status.

  • If the TM returned is 01 (i.e. Idle), proceed to the next step.

  • Else, consult with the Software Engineer.

TC Details

MCS Operation

Get

Action/Param Name

payload.EMOD.Status

Data Expected with TC

No

TM Details

Data Expected from TC

Status ( + ACK )

Data Size

uint8

Data Info

Status of the EMOD firmware

Allowed Value(s)

See table below

Expected Value(s)

01

Where…

EMODStatus

Status

00

Undefined

01

Idle

02

Busy

80

Payload Error

81

Invalid Command

82

I2C Low Timeout


B.5.

  • To ensure EMOD is in the expected mode, Get the parameter payload.EMOD.EMODMode.

  • Ensure 0 (i.e. Idle Mode) is returned.

TC Details

MCS Operation

Get

Action/Param Name

payload.EMOD.EMODMode

Data Expected with TC

No

TM Details

Data Expected from TC

EMODMode ( + ACK )

Data Size

uint2

Data Info

Mode of EMOD

Allowed Value(s)

00, 01

Expected Value(s)

00

Where…

EMODMode

Mode

00

Idle

01

Experiment Running


B.6.

  • Get the parameter payload.EMOD.ResetCounter to determine the number of times the EMOD payload has reset since reprogramming.

TC Details

MCS Operation

Get

Action/Param Name

payload.EMOD.ResetCounter

Data Expected with TC

No

TM Details

Data Expected from TC

ResetCounter ( + ACK )

Data Size

uint8

Data Info

Number of times EMOD MSP has reset since last programmed

Allowed Value(s)

0-127

Expected Value(s)

Expected reset count from Section A


B.7.

  • Get the parameter payload.EMOD.LastResetType to determine the type of EMOD reset(s) that have occurred.

TC Details

MCS Operation

Get

Action/Param Name

payload.EMOD.LastResetType

Data Expected with TC

No

TM Details

Data Expected from TC

LastResetType ( + ACK )

Data Size

1 byte

Data Info

Last EMOD reset type

Allowed Value(s)

02, 06, 14, 16

Expected Value(s)

Expected reset type from Section A

Where…

LastResetType (hex)

Reset Type

02

Brownout

06 or 14

SW reboot

16

Watchdog reset



C. RTD Temperature Checks

C.1.

  • To poll the four RTDs, Invoke the action payload.EMOD.ReadRTDs with action argument = 0x0F (hex).

TC Details

MCS Operation

Invoke

Action/Param Name

payload.EMOD.ReadRTDs

Data Expected with TC

Yes

Allowed Value(s)

0x00 - 0x0F

Expected Value(s)

0x0F

TM Details

Data Expected from TC

No ( + ACK )


C.2.

  • Get the parameter payload.EMOD.CmdBuffer.

  • Ensure the RTD values in the returned buffer are all as expected (e.g. ensure that all 4 RTDs are returning similar resistance values).

Tip

Operators do not need to parse this TM during the pass - this can be done after the pass! Operators should proceed to the next steps of this procedure regardless of the TM returned in this step.

TC Details

MCS Operation

Get

Action/Param Name

payload.EMOD.CmdBuffer

Data Expected with TC

No

TM Details

Data Expected from TC

CmdBuffer ( + ACK )

Data Size

10 bytes

Data Info

The contents of CmdBuffer

Where…

Byte

Data

0/MSB

ID of the command that filled the buffer

1

Number (N) of bytes actually used in the buffer

2 - 9/LSB

(N-2) data bytes

Tip

For this command, N = 10, and bytes 2-9 of the CmdBuffer parameter are 4 2-byte RTD readings.



D. Turn Off EMOD

D.1.

  • Turn off EMOD using the action platform.EPS.turnOffEMOD.

TC Details

MCS Operation

Invoke

Action/Param Name

platform.EPS.turnOffEMOD

Data Expected with TC

No

TM Details

Data Expected from TC

No ( + ACK )


D.2.

  • To ensure the EMOD PDM (i.e PDM 10) is now off, Get the parameter platform.EPS.actualSwitchStates with First row = Last row = 9.

  • Ensure that PDM 10/row 9 = 0 (off).

TC Details

MCS Operation

Get

Action/Param Name

platform.EPS.actualSwitchStates

Data Expected with TC

Yes

Data Info

First row, Last row

Allowed Value(s)

0-9, 0-9

Expected Value(s)

9, 9

TM Details

Data Expected from TC

actualSwitchStates ( + ACK )

Data Size

Boolean

Data Info

SwitchState = 0 (Off), SwitchState=1 (On)

Allowed Value(s)

0-1

Expected Value(s)

0


D.3.

  • The EMOD health check has been completed.

  • The Operator should now proceed with one of the sub-procedures listed in EIR-OPS-006: Commissioning that is yet to be completed.

Note

The sub-procedures listed in EIR-OPS-006: Commissioning do not necessarily need to be carried out in the order given. However, procedures ending in ‘Operation’ should only be completed after the relevant ‘Health Check’ procedure for that subsystem has been performed. The ‘EMOD Reprogramming’ procedure must also be performed prior to any EMOD activities. Lastly, ideally, payload operations should be the last item to consider in the commissioning of the spacecraft.


END OF PROCEDURE