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.