Index: firmware/App/Modes/ModeInitPOST.c =================================================================== diff -u -r67021fbc633259e8e1bce76749dbef7d0cb51998 -rddb9707d9e6e46c4b384782aeec20d41f3822996 --- firmware/App/Modes/ModeInitPOST.c (.../ModeInitPOST.c) (revision 67021fbc633259e8e1bce76749dbef7d0cb51998) +++ firmware/App/Modes/ModeInitPOST.c (.../ModeInitPOST.c) (revision ddb9707d9e6e46c4b384782aeec20d41f3822996) @@ -196,6 +196,11 @@ postState = handlePOSTStatus( testStatus ); break; + case DG_POST_STATE_SAFETY_SHUTDOWN: + testStatus = SELF_TEST_STATUS_PASSED; + postState = handlePOSTStatus( testStatus ); + break; + // Should be last POST (and last POST test must be a test that completes in a single call) case DG_POST_STATE_LOAD_CELL: testStatus = execLoadCellsSelfTest(); @@ -276,15 +281,15 @@ { DG_POST_STATE_T result = postState; - if ( ( testStatus == SELF_TEST_STATUS_PASSED ) || ( testStatus == SELF_TEST_STATUS_FAILED ) ) + if ( ( SELF_TEST_STATUS_PASSED == testStatus ) || ( SELF_TEST_STATUS_FAILED == testStatus ) ) { - BOOL passed = ( testStatus == SELF_TEST_STATUS_PASSED ? TRUE : FALSE ); + BOOL passed = ( SELF_TEST_STATUS_PASSED == testStatus ? TRUE : FALSE ); // Broadcast passed POST result sendPOSTTestResult( (DG_POST_STATE_T)((int)postState), passed ); // Move on to next POST test result = (DG_POST_STATE_T)((int)postState + 1); - if ( testStatus == SELF_TEST_STATUS_FAILED ) + if ( SELF_TEST_STATUS_FAILED == testStatus ) { tempPOSTPassed = FALSE; }