Need help with autonomous boat

I have recently decided to attempt to make an autonomous sailing boat, I’ve done quite a bit of research on the topic and think that i can do it. i already have an RC sailing boat that i am planning on using as the base to this project, the boat already has a rudder servo and winch for the sails installed. my plan is to use an Arduino UNO along with ardupilot, this will be connected to a GPS module with an integrated compass to allow the boat to be autonomous, i have access to a wind vane in order to detect wind direction, i was originally planning on using a power bank to power this however i realised that this will not have sufficient power to control everything.

my question is what would be the best way for me to power this system and also if there are any components that i have forgotten.


1 Like

Hi Connor,

Very exciting. I am planning to add support for sailboats over the next few months.

I don’t think there’s any need for the Uno really. Most modern flight controllers come with a GPS and compass and ArduPilot should allow us to make the vehicle autonomous.

Hopefully you’ve got a Pixhawk or another ardupilot compatible flight controller? There are some companies out there still selling the old “APM 2.x” boards but despite the name, we don’t support these anymore because they have very limited CPU and memory.

For powering the system, i would use the power module that comes with most flight controllers. They work with up to 4S batteries normally.

Can you give more details on the wind vane you’re using? @prowse and I have been discussing what we should do to make a windvane.

Maybe we can share some developpements with those guys

Last year I 3D printed a weather station and used this device for the wind vane direction.

Digikey AS5048A by ams

Combined with the compass and you can get wind direction although it may flop around in the wind causing some reading problems.


1 Like

For our Wind vane we are planning on using an MA3 miniature absolute magnetic shaft encoder with a 3d printed wind vane connected to it in order to sense the wind direction.


1 Like

Is CUAVv5 suitable for a boat? Which version of firmware should I choose, Rover 3.5? Are these suitable? Thanks

Rover 3.4.2 is probably the way to start. I’m not familiar with the CUAVv5 however. Looks like it should be fine.

Thanks, I’ll test it tomorrow! Do you have any tutorial about how to control a boat? I’m new for boat!

Its all here in the Docs.

Hi, I tested Rover 3.4.2 using ./waf list_boards, the CUAVv5 did not appear in the list, but Rover 3.5 support it! Thanks

1 Like

Hi Talos,

I’m currently setting up a CUAVv5 as well, and am using Rover 3.5.

I’m having trouble configuring few things:

  1. Compass - there’s no live configuration, only onboard mag calibration. i’m using external compass, and there’s no button to calibrate at all

  2. Servo - in the Radio Calibration & Servo Output, the readings from RC is already shown and correspond correctly. however, servos does not seems to move. Im using a FlySky FS-iA6b receiver to control servo TowerPro MG995. No signal at all. Even tried using oscilloscope to check.

Extra question:
Tried using ArduCopter to test servo rail, seems working. but the PWM frequency I got is 25ms, instead of normal 20ms. Is this expected?

Do let me know if anyone has any fresh ideas. Thanks.

First I built Rover 3.5, but did not test PWM now, as soon as possible, I would give the result! Thanks


  1. The onboard compass calibration is certainly better than the live version. “Onboard” refers to where the calibration routine runs not whether the compass is internal or external. “Onboard” means the calculations are done on the flight controller.

  2. It’s best not to be confused about inputs vs outputs because they are quite separate. When it comes to testing RC outputs, try using the MP’s Config/Tuning >> Optional Hardware >> Motor Test page.

I wouldn’t worry about the update frequency. Copter outpus at 400hz while Rover only outputs at 50hz (although it can be configured to output more quickly).

Sorry for the late reply. Thanks for all your suggestions and solutions.

Turns out my servo-not-moving problem at first was because it was not ARMED.

And after some configuration changes I made, I did not RE-BOOT. So now everything is solved after RE-BOOT.


1 Like

Hi, rmackay9
Is there any difference between Rover-3.5 and Rover-3.5.0? I tested Rover-3.5.0 using CUAVv5, there was error, the accel calibration did not work either!

Hi, I tested the PWM output, the high level period was from 1ms to 2ms according to the lowest and highest throttle! Thanks