Index: firmware/App/Modes/ModeService.c =================================================================== diff -u -rf1cb4be5fb8201cec188589e683c8bf20d895ec0 -rd5f2ac4d84453feb1b782f35f9d69432977a95f6 --- firmware/App/Modes/ModeService.c (.../ModeService.c) (revision f1cb4be5fb8201cec188589e683c8bf20d895ec0) +++ firmware/App/Modes/ModeService.c (.../ModeService.c) (revision d5f2ac4d84453feb1b782f35f9d69432977a95f6) @@ -7,8 +7,8 @@ * * @file ModeService.c * -* @author (last) Dara Navaei -* @date (last) 24-Oct-2021 +* @author (last) Michael Garthwaite +* @date (last) 07-Sep-2022 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 @@ -17,6 +17,7 @@ #include "OperationModes.h" #include "ModeService.h" +#include "CPLD.h" /** * @addtogroup DGServiceMode @@ -52,8 +53,12 @@ *************************************************************************/ U32 transitionToServiceMode( void ) { - // TODO Deenergize all the actuators - return 0; + // Deenergize all the actuators + setCPLDCleanLEDColor( CPLD_CLEAN_LED_OFF ); + deenergizeActuators(); + initServiceMode(); + + return serviceState; } /*********************************************************************//** @@ -72,7 +77,7 @@ break; default: - // TODO - s/w fault + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, SW_FAULT_ID_SERVICE_MODE_INVALID_EXEC_STATE, serviceState ) serviceState = DG_SERVICE_STATE_START; break; }