Hi, I am using BlueOS 1.4.2 with ArduSub 4.5.3. I am trying to waypoint auto navigate the ROV on the surface using a GPS. The GPS is mounted above water level, and the vehicle is positively buoyant with added floats, so it naturally stays floating on top of the water.
My goal is only surface waypoint navigation using GPS. I do not want the ROV to dive.
Issue:
Whenever I switch to Auto mode for waypoint mission, the ROV immediately starts descending.
I verified that every waypoint depth is zero. Still, once Auto mode starts, it commands downward movement.
I also tested with DVL enabled, but the same behavior happens. It still tries to go down. once I arm it in automode.
What I want:
I want the ROV to stay floating on the surface and navigate only using GPS (like a surface vehicle). No depth change, only horizontal movement on top of the water.
Hi @Sakthivelj -
The issue is likely related to the autopilot incorrectly trying to use the GPS altitude to navigate. This has been addressed with fixes from @williangalvani - if you update your ArduSub firmware to the latest “dev” version, it should work normally!
You may also want to update BlueOS to the latest stable version, 1.4.3.
Your waypoint mission with 0 altitude should then work normally as you expect!
@tony-white Thanks, I could not find the correct “dev” branch; it is showing 4.7.0. I checked out the Sub4.5 branch and found @williangalvani commit “Sub: publish filtered alt in mav msgs.” Based on that, I performed a manual build from ArduSub and tested it. I am facing the following issues.
Issues observed:
I was not able to enter AUTO mode. Although GPS status was good, it was showing “AUTO requires position.” After disabling and re-enabling the EKF USE GPS parameter, this issue was resolved.
Altitude value is being displayed as depth.
In AUTO waypoint mode, the vehicle moves very slowly, reaches the first waypoint, and then stops without continuing to the next waypoint.
Multiple time I try it with same waypoint, most of the time not moving forword some time is loitering same postion very few time decent and moving to waypoint but due to gps loss I disarm it.
Additionally, I am facing another issue (possibly unrelated). While moving forward in STABILIZE mode, the ROV descends instead of maintaining surface level. I am not providing any vertical input during this movement.
Note: Today I had an issue with the DVL cable, so the DVL was not connected. I was using only GPS. Could the absence of DVL cause these behaviors?
ArduPilot makes a daily build of the master branch that gets presented (in the firmware flashing dropdown in interfaces like BlueOS) as “Dev”. Those builds will indeed show up (once installed) as 4.7 at the moment, because that’s the next upcoming release.
Please try testing again, either by installing the Dev build, or your own custom build from the current state of the ArduPilot master branch.
That’s a backport of a recent fix that allows VFR_HUD MAVLink messages to be sent by ArduSub even when it doesn’t have horizontal positioning data. It shouldn’t be related to the behaviour you’re trying to achieve.
Not sure what you mean by this. Displaying of values is generally handled by control station software, and the autopilot can’t display anything.
What value are you displaying, where/how are you displaying it, and what are you expecting it to show? Note that there are multiple different types of altitude, and most commonly ArduSub is using altitude relative to the water surface (which is negative depth).
That could potentially cause issues with the autopilot not having positioning, especially if the GPS signal is intermittent. I don’t believe it should cause the other issues you mentioned.
Thank you for the clarification regarding the Dev build and master branch. I understand that the “Dev” option corresponds to the daily build of the current master (currently showing as 4.7.0).
I tested again using a fresh build from the current master branch.
AUTO mode is not working directly, I am facing some issues, and I hope this information will help you to fix it. @williangalvani
The behavior I am observing is:
If I arm the vehicle and switch directly to AUTO mode, the mission does not start. The vehicle maintains its position, behaving similarly to LOITER.
If I first arm in GUIDED mode, use “Goto Location” to command a movement, and then switch to AUTO mode, the mission executes as expected.