A Cheap Sailboat Autopilot WiFi Remote Using ESP32

Remote for sailing autopilot

In my spare time, I like to go out with my sailboat. I also frequently sail solo, and even if not mandatory, it would be useful to be able to control the direction of the autopilot from every point of the sailboat.

The “official” remote for my autopilot is the Raymarine S100, which costs 600€; it is too much in my opinion, so I continued sailing without.

In 2021 I did my first try to overcome this cost, by creating a DIY device; the solution was an arduino, with an opto-coupled Seatalk1 interface, and a 433 MHZ receiver plus a tiny 433 MHZ transmitter.

433MHZ auto pilot remote

It worked, but it had 3 major flaws:

  • it was occupying the only available Seatalk1 port left
  • sometimes the signal is not received by the autopilot
  • the remote doesn’t have feedback since the communication is one-way

So after some months I removed it, and I used the Seatalk1 port to connect a wifi gateway from vela-navega.com, that allowed me to broadcast all instruments data through wifi.

I was happy with it since it allowed me to connect wind, depth, gps and AIS with my laptop and mobile phone. But one day the idea of an autopilot remote came back, but this time I wanted to exploit the wifi gateway for it.

The first thing to do was to try to send Seatalk1 autopilot sentences using netcat, directly to the wifi gateway; and surprise, it worked. The nmea183 sentences are translated and sent to the seatalk bus, and received by the autopilot.

Seatalk reverse

So in a week I created a simple PCB with 6 buttons, an ESP32 and a 1860 lithium battery. Then I created a simple enclosure for it:

Pieces Open

The software is really easy; it connects to the gateway wifi, and when the user presses a button, it sends the sentence back to the gateway. If the remote is not utilized for more than 20 minutes, it goes to sleep.

Surprisingly it worked like a charm at the first try! The reception distance allows me to use it in every part of the boat without issues, and I can also add some feedback to the remote, since we can process nmea sentences from all the boat instruments.

Wifi remote

This is the first iteration of the project, and I’m already planning a new smaller version with only 3 buttons; maybe in the future I will also add a screen.

The code and the enclosure design are open-source, follow the project to stay up to date with future iterations: github.com/dakk/seatalk-wifi-remote

2026

Back to Top ↑

2024

DQPU, the decentralized quantum simulator

2 minute read

During my Quantum Computing journey, I often needed to simulate some quantum circuits; sometimes they are small, but some other times they are bigger enough ...

The Time I Built a Probabilistic Computer

5 minute read

In early 2023, I embarked on a journey to explore the field of probabilistic computing. This endeavor culminated in the construction of a hardware prototype,...

Back to Top ↑

2023

Expanding the Commodore 64 Quantum Emulator

1 minute read

In a recent article I wrote, “Quantum Computing on a Commodore 64 in 200 Lines of BASIC”, published both on Medium and Hackaday.com, shows a two-qubit quantu...

Back to Top ↑

2020

OCaml and Quantum Computing

1 minute read

Qiskit is a python SDK developed by IBM and allows everyone to create quantum circuits, simulate them locally and also run the quantum circuit on a real quan...

Yallo, a new Tezos language

2 minute read

As someone noticed from the previous post, last weeks I started to write a new programming language for Tezos smart contracts. This project was initially int...

King of Tezos: a smart-ponzi on Tezos

2 minute read

While writing a new programming language, it is often useful to write some real use-cases to test the syntax, the language expressiveness and the code cleann...

Favorite dev quote

less than 1 minute read

Documentation is like sex: when it is good, it is very, very good; and when it is bad, it is better than nothing

New blog

less than 1 minute read

This is my new blog, based on jekyll. I’ll soon import old posts from my old blog.

Back to Top ↑

2016

Contractvm: decentralized applications on Bitcoin

less than 1 minute read

Contractvm is a general-purpose decentralized framework based on blockchain. The framework allows to implement arbitrary decentralized applications in an eas...

Back to Top ↑

2015

Dices provably fair - Nonce overflow vulnerability

less than 1 minute read

Most of bitcoin dice software use a system to prove the fair play of the server for each bet. Most of them implement this mechanism using two seed (server se...

Back to Top ↑

2014

Apache2: redirect different domains to subfolder

less than 1 minute read

In the aim to merge two of my server on digitalocean, today I tried to write a mod_rewrite rule to redirect a secondary domain to a subfolder. After one hour...

Back to Top ↑

2013

MineML: F# miner

less than 1 minute read

MineML is a multithread CPU based bitcoin miner written in F#. At the moment it’s a slow implementation, but the class structure offers the possibility to im...

Back to Top ↑