The Greatest Puzzle of All Time - Path Wobble

Yes, I can drive the boat perfectly with the radio, no problems.

Requires very little throttle to maintain a good speed.

The last thing a skipper wants to do when driving a boat is thrust the throttle from max to min repeatedly and try drive in a straight line, this is what the controller does when the wobble starts

There’s the biggest clue to the problem!!! Not navigation or steering, but like Randy found, throttle control.

Does anybody know how I can turn ALL throttle control off, except for logging speed - 3, 4 or 5m/s?


1 Like

Consider a test where you control the throttle manually but let the flight controller control steering. I’m envisioning simply plugging in your throttle to the radio receiver directly.

1 Like

John, Are you using a special code with vectored steering? I think when I use my boat it does not slow down when making corners.

If ATC_SPEED_P I and D are all set to 0 so that only ATC_SPEED_FF is non-zero then the throttle controller will do very little - it will output almost a constant throttle dependent upon the desired speed.

As a side note, Leonard told me yesterday that the navigation rewrite is getting close to the top of his to-do list. He will be giving a talk about it at the upcoming developer conference.


That is great news Randy, thank you

I will try this

Hey Randy, in your last post, what do you mean by “ATC_SPEED_FF is non-zero”?

Hi John,

Sorry, that was a slight mistake. The ATC_SPEED_FF is always zero and should be left at zero. Still, if ATC_SPEED_P/I/D are all zero the throttle controller will output a constant throttle which is a simple calculation from the desired speed and will not change regardless of what the vehicle’s actual speed is.

Thank you Randy, so which speed setting should I use for my missions?

P.S - I don’t mean actual speed, but which setting should dictate the speed of the mission?

@John_Easton, any speed you like I think. 4m/s maybe?

I think it may also help to make WP_OVERSHOOT large… perhaps 10 (meters).

1 Like

Hey Randy,
It is getting better, but I can still hear the throttle dropping as it reaches the waypoint, and then it starts wobbling again.
Is there a way to stop that de-throttling at the waypoint?


I think increasing the TURN_RADIUS and WP_OVERSHOOT parameters should make it slow down less.

By the way, the unhelpful slow (for boats) shows up on my high speed boat as well. We don’t have a way to specify the speed at which the vehicle planes - if we had that then we could make sure the navigation controller doesn’t slow down below that speed because it’s not really helpful for boats that plane. For rovers it works well… but for boats, it’s not helpful.

1 Like

Boats certainly are tricky, especially since there are so many variations in design.
With my boat, right from the very start, top of the list was to stay away from planing hulls, I knew it had to be a displacement hull.

With regard to changing TURN_RADIUS and WP_OVERSHOOT I find that I lose accuracy of the path when it comes to turning around, and that causes another whole new problem, especially when doing sidescan.

If I had a way of stopping the craft remotely I would simply put a mechanical ‘switch’ on the throttle - ‘low / med / high’ something close to 3 / 4 / 5 m/s

I’ve started on the first steps toward rewriting the navigation controllers and I think I know better what’s causing the wobble. As mentioned above I’m pretty sure it’s an oscillation in the vehicle’s speed that is transferring over into the steering control.

I thought that transfer was happening up at the navigation level (i.e. in the L1 controller) that uses the current speed in it’s calculation of how quickly it should turn back onto the line between waypoints but as part of the navigation rewrite I’ve noticed that it’s also happening much lower down when we convert the lateral acceleration (from the L1 controller) into a turn rate here in the attitude controller.

I suspect if we change this calculation so that it uses the desired speed instead of the vehicle’s actual speed the wobble will go away. This seems like it should be straight forward… we just need to be careful that the desired speed is properly accelerated and decelerated otherwise we will end up with weird turning behaviour as the vehicle starts and stops.


I believe you have hit the nail on the head.
Keep in mind - when I removed the throttle servo from the controller, and manually set the throttle as I let the craft go (bit scary when it returned to shore), the entire path was PERFECT, including approach and departure from waypoints.
This option will be greatly appreciated for my application at least.

Here is the recorded trail using manual throttle, keep in mind the motor was not centred properly as it had just recently gone into a jetty on the way in on a ‘wobble path’. Were the motor centred, it would have been better.

Here is the Google Earth file for the trail -


Randy, throttle is still causing problems. Is there any way of turning the throttle control off 100%.

1 Like

Using rover 4.0.0. with EKF3. Running into this issue as well with my autonomous boat and tuning it is turning my hair grey!

As of now, I have very bad oversteer (wobble) and by that, I mean my path looks like a spaghetti noodle. I actually set my L1period to 60 and it smoothed it out some but its still terrible.FF is 0, P is 0, I is .2, D is 0.4.

Lat ACC CNTL DAMP is 1.0

Turn radius is .9 (i havent tried setting this to higher).

My boat has a constant throttle (2-3knts) controlled by a companion computer and is not connected to the flight controller (ardurover - boat). Are there any thoughts on other parameters which could help with this situation besides the ones already listed?

Another thing I havent tested is XTRACK.

Some days it works great, then other days it goes crazy again, but I am learning a LOT lately.

Let’s work together to get this problem resolved Adrian.

Hi John,

One thing which has me intrigued is the turning radius setting. My assumption is that the boat is turning too sharply and then it needs to autocorrect. If the turning radius is increased, I’m thinking the amount oversteer should be reduced. Changing the period (which I assume is sampling time) along with this setting should fix it. Will need to test next time I can get out to the lake…boat is 130lbs so it’s not a convenient thing!

I was out at the lake today testing period, p,i,d, and damp…but after losing transmitter signal my boat went clear across the lake in manual mode. Sigh…the high school dragon boat team had to get it for me.