Open Source Projects
Software projects for boats, with recent commits as of 2026. See also the ESP32 section for open hardware projects.
BlueBridge - Android app integration with NMEA data via MQTT and Bluetooth.
BoatHacks - SignalK and ESP32 projects, including Ollama for local AI.
BoatyPi - Open source hardware/software for boat ePaper display.
d3kOS - Raspberry Pi based navigation and automation platform.
DiscoTime - Time and lat/long dashboard for long distance passages.
- FrothFet - Open source hardware and software for digital switching boat DC loads.
Galadriel Plotter - Raster based chartplotter for low power servers.
- GWeatherRouting - Navigation and automated routing, Python/GTK4.
Helm - Clean-room re-engineered OpenCPN equivalent, alpha as of Q3/2026.
- Ilma - Software based Navtex receiver for Raspberry Pi or similar.
imud - IMU (Inertial Measurement Unit)/Magnetometer multiplexer with NMEA stream for chartplotters.
libWeatherRouting - Python weather routing library with linear iso-routing and shortest path routes.
Marine Chart Viewer - QT6 based chart plotter for Windows, Linux and macOS. Displays ENC and CM93 charts and GSHHG basemap.
MarineYachtRadar - MaYaRa server, display, OpenCPN and SignalK integration as open alternative to commercial radar processing.
- Marinux - Muplex NMEA multiplexer, Xinutop marine Linux distro, OSD Depth echo-sounder display.
- OpenCPN - Chart Plotter for macOS, Windows, Linux, Raspi and Android.
Open Marine Systems - Home Assistant add-ons for navigation and anchor watch, installed via HACS.
- Open Boat Projects - DIY hardware and open source projects, English and German.
- OpenPlotter - Combined project of SignalK, OpenCPN, PyPilot etc.
PyGPSClient - Python GPS/GNSS testing, diagnostic and configuration, incl NMEA integration.
- PyPilot - Python based auto-pilot.
- Rhizomatics Sailing - SignalK, picoware and Home Assistant plug-ins and associated apps, including integrations for eInk Electronic Shelf Labels, Teltonika modems and Bluetti power stations.
ROB - Raspberry Pi On Board, Java and Python navigation utilities.
Sail-O-Vision - Obstacle and wildlife detection with camera and NVIDIA Jetson.
Sailtrack - Modular racing performance tracker using MQTT.
- Seamark - Self-hostable voyage logbook (one Bun process, one SQLite file, MIT): imports GPX tracks into cleaned statistics, countries and sea areas, with an MCP server for AI assistants.
Shipboard Situational Awareness - Software stack for monitoring and automating a boat, based on SignalK and ESP32.
- Smart Boat Innovations - Videos and articles on building a Raspberry Pi and Home Assistant based smart boat.
- X Engineering - Open-source alternator regulator for lithium battery systems. Open hardware,
GitHub project.
Xilje - Garmin integration projects, incl plotter display of local web apps and PyPilot integration.
- Yacht Management Software (YMS) - Open-source, self-hosted yacht management software for sailing boats, designed for Raspberry Pi/Linux and offline operation.
AIS-catcher - AIS receiver for software defined radio (SDR) dongles.
AIStk - AIS data analysis toolkit. Python library.
Maiana - AIS Transponder open hardware/software.
- OpenAIS - tools, database and blog for spatial analysis of AIS data,
code. pico-ais-reporter - Tiny AIS reporter in shell script, suitable for running on a GPS equipped router.
Boating with the Baileys - ESP32 projects for marine displays and engine monitor interfacing with SignalK and NMEA2000. Source code to accompany
vlog
BoatOpenIO - ESP-32 16-channel analog marine gateway for legacy VDO sensors, integrating analog instruments to MQTT and SignalK.
BrineOMatic - Watermaker controller for ESP32, open source hardware and software, integrates with SignalK and Home Assistant.
espos-ble-gateway - SignalK BLE Gateway for ESP32 devices with 16Mb or more memory.
ESP32 NMEA2000 Multiprotocol Gateway - Broadcast N2K as Signal K, NMEA 0183, and Actisense Binary. WebGUI. Begun in 2026.
ESP32 NMEA2000 - NMEA2000 integration with USB, Wifi, 0183 on M5 Atom CAN and compatible with other ESP32.
Head-UP Marine Display - ESP32 and HUB75 LED matrix panel based display for use as on-mast racing performance data.
NMEA2000 - Arduino NMEA2000 interfacing library used in several commercial products.
NMEA2000_ais_wifi_gw - ESP32 based NMEA2000 gateway.
NMEA2000_esp32 - ESP32 objects for use with NMEA2000 library.
NMEA 2000 Display on ESP32S3 - Wind, speed, autopilot and alarms, designed for Waveshare ESP32-S3-Touch-LCD-4 display.
Outlook Guardian - Read SignalK vessel alarms out loud.
pico-ble-proxy - A minimal BLE proxy suitable for remote monitoring of BLE sensors like Victron, temperature etc on boats using Home Assistant.
- Sens32 - Sensor development framework for ESP32 based sensors by SignalK.
SkippersWatch - Waveshare ESP32 based wristwatch for SignalK data.
Operating Systems
Section titled “Operating Systems”Bareboat Necessities - All in one operating system, incorporating OpenCPN, SignalK, PyPilot etc plus open source hardware projects.
BoatOS - Marine operating system for Raspberry Pi, navigation, AIS, engine monitoring, logbook and weather.
Venus - Victron Energy’s open source OS for their GX products, available for self-hosting on Raspberry Pi.
SignalK
Section titled “SignalK”Boat Instrument - Cross platform instrument for display SignalK data on Android, iOS, Linux(ARM/X86/AMD/RPi), macOS and Windows.
eInk Labels for SignalK - SignalK plugin to send SignalK path data or API results to an BLE eInk Electronic Shelf Label using simple SVG templates. Optional add-on plugin for AI generated screens.
Homebridge SignalK - Homebridge plugin exposing SignalK batteries, tanks, temperatures and switching to Apple HomeKit.
Kip - SignalK dashboard / instrument display.
OpenFairWind - Alternative user interface, QT based, FairwindSK for SignalK on macOS, Windows, Linux, Android, iPhoje and iPad.
pysk - Terminal (ncurses) client to display streaming SignalK data, last updated 2022.
- SignalK - Specification, implementation and community for boat data distribution and analysis.
- SignalK Applications and Solutions - SignalK Project’s list of apps and other products with SignalK support.
Signal K Mobile - Open source Ionic mobile app for iOS and Android, last updated 2018.
- SignalK Plugins - Over 570 plugins, and over 170 web apps, available on the public NPM registry. Install via the SignalK built-in App Store.
signalk-server - Node.js pluggable framework implementing the SignalK specification.
signalk-cli - Command line interface to explore and extract data from SignalK, including the History API and Deltas streaming. Exports to CSV, JSON, raw and Apache Arrow Feather dataframes.
Plotter Integration
Section titled “Plotter Integration”See also OpenCPN NMEA Tools.
TwoCan - NMEA2000 integration for OpenCPN.
Tools and CLIs
Section titled “Tools and CLIs”CAN Boat - NMEA2000 and NMEA 0183 CLI utilities.
gpsd - GPS and AIS daemon wrapping NMEA0183 in its own simpler format. C, Python. Ubiquitous.- gypsy - Multiplexer for GPS NMEA data, daemon and C library, alternative to gpsd.
- KPlex - NMEA0183 multiplexer for Linux, Unix, macOS and OpenWRT. (Google Group).
nm2k - NMEA0183 and NMEA2000 web based visualization and analysis.
C and C++
Section titled “C and C++”minmea - GPS NMEA0183 parser in C.
- OpenSkipper - C# based NMEA2000, NMEA0183 and AIS integration, last updated 2023.
GoLang
Section titled “GoLang”go-nmea - NMEA 0183 sentence parser.
nmea0183 - NMEA 0183 sentence parser, with Actisense integration examples.
JavaScript
Section titled “JavaScript”canboatjs - Native CAN Bus / NMEA 2000 interfacing.
nmea-simple - NMEA 0183 sentence parser. Fork of the now deprecated
nmeapackage.
Python
Section titled “Python”Lots more libraries and tools can be found on PyPI, for example NMEA-related. Selection limited to ones recently active in 2026.
nmea2000 - NMEA 2000 encoder and decoder.
pyais - AIS specific NMEA 0183 parser and encoder, with streaming server.
pynmea2 - NMEA 0183 sentence parser.
nmeasim - NMEA/GNSS receiver simulator.
- nmea crate - NMEA 0183 sentence parser.
NMEAParser - iOS and macOS NMEA 0183 parser and validator.