An Open Source Boating Autopilot With Some Custom Tweaks

Piloting a boat is all well and good, but can get dull when you’d rather be reclining on the deck with a cold beverage in hand. For [Timo Birnschein], this simply wouldn’t do. He began to gather parts to put together an autopilot to keep his boat on the straight and narrow.

The build is based around OpenPlotter, which uses a battery of marine-ready software to handle routing charts, autopiloting, and providing a compass heading for navigation. Naturally, it all runs on a Raspberry Pi. In combination with PyPilot, it can be used to let the vessel drive itself around a series of waypoints, allowing you to soak up the atmosphere on the water without having to constantly steer the craft.

[Timo] ran into some issues, however, with the hardware side of things. Existing implementations for motor control to drive the rudder weren’t quite cutting it, so the system was reworked to run with a robust H-bridge and some fresh Arduino code. This was combined with a custom rudder sensor built with a potentiometer and some 3D printed gears. Future work aims to double up the rudder sensors for redundancy, something we should all consider at times.

Overall, the system is starting to come together, and [Timo]’s enjoying letting his boat think for itself. He notes that it’s very important to keep an eye on the boat while operating in this condition, lest it veer off course – many a boat has been lost this way. We’re always supporters of a mature attitude towards autonomous vehicle operations!

11 thoughts on “An Open Source Boating Autopilot With Some Custom Tweaks

    1. Well, you know… autopilots aren’t new. And yes, they are not designed for stupid or extremely tired people…. yet. Specifically in boating, they just follow gps coordinates or a set course. As a general rule: Always have a person on watch! Always!

      1. “And yes, they are not designed for stupid or extremely tired people…. yet”

        i dont think they will ever be. The more you design for stupid, the more mother nature explores the extent of stupid.

        The difference between cars, boats and planes is that travel in cars is one dimensional (not literally but we as a society determine the roads that people have to drive on). Travel in boats is two dimensional and less regulated than cars, you travel on bodies of water with suggestive rights of way but very little in the way of traffic control. Travel in planes is 3 dimensional and heavily regulated so its clear that autopilot works best in this senario as the right of way laws are clearly defined and giver every operator a common set of rules to obey.

        Planes are the easiest for autopilot due to regulations and enforcement, cars are the second in that list for regulations and enforcement but we are no where near ready for full auto pilot on those. Boats, while probably very easy to automate piloting are the riskiest due to a lack of regulations surrounding right of ways, speed of travel, collision avoidance and responsibility in terms of a collision..

        I do appreciate your efforts on this project and i think that if we are not pushing boundaries but until there are clear regulations and enforcement in place for boating it will always be the riskiest of transportation methods to automate. It shouldn’t be a general rule, having someone on watch should be the law with hefty punishments in the realm of criminal negligence for those who decide not to have someone on watch. People by nature will avoid any personal responsibility if they can.

        1. I’m not sure I fully agree with all of what you said but you have some very good points. Moving on open water will always be considered “international waters”. It seems unlikely that will ever change in the long term. Also, most boats move rather slowly. My boat tops out at 15-16 knots. That’s slower than a quick bicyclist. I usually cruise at under 10 knots. Plus, on the open water, there are usually no suddenly appearing obstacles. Obviously, you are not allowed to use an autopilot within a harbor where such things could exist. I’m not sure about channels (canals) but I know sailing is forbidden inside of those. So I assume the same is true for autopilots.
          It get’s dangerous the moment people go really fast. Generally. People underestimate how devastating the waves they make can be. I remember being for anchor and a 40ft cruiser blasted by at a distance of no more than 50 meters! That almost turned into a nightmare because the waves hit us from the side and my boat started rolling much much more than I even anticipated!
          On water it’a mostly stupidity and irresponsible people that cause issues in my opinion.

          1. “On water it’a mostly stupidity and irresponsible people that cause issues in my opinion.”

            take out “on water” and you have a general rule for the majority of society.

            “I’m not sure about channels (canals) but I know sailing is forbidden inside of those. So I assume the same is true for autopilots.”

            That is the main point i was trying to make. there are hardly any rules and no one to enforce them. With Airplanes enforcement comes from the governments airforces and licenses to operate, when it comes to cars there are police and they have force in numbers. With boats you sometimes have the coast guard and sometimes local police, the licensing requirements are much lower. Thus with boating you have a much greater oppertunity for stupid and a lower chance of ignorance being removed from the equation due to a lack of enforcement.

            A boating autopilot that can handle ignorant and stupid would require extensive maping of bodies of water (both above and below) as well as every moving object on the water to have some sort of locating beacon for avoidance. Planes have this and cars have mostly clear boundries of where they are supposed to be and not supposed to be, there is no distinction in the water and there is not enough enforcement of the existing rules to allow society to tighten up those rules to allow for unattended autopilot.

            “Plus, on the open water, there are usually no suddenly appearing obstacles.”
            You are making the assumption that someone is watching for obstacles, if no one is watching then they appear suddenly when your boat hits them. That is true at any speed, go below deck or take a nap and you could hit someone out napping on a floatie or in a canoe.

      1. According to the operator of the offending vessel, it was fake news anyway…

        “Larsen*, a Roseburg resident, told The Oregonian/OregonLive by phone Friday that he wasn’t using his cellphone while driving his Bayliner and referred to such allegations as “fake news.” Larsen also said a lawsuit seemed unnecessary because the people in the Weldcraft weren’t hurt badly.

        The criminal case is ongoing. Larsen has pleaded not guilty to the misdemeanor crimes of reckless operation of a boat, fourth-degree assault and recklessly endangering the lives of others.”

        *Marlin Lee Larsen passed away in April of 2018, so the criminal case was closed. No word on the lawsuit.

  1. The smarter we get and the more sophisticated our tools become, the greater is the potential for doing something stupid, to a much greater extent, geometrically or maybe even exponentially. This is also why I don’t believe in super-intelligent space aliens. If there were such things they would have done something so stupid by now that it would be conspicuous to the whole universe. But such an indicator seems to show negative, thus no super-intelligent aliens. Might still be lots of dumb ones though. :-)

  2. I would like to replace the course computer on a Raymarine ST6001, no longer manufactured. Is there a raspberry pi solution to this problem. I am currently looking at replacing a complete autopilot system ($5-6K) because its overpriced computer (about $1K, installed) is dead.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.