Index: firmware/App/Services/CpldInterface.c =================================================================== diff -u -rc596f2433ccbcfde4663960eaa931f74820f487d -rd9b5f588d81e15ed3849222bed3362e15dbf4b0a --- firmware/App/Services/CpldInterface.c (.../CpldInterface.c) (revision c596f2433ccbcfde4663960eaa931f74820f487d) +++ firmware/App/Services/CpldInterface.c (.../CpldInterface.c) (revision d9b5f588d81e15ed3849222bed3362e15dbf4b0a) @@ -378,19 +378,24 @@ /*********************************************************************//** * @brief - * The testSetSafetyShutdownOverride function overrides the safety + * The testSafetyShutdownOverride function overrides the safety * shutdown. * @details \b Inputs: none * @details \b Outputs: HD safety shutdown overridden * @param value TRUE to activate safety shutdown, FALSE to de-activate it. * @return TRUE if override successful, FALSE if not *************************************************************************/ -BOOL testSetSafetyShutdownOverride( U32 value ) +BOOL testSafetyShutdownOverride( MESSAGE_T *message ) { - BOOL result = FALSE; + BOOL result = FALSE; + TEST_OVERRIDE_PAYLOAD_T payload; + OVERRIDE_TYPE_T ovType = getOverridePayloadFromMessage( message, &payload ); - if ( TRUE == isTestingActivated() ) + // Verify tester has logged in with f/w and override type is valid + if ( ( TRUE == isTestingActivated() ) && ( ovType != OVERRIDE_INVALID ) && ( ovType < NUM_OF_OVERRIDE_TYPES ) ) { + BOOL value = (BOOL)payload.state.u32; + // Remember natural state before override so we can reset safetyShutdownOverrideResetState = safetyShutdownActivated; // Override safety shutdown signal