Currently data is sent from Hercules to the WD via the "stroking" protocol.
It seems that in the Hercules->WD direction only Reset specific (and debufPrintf) data is sent.
Thus, it seems like currently if a non-ResetSpecific WatchDogInterface command is wirelessly sent to the Rover (Lander -> Radio -> Hercules -?-> WD) then it won't actually get to the WD. This is supported by the fact that almost all WatchDogInterface FPrime command handlers are blank at the moment. As* a result, these commands would only work via the RS422 pipeline.
This is a significant omission but likely not critical since non-ResetSpecific commands really only change system config settings that we wouldn't want to change post-deployment anyway unless some anomalies occur. In fact, for some of these commands, this RS422-only attribute to certain WD commands may even be considered a feature. That said, in an ideal world, this should be fixed.
*NOTE: Resolving this would likely require modifying the Watchdog-Hercules "stroke" protocol, which would be risky without thorough testing at this stage. So, if you take this on, test thoroughly.
NOTE: This doesn't apply to "WatchDogInterface commands that need to be handled differently on Hercules and the WD (namely Disengage_From_Lander and Engage_From_Lander (unset deploy signal)).
debufPrintf
) data is sent.Thus, it seems like currently if a non-ResetSpecific
WatchDogInterface
command is wirelessly sent to the Rover (Lander -> Radio -> Hercules -?-> WD) then it won't actually get to the WD. This is supported by the fact that almost allWatchDogInterface
FPrime command handlers are blank at the moment. As* a result, these commands would only work via the RS422 pipeline.This is a significant omission but likely not critical since non-
ResetSpecific
commands really only change system config settings that we wouldn't want to change post-deployment anyway unless some anomalies occur. In fact, for some of these commands, this RS422-only attribute to certain WD commands may even be considered a feature. That said, in an ideal world, this should be fixed.*NOTE: Resolving this would likely require modifying the Watchdog-Hercules "stroke" protocol, which would be risky without thorough testing at this stage. So, if you take this on, test thoroughly.
NOTE: This doesn't apply to "WatchDogInterface commands that need to be handled differently on Hercules and the WD (namely
Disengage_From_Lander
andEngage_From_Lander
(unset deploy signal)).