The motors are usually the cause. Other causes can be very unbalanced drag and ESCs losing their programming. Here’s a little bit of info that might help get folks on the right path:
if it’s still pulling left or right, check that both motors turn relatively freely by hand. They can be a little different from each-other but major differences could indicate a physical problem.
In the settings or diagnostics pane there is a motor slider, you can enter a value and see if that in both the port and starboard motors and check how it flies from there.
If these are not working it could be the motor or the esc (hard to tell). Let’s try reflashing the esc.
The ESC’s (electronic speed controllers) don’t share the same firmware as the Arduino on the Controller board.
In order to flash your ESC’s manually, follow these instructions:
Download PuTTY. It is a program that allows you to manually connect to an IP address via a terminal window.
When you run the program, connect to the IP address: 192.168.254.1
If there is no connectivity issues due to hardware, or your computers static IP address, it should open a terminal window.
Type in the following lines of code:
sudo bash install-afro-esc-firmware.sh
power cycle the ROV and see if that does anything
just to make sure it’s not drag or some other cause, you can move the left motor to the right and conversely. Fly it forward using the W key (not a gamepad) at low or medium thrust factor. That will rule out any hydrodynamic issues. You’ll have to swap them back (don’t do any soldering or disconnecting of wire just yet) so you don’t have reversed controls left and right.
It’s probably the motor. Give email@example.com a quick email or head over to https://store.openrov.com/collections/components/products/motor-s