Thanks again for your time.
This application isn’t skid steer, or electric motors (wish they were, everything would be much more simple). And, we can’t just shut off the engines (diesel, sometimes mogas) or we would loose all the higher current loads if they were down for a while (camera arrays, multiple radar, sonar arrays, etc).
And, no RC transmitter. Often, no GCS after the mission is created. MP is a great tool to create the missions, but after we upload a plan we have other ways to ensure safety and expected nav results (SatCom, VHF) - very very BLOS and weeks in duration.
I truly think your SET_MODE suggestion fits the bill for our issue. Thank you. We just haven’t stumbled across that option yet, but I’ll study the wiki you suggested.
The Hold-within-Auto concept is intriguing as well, but in our case it would be transmission shifting versus just stopping the motor. It would be awesome if there were a ‘hold for time’, or ‘hold until next’ and some parameters to specify where the output goes (Throttle to 1500, CH9 to some PWM).
The scenario changes a bit now to a different use case, but here is another great example of how we could use Hold-within-auto:
On other ground vehicle systems, we have a PAUSE mode. I guess it would be similar to HOLD in Rover, but we have been missing a few things there too (applying brake ramp to zero velocity, maintain brake at x%, then shifting the transmission to Neutral or Park). On PAUSE state change back to normal we clear ahead, shift to drive, and release brakes to resume mission.
For surface vessels, we really need a way to take in a signal (ADC, CAN, PWM, IP, anything) to trigger a PAUSE. Then a RESUME input signal would change the state back and kick AUTO. We would accomplish this through our discrete safety system (KillBox), and when a stakeholder (USCG, commercial operators, or incoming AIS target) needs the vehicle to stop what it is doing for a few (let traffic pass, whales swim by, do the ISR task, whatever), they just send the PAUSE. Once done, they flop the PAUSE.