RW ReplyHandler fix #99

Merged
meierj merged 7 commits from mueller/rw-replyhandler-fix into develop 2021-09-23 20:14:27 +02:00
4 changed files with 9 additions and 5 deletions
Showing only changes of commit 397e1433fd - Show all commits

2
fsfw

@ -1 +1 @@
Subproject commit dccc2f0ba77184933e3d551d95950a5b0801d2f2 Subproject commit e1a85b47c5018590e58b9b1130b1754b0079450f

View File

@ -60,10 +60,8 @@ ReturnValue_t GPSHyperionHandler::buildCommandFromCommand(
PoolReadGuard pg(&gpsSet); PoolReadGuard pg(&gpsSet);
// Set HK entries invalid // Set HK entries invalid
gpsSet.setValidity(false, true); gpsSet.setValidity(false, true);
// The user needs to implement this. Don't touch states for now, the device should resetCallback(resetCallbackArgs);
// quickly reboot and send valid strings again. return HasActionsIF::EXECUTION_FINISHED;
actionHelper.finish(true, getCommanderQueueId(deviceCommand), deviceCommand);
return resetCallback(resetCallbackArgs);
} }
return DeviceHandlerIF::COMMAND_NOT_IMPLEMENTED; return DeviceHandlerIF::COMMAND_NOT_IMPLEMENTED;
} }
@ -210,3 +208,7 @@ ReturnValue_t GPSHyperionHandler::initialize() {
// Enable reply immediately for now // Enable reply immediately for now
return updatePeriodicReply(true, GpsHyperion::GPS_REPLY); return updatePeriodicReply(true, GpsHyperion::GPS_REPLY);
} }
ReturnValue_t GPSHyperionHandler::acceptExternalDeviceCommands() {
return DeviceHandlerBase::acceptExternalDeviceCommands();
}

View File

@ -22,6 +22,7 @@ public:
using gpioResetFunction_t = ReturnValue_t (*) (void* args); using gpioResetFunction_t = ReturnValue_t (*) (void* args);
void setResetPinTriggerFunction(gpioResetFunction_t resetCallback, void*args); void setResetPinTriggerFunction(gpioResetFunction_t resetCallback, void*args);
ReturnValue_t acceptExternalDeviceCommands() override;
ReturnValue_t initialize() override; ReturnValue_t initialize() override;
protected: protected:

View File

@ -184,6 +184,7 @@ ReturnValue_t RwHandler::scanForReply(const uint8_t *start, size_t remainingSize
default: { default: {
sif::warning << "RwHandler::scanForReply: Reply contains invalid command code" << sif::warning << "RwHandler::scanForReply: Reply contains invalid command code" <<
std::endl; std::endl;
*foundLen = remainingSize;
return RETURN_FAILED; return RETURN_FAILED;
} }
} }