Issue with Single Thruster Underperforming on Submerged ROV

We have a custom-built underwater ROV running ArduSub, with a thruster layout that matches the standard BlueROV 6DOF configuration. The vehicle uses two separate pressure housings: a battery tube and an electronics tube. A 6S 10000mAh LiPo battery is located in the battery tube, and the battery positive and negative lines are routed directly into the electronics tube through penetrators, with no switches or breaks in between.

Inside the electronics tube, battery power is distributed to eight individual 30A ESCs, with all ESC positive and negative lines connected to a common power bus. A Pixhawk Power Module is connected to the same battery line to power the Pixhawk. The Pixhawk is also connected to a Raspberry Pi acting as a companion computer.

The vehicle has a total of eight thrusters arranged exactly like the BlueROV 6DOF layout: four vertical thrusters (top-mounted) and four axial thrusters (horizontally mounted). Due to the mechanical design of the pressure tube, the cabling is split by end caps rather than by thruster function, the front end cap carries the cables for two vertical thrusters and two axial thrusters, while the rear end cap carries the cables for the remaining two vertical thrusters and two axial thrusters.

Each thruster is connected via a 3-pin waterproof connector, followed by a penetrator. Inside the electronics tube, the motor phase wires pass through a terminal block for serviceability before connecting to their dedicated 30A ESC. Motor phase wiring uses 3 × 1.5 mm² PUR cable.

Each of the eight ESC signal wires is connected randomly to the Pixhawk PWM outputs, and the correct motor-to-output mapping is configured later in QGroundControl. All ArduSub motor parameters have been verified.

The issue I am experiencing is that thruster (motor) #6 does not produce the expected thrust underwater. The thruster spins, but the generated thrust is significantly weaker compared to the other thrusters. This behavior only occurs when the vehicle is submerged; in air, the thruster appears to operate normally.

To rule out hardware-related issues, I have replaced the motor, ESC, and Pixhawk, reinforced the power distribution wiring, swapped ESC signal outputs, and confirmed that the issue is not tied to any specific electronic component. Despite all these efforts, the problem consistently remains at the same physical thruster position (#6).

Additionally, as shown in the video, when we try to bring the vehicle to the surface in the pool, the thrust from motors 5, 7, and 8 is good, but the thrust from motor 6 is poor, causing the vehicle to surface in an unbalanced manner. Since I am a new user, I cannot upload the video, so I am providing it as a Drive link. https://drive.google.com/file/d/1UclccwHXfbix8_2IuzLjtZcS9u3b1PGf/view

Currently, I am unsure why this happens, as all hardware and wiring have been thoroughly checked. I am reaching out to the community for advice, troubleshooting tips, or similar experiences from anyone who has encountered a single thruster producing significantly lower thrust underwater.

Hi @HCY -
Have you tried another thruster connected to the same ESC, to see if the issue is thruster specific? Have you measured the (3x) resistances of that weaker thruster, between each of its three wires?

If it’s not specific to an issue with that thruster, I would suspect a misconfiguration of the motor channel… are you in stabilize mode when surfacing in the video? The vehicle does not work to keep level and hold heading when in Manual mode - it may be just fine if changed to another flight mode!

Connecting each of the ESCs to the Pixhawk “randomly” and sorting it out in mapping seems a bit of a pain vs. following the BlueROV2 1-8 mapping…

Hi @HCY, welcome to the forum :slight_smile:

Noting that it would be useful to check this directly between the thruster wires (with no connections in between), as well as from the connection points where the ESC attaches, in case there’s a problem with one of your connector terminations or cable whips.

You could also try swapping two motors (at the final connector stage), then reassigning the motors in software, after which if it’s still just motor 6 that’s having issues you can know it’s not the thruster that’s the problem, but either the ESC, the connecting hardware, or some software configuration/usage issue.