diff --git a/linux/payload/FreshSupvHandler.cpp b/linux/payload/FreshSupvHandler.cpp index b872f41c..9fee6066 100644 --- a/linux/payload/FreshSupvHandler.cpp +++ b/linux/payload/FreshSupvHandler.cpp @@ -198,6 +198,11 @@ ReturnValue_t FreshSupvHandler::initializeLocalDataPool(localpool::DataPool& loc ReturnValue_t FreshSupvHandler::executeAction(ActionId_t actionId, MessageQueueId_t commandedBy, const uint8_t* data, size_t size) { using namespace supv; + // The SUPV does not have any action commands where there is no communication with the device + // involved. + if(mode != MODE_ON and mode != MODE_NORMAL) { + return HasModesIF::INVALID_MODE; + } ReturnValue_t result; if (uartManager->longerRequestActive()) { return result::SUPV_HELPER_EXECUTING; @@ -238,8 +243,7 @@ ReturnValue_t FreshSupvHandler::executeAction(ActionId_t actionId, MessageQueueI default: break; } - // This might not be necessary, but I think the PLOC SUPV is not able to process multiple - // commands consecutively.. + // The PLOC SUPV is not able to process multiple commands consecutively. if (isCommandPending()) { return HasActionsIF::IS_BUSY; }