Overview

With your existing Linux computer and Starlink setup, you can create a reliable autopilot system for your Yamaha HARMO engine. Here's the most cost-effective approach using open-source software and minimal hardware.

System Architecture

Linux Computer (PyPilot/OpenCPN) → USB Gateway → NMEA 2000 Network → Yamaha HARMO

Remote access via Reverse SSH over Starlink

Required Hardware (Cheapest Reliable Setup)

1. NMEA 2000 USB Gateway

Recommended: Actisense NGT-1-USB

While there are cheaper gateways, the Actisense is known for reliability and compatibility with open-source software.

~$250-$300

2. NMEA 2000 Starter Kit (if needed)

If you don't already have NMEA 2000 backbone wiring:

  • NMEA 2000 backbone cable
  • T-connectors
  • Terminators (2 needed)
  • Drop cables

~$100-$150

3. Power Supply

12V to 5V USB converter (for powering the USB gateway)

~$20-$30

Already have: Linux computer, Starlink, boat electrical system

Software Setup (All Free/Open Source)

Option A: PyPilot (Recommended for Simplicity)

  • PyPilot: Dedicated autopilot software with NMEA 2000 support
  • Installation: On your Linux computer, run:
sudo apt-get update
sudo apt-get install pypilot

Option B: OpenCPN + Autopilot Plugin

  • OpenCPN: Navigation software with extensive plugin support
  • Autopilot Plugin: Adds autopilot control capabilities
  • Installation: Available in most Linux repositories or via Flatpak

Additional Useful Software

  • Signal K: Modern marine data server (can run alongside)
  • Kplex: NMEA 0183 multiplexer/demultiplexer
  • GPSD: GPS daemon if you have a GPS receiver

Connection & Configuration Steps

1 Connect Actisense NGT-1 to Linux computer via USB

2 Install appropriate drivers (usually automatically detected)

3 Configure PyPilot/OpenCPN to use the serial port (/dev/ttyUSBx)

4 Set up NMEA 2000 source in the software

5 Configure autopilot parameters (rudder response, gain settings, etc.)

6 Test with engine OFF first, then at idle in safe waters

⚠️ Safety First

Always have manual override available. Test thoroughly in safe conditions before relying on autopilot. Never leave autopilot unattended in congested waters or poor visibility.

Remote Management via Starlink

Your existing reverse SSH setup is perfect for this. You can:

  • Monitor autopilot status remotely
  • Adjust parameters while away from the boat
  • Log data to a remote server
  • Set up alerts and notifications

Pro Tip: Set up automatic SSH tunnels using autossh and consider using WireGuard for more robust remote access if needed.