@tony-white I am opening a new thread here because the thread where I first encountered this issue is on another topic.
To add context for future readers: When first setting up our Blueboat, I encountered the problem from the thread linked above - that testing the motors in QGroundControl following the software setup guide the Starboard motor would not completely stop spinning when releasing the motor slider. Following the advice given in the thread I fixed this issue by setting SERVO1_trim to 1500 instead of 1510. The issue is, the software setup guide and indeed ARDUPilot’s skid steering documentation outlines that SERVO3 should be “Throttle Right” (Starboard) and SERVO1 should be “Throttle Left” (Port).
For our Blueboat, the opposite seems to be the case since SERVO1_trim is the parameter to ajust and not SERVO3_trim. If I move SERVO1_trim up or down a bit from the standard value, the Starboard motor starts spinning, and SERVO3_trim influences the Port motor the same way.
The really weird thing is: the software setup guide also states for motor testing: Slider “C” controls the port side motor and slider “D” controls the starboard side.
And this is actually true for our Blueboat!
Also, the rotation direction is correct out of the box (visually, and also both propellers blow air towards the back when manually driving forwards)
The motor test in BlueOS also works completely as expected.
The table there shows:
And finally, if I try manual control and steer to the left, the right propeller blows air towards the back and vice versa, which appears to be correct, too.
What we have already checked: The Crosstube assembly is installed with the correct orientation and the cables are plugged in as they should be according to the setup guide.
Where we’d still need guidance if manipulation there is necessary: We have not ever opened the starboard hatch lid assembly containing the electronics since we got the boat, so I can be certain that we did not plug in anything the wrong way there.
Our Firmware version is the newest stable one: 4.6.2 (STABLE)
Can you disconnect the ESC connection at the Navigator for Servo1, and verify that the port motor no longer spins when commanded to?
Just because the motors react appropriately when told to turn left, doesn’t mean things are working as they should. If the motor channels are reversed, but the directions set appropriately, you can drive the boat in Manual mode and things will behave as they should - until you switch to a mode where the boat needs to control heading. At that point, things can go crazy as the autopilot isn’t driving the motors it thinks it should be to control heading. Have things worked normally for you in Acro, loiter, or Auto mode?
I can only test Loiter mode right now as the boat currently sits on the bench (horizontally of course). In this mode, the propellers spin up without any gamepad input. This should not be the case, right?
If I unplug Servo1 on the Navigator board, I can ONLY spin the port motor (ThrottleLeft), while the starboard motor (ThrottleRight) does not spin any more. This is a Blueboat bought directly from blue robotics, and for this very test I have opened the starboard hatch the first time,so no one has been messing around in there.
You can’t actually test if things are going to work for loiter/auto/acro on the bench very easily - it is expected for the motors to run when armed and in those modes on land.
You may be able to set acro mode, and only see the motors change if you adjust the heading of the boat physically. When you do so, the direction of air motion should indicate that the boat is trying to re-establish the heading it had previously - so if you pulled it left, it should fight to go back to the right in Acro mode. It will fight harder and harder to do so, quickly spinning up the motors - disarm immediately to avoid damaging the motors by running them dry….
Since Servo1 should correspond to the left motor, and with it unplugged you can still spin the left motor, it seems your Servo1/Servo3 connection has been reversed! Swapping it around, verifying your motor directions, and even re-loading the BlueBoat default parameters from the Vehicle Setup / Configure menu (load default parameter sets) should show if you’ve changed any parameters that shouldn’t have been adjusted…. you may skip any adjustments to trim of course!
Nothing in the starboard hatch can affect the port motor!
This is the full output when trying to load default parameters. Aside from SERVO1_TRIM we haven’t changed anything actively ourselves.
I have tried the Acro mode:
When I rotate the boat that the tip points to the right/starboard, the right motor blows air towards the back, trying to make a turn to port.
This is the expected/correct behavior, right?
It is what happens WITHOUT changing how the motors are plugged in! So Servo1 and Servo3 are still - as you say - plugged in reverse as they were originally when first starting up the blueboat.
Those parameter changes are normal - the SR0 rates have been increased in the default parameters since the initial version your system shipped with, as well as the default relay configuration. It sounds like things are setup and working as expected, so let us know how it goes once in the water! If Auto / Acro / Guided / Loiter modes “go crazy” you’ll want to swap the ESC connectors at the navigator and verify your motor directions are still correct.
“Adjusting downwards 10-20 microseconds in Servo1_trim (the right motor) solved the issue!”
To me this reads that his motors might be plugged in the same way as mine are.
Are you 100% sure that there is not some configuration buried deep down that nullifies that the motors are plugged into the wrong ports and that this may even be so for all Blueboats?
Yes, that may be the case. I am fairly certain that there is no “buried configuration” that would be relevant, but will follow up with our software team and update if something else is learned. It’s unlikely to be true for all BlueBoats!
We’ve realized that the default parameters for the BlueBoat are reversed from the official ArduRover documentation, and correctly match how the motor ESCs are connected to the Navigator channels after all! Sorry for the confusion.
Everything should just work without any parameters changes necessary, outside of adjust servo_trim if necessary.