We’re building an ROV using Pixhawk (ArduSub) with a Raspberry Pi companion computer (ROS2 + MAVROS). The vehicle needs to attach and operate along vertical surfaces, so maintaining controlled roll while maneuvering is a core requirement.
Stack
Pixhawk running ArduSub
Companion computer: Raspberry Pi (ROS2 + MAVROS)
Joystick control
No external XY positioning (no DVL / external localization)
Goal
We want joystick-based control similar to POSHOLD stability, but still allow roll control so the vehicle can move along the surface while attached.
Thanks in advance — happy to share more details about the vehicle config if helpful.
Hi @Ferbin -
Does your vehicle have 4 vertical thrusters, arranged so it can hold any pitch/roll configuration, like the 6dof BlueROV2 in Heavy configuration?
Without a position sensor, you’re not going to get “POSHOLD stability” but you can use the roll or pitch trim, or acro mode, to achieve the desired orientation, and navigate around with standard joystick control. It will be up to the pilot to maintain position fighting the influence of external forces.
For your Companion computer, I’d assume you will run BlueOS and install the ROS2 extension?
Yes, the vehicle uses an 8-thruster configuration similar to the BlueROV2 Heavy (4 vertical + 4 vectored horizontal), so it can hold arbitrary pitch and roll orientations.
Our goal is to operate while attached to a vertical surface, which is why maintaining controlled roll while maneuvering laterally is important.
Given that we don’t have external position sensing (no DVL / external localization), POSHOLD isn’t feasible. Based on your suggestion, it sounds like ACRO mode or using roll trim while operating in a stabilized mode might be the most practical approach.
A couple follow-ups:
Would ACRO + Depth Hold be a reasonable combination for this kind of operation?
Is there a recommended way to command roll via MAVROS while still keeping depth stabilization active?
Hi @Ferbin -
Acro and Depth hold are mutually exclusive modes - ArduSub only operates in one mode at a time!
Depth stabilization while in strange orientations is very difficult for the autopilot to cope with, because the direction of travel relative to the vehicle frame is very different! This is therefore not a supported combination, sorry for the news.
If you ensure your vehicle is very close to neutrally buoyant, it is generally easy for a pilot to maintain position or depth while upside-down or rolled 90 degrees.