```html Linux NMEA 2000 Autopilot Control for Yamaha HARMO

Linux Autopilot Control for Yamaha HARMO

Your Setup: Boat with Starlink + Linux computer → Reverse SSH tunnel → Fixed IP server → Your location
Goal: Control Yamaha HARMO autopilot from Linux via NMEA 2000

Understanding the Solution

To control your Yamaha HARMO's autopilot from Linux, you need to bridge the NMEA 2000 network to your Linux computer and run software that can send autopilot commands. Here's what you need:

Linux Computer
NMEA 2000 Adapter
Yamaha HARMO

Hardware Options (NMEA 2000 to USB)

Option 1: Canboat USB Adapter (DIY) ~$60-100

The most affordable option. Canboat is an open-source project that lets you build your own NMEA 2000 adapter using a CAN bus module.

Option 2: Digital Yacht iKonvert ~£180-220 (~$230-280)

A popular marine-grade NMEA 2000 gateway that works well with Linux.

Option 3: Actisense NGT-1 ~£250-300 (~$320-380)

The gold-standard NMEA 2000 interface, used by many professional marine systems.

Option 4: CanHub (Pre-built Canboat) ~£80-100 (~$100-130)

A commercial version of the Canboat design - ready to use.

Software Stack

You'll need to run marine navigation software on your Linux system that can interface with NMEA 2000 and control the autopilot.

Signal K (Recommended) FREE

The modern open-source marine data protocol. It converts NMEA 2000 data to a unified JSON format over HTTP/WebSocket.

OpenCPN FREE

Full-featured chart plotter with autopilot control capabilities.

PyPilot FREE

Open-source autopilot software primarily designed for motor boats.

Recommended Solution (Cheapest + Reliable)

Total Cost: ~$80-150

Hardware:

Software Installation:

  1. Install Signal K on your Linux boat computer
  2. Configure the NMEA 2000 adapter in Signal K
  3. Install OpenCPN for chart plotting and autopilot control
  4. Connect Signal K to OpenCPN via plugin

Remote Access (via your existing Starlink setup):

Specific Yamaha HARMO Considerations

Important: The Yamaha HARMO has electric steering and supports NMEA 2000 autopilot commands. However:

Setup Commands (Ubuntu/Debian)

Step 1: Install Signal K

curl -fsSL https://signalk.org/install.sh | sudo sh

After installation, access at http://localhost:3000

Step 2: Configure NMEA 2000 in Signal K

Step 3: Install OpenCPN

sudo apt-get install opencpn    # or download from opencpn.org

Step 4: Connect OpenCPN to Signal K

Testing Checklist

Troubleshooting

Adapter not recognized

Check permissions: sudo usermod -a -G dialout $USER then log out/in

No NMEA 2000 data

Autopilot won't respond

Note: Prices are approximate and may vary by location. Always test your setup in safe conditions before relying on it for navigation. Consider having a secondary backup (handheld VHF, paper charts) available.

```