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.

Hi,

Thank you again for the quick response and guidance.

Since our last message, we have performed additional tests:

  • We swapped the motors externally at the waterproof connectors outside the electronics tube (without changing motor mapping).
  • When the motor originally assigned to frame position #6 was moved to frame position #5, the issue followed the motor:
    the thruster at frame #6 worked normally, while the thruster at frame #5 exhibited the same low thrust behavior.
  • Based on this result, we believe the issue is not related to the frame position, hydrodynamics of propellers, ESC, Pixhawk, or power distribution inside the electronics tube.
  • We also tested with a different Pixhawk and a different ESC, with no change in behavior.
  • We tested ArduSub versions 4.5.6 and 4.5.7, and the behavior was identical in both versions.

Regarding the phase-to-phase resistance measurement you mentioned:
we have not yet performed this test and would like to clarify what results should be expected.

Could you please advise on the following:

  • Typical resistance values (or range) expected between each pair of motor phase wires
  • How much imbalance between the three measurements would indicate a fault (e.g., acceptable percentage difference)
  • Whether you recommend measuring directly at the motor leads with no connectors or penetrators in between, or from the ESC-side connection points

In addition, we would appreciate your guidance on the software side regarding any parameters or checks we should perform.
Are there any ArduSub parameters (motor mixing, scaling, or otherwise) that could cause a single motor to produce significantly lower thrust underwater?

Regarding flight modes, we would also like to clarify the following:

  • The vehicle is currently operated entirely in Manual mode.
  • When switching to Stabilize mode, the vehicle attempts to rotate continuously around the roll axis.
  • Accelerometer and compass calibrations have been performed at a basic level.

Could this behavior be related to incomplete or incorrect sensor calibration?
In your experience, is roll rotation in Stabilize mode more commonly caused by calibration/orientation issues, or by actual thrust imbalance between motors?

If there is a recommended software-side debugging or verification sequence you suggest we follow, we would greatly appreciate your advice.

Once we have the reference information, we will perform the resistance measurements and report back with the results.

Thank you again for your support.

Regards,
Halil Can @HCY

Hi @HCY -
It sounds like that thruster may be damaged- measure the the resistance values they should all only be around a few ohms. If any of the combinations, measured at the ESC, is now than 5-10ohms that’s indicative if a problem- reach out to support via the help center to resolve

If your vehicle goes wild on stabilize mode, and you’ve calibrated compass and accelerometer, then the most likely issue is thrusters not connected to the correct output channel or in the correct position in the frame for their #, or their direction has not been set correctly. Double check each motor position vs where it is plugged in, and then verify all thrusters, especially vertical in your case, blow air in the expected direction when actuated. It is possible to have a vehicle drive normally in manual but not be constructed correctly…

This is all covered in the ROV setup guide, but it is a common stumbling block …

Different tests tell you different things.

Start by what’s easiest, which in this case is just spinning the propeller by hand and seeing if it feels like it spins as smoothly as the other motors. It’s possible there’s some fishing line or other debris (like seaweed or magnetic/sandy particles) caught in the motor, in which case the physical resistance could be slowing things down. If that’s determined to be a problem then you can try rinsing the motor with fresh water, and/or disassembling the motor to clear out anything stuck in it. This is part of our recommended care and maintenance.

If it’s not something stuck in the thruster, and you’ve already determined it’s unlikely to be a software configuration or driving circuitry issue, then there may be an electrical issue with the motor itself, or its connection to the vehicle.

I’d suggest you unplug your connector, and see if there’s a measurable difference in motor phase resistances there. If so then there could be a problem with the connector or the thruster, so you may need to remove the connector to confirm (although it’s likely worth checking for any visible corrosion on the connector pins, and cuts/nicks in the thruster’s cable first, as they may indicate the source of the issue).

If it’s a connector problem then you may need to reach out to your supplier. If it’s a thruster problem then you can report a product problem to our support team, or find whatever contact method seems most appropriate in our help center (as Tony mentioned).

Hi, thanks for the detailed suggestions.

We’ve now tested everything that was mentioned:

  • Measured phase-to-phase resistance on all thrusters at the ESC side — all values are consistent and within a few ohms, no abnormal readings

  • Connectors and cables have been checked carefully; no corrosion, damage, or continuity issues

  • Propellers spin freely by hand and feel identical to the other thrusters

  • Thruster directions, positions, and output channel assignments have been verified against the frame configuration

  • Compass and accelerometer are calibrated

Based on these checks, we don’t see any indication of a mechanical or electrical problem. Because of this, we strongly suspect the issue is software-related.

Could you please advise on:

  • Which stable firmware version is recommended for this vehicle configuration

  • Any critical parameters (thruster mapping, mixer, stabilization-related params, etc.) that we should verify

  • Whether there are known software issues that could cause this behavior in Stabilize mode while Manual mode appears normal

We’d really appreciate guidance on the software/configuration side, as hardware-related causes have been ruled out.

Thanks in advance.

Hi @HCY -
As far as your manual vs. stabilize issues, did you see this information?