Index: firmware/App/Modes/ModeService.c =================================================================== diff -u -r025612ad77fe630889a364586de54bffe5262d56 -rca42d4bb2bde856750630050d393d6ae26a4e957 --- firmware/App/Modes/ModeService.c (.../ModeService.c) (revision 025612ad77fe630889a364586de54bffe5262d56) +++ firmware/App/Modes/ModeService.c (.../ModeService.c) (revision ca42d4bb2bde856750630050d393d6ae26a4e957) @@ -52,7 +52,12 @@ *************************************************************************/ U32 transitionToServiceMode( void ) { - return 0; + deenergizeActuators(); + + initServiceMode(); + + return serviceState; + } /*********************************************************************//** @@ -71,7 +76,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; } Index: firmware/App/Modes/ModeService.h =================================================================== diff -u -r025612ad77fe630889a364586de54bffe5262d56 -rca42d4bb2bde856750630050d393d6ae26a4e957 --- firmware/App/Modes/ModeService.h (.../ModeService.h) (revision 025612ad77fe630889a364586de54bffe5262d56) +++ firmware/App/Modes/ModeService.h (.../ModeService.h) (revision ca42d4bb2bde856750630050d393d6ae26a4e957) @@ -20,6 +20,7 @@ #include "DGCommon.h" #include "DGDefs.h" +#include "ModeFault.h" /** * @defgroup DGServiceMode DGServiceMode Index: firmware/App/Services/AlarmMgmtSWFaults.h =================================================================== diff -u -r22176ce95e49213c48454f34ddf5d29b8109f2cb -rca42d4bb2bde856750630050d393d6ae26a4e957 --- firmware/App/Services/AlarmMgmtSWFaults.h (.../AlarmMgmtSWFaults.h) (revision 22176ce95e49213c48454f34ddf5d29b8109f2cb) +++ firmware/App/Services/AlarmMgmtSWFaults.h (.../AlarmMgmtSWFaults.h) (revision ca42d4bb2bde856750630050d393d6ae26a4e957) @@ -85,7 +85,7 @@ SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX, SW_FAULT_ID_CONCENTRATE_PUMP_EXEC_INVALID_STATE, // 55 SW_FAULT_ID_CONCENTRATE_PUMP_INVALID_PUMP_ID, - SW_FAULT_ID_______AVAILABLE_2, + SW_FAULT_ID_SERVICE_MODE_INVALID_EXEC_STATE, SW_FAULT_ID_UV_REACTORS_INVALID_EXEC_STATE, SW_FAULT_ID_UV_REACTORS_INVALID_SELF_TEST_STATE, SW_FAULT_ID_THERMISTORS_INVALID_EXEC_STATE, // 60