---
title: "Open Source Projects"
description: "Software and firmware, including NMEA libraries."
---

<!-- Generated from ../../../../README.md by scripts/sync-readme.mjs — do not edit directly. -->
Software projects for boats, with recent commits as of 2026. See also the [ESP32](#esp32) section for open hardware projects.

- [AvNav](https://www.wellenvogel.net/software/avnav/docs/beschreibung.html?lang=en) - Plotter with Android app and SignalK integration. German with English docs.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [BlueBridge](https://github.com/miniwinwm/BlueBridge) - Android app integration with NMEA data via MQTT and Bluetooth.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [BoatHacks](https://github.com/BoatHacks) - SignalK and ESP32 projects, including Ollama for local AI.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [BoatyPi](https://github.com/davedoesdemos/BoatyPi) - Open source hardware/software for boat ePaper display.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [d3kOS](https://github.com/SkipperDon/d3kOS) - Raspberry Pi based navigation and automation platform.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [DiscoTime](https://github.com/cr/discotime/) - Time and lat/long dashboard for long distance passages.
- [FrothFet](https://frothfet.com) - Open source hardware and software for digital switching boat DC loads.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Galadriel Plotter](https://github.com/VladimirKalachikhin/Galadriel-map) - Raster based chartplotter for low power servers.
- [GWeatherRouting](https://gweatherrouting.org) - Navigation and automated routing, Python/GTK4.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Helm](https://github.com/StevenRidder/helm-public) - Clean-room re-engineered OpenCPN equivalent, alpha as of Q3/2026.
- [Ilma](https://ilma.sailorslog.io) - Software based Navtex receiver for Raspberry Pi or similar.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [imud](https://github.com/richcreations/imud) - IMU (Inertial Measurement Unit)/Magnetometer multiplexer with NMEA stream for chartplotters.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [libWeatherRouting](https://dakk.github.io/libweatherrouting/) - Python weather routing library with linear iso-routing and shortest path routes.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Marine Chart Viewer](https://github.com/wholybee/chartplotter) - QT6 based chart plotter for Windows, Linux and macOS. Displays ENC and CM93 charts and GSHHG basemap.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [MarineYachtRadar](https://github.com/MarineYachtRadar) - *MaYaRa* server, display, OpenCPN and SignalK integration as open alternative to commercial radar processing.
- [Marinux](https://marinux.tuxfamily.org) - *Muplex* NMEA multiplexer, *Xinutop* marine Linux distro, *OSD Depth* echo-sounder display.
- [OpenCPN](https://opencpn.org) - Chart Plotter for macOS, Windows, Linux, Raspi and Android.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Open Marine Systems](https://github.com/OpenMarineSystems) - Home Assistant add-ons for navigation and anchor watch, installed via HACS.
- [Open Boat Projects](https://open-boat-projects.org/en/) - DIY hardware and open source projects, English and German.
- [OpenPlotter](https://openplotter.readthedocs.io/) - Combined project of SignalK, OpenCPN, PyPilot etc.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [PyGPSClient](https://github.com/semuconsulting/PyGPSClient) - Python GPS/GNSS testing, diagnostic and configuration, incl NMEA integration.
- [PyPilot](https://pypilot.org) - Python based auto-pilot.
- [Rhizomatics Sailing](https://www.rhizomatics.org.uk/sailing/) - SignalK, picoware and Home Assistant plug-ins and associated apps, including integrations for eInk Electronic Shelf Labels, Teltonika modems and Bluetti power stations.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [ROB](https://github.com/OlivierLD/ROB) - Raspberry Pi On Board, Java and Python navigation utilities.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Sail-O-Vision](https://github.com/adam-gol/sail-o-vision) - Obstacle and wildlife detection with camera and NVIDIA Jetson.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Sailtrack](https://metisvela.github.io/sailtrack/) - Modular racing performance tracker using MQTT.
- [Seamark](https://seamark.app/?utm_source=boat-tech-directory&utm_medium=listing&utm_campaign=awesome-list) - 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.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Shipboard Situational Awareness](https://github.com/shipboard-sa) - Software stack for monitoring and automating a boat, based on SignalK and ESP32.
- [Smart Boat Innovations](https://smartboatinnovations.com) - Videos and articles on building a Raspberry Pi and Home Assistant based smart boat.
- [X Engineering](https://xengineering.net) - Open-source alternator regulator for lithium battery systems. Open hardware, <img src="../images/icons/github.ico" alt="" width="16" height="16"> [GitHub project](https://github.com/markliquid1/Regulator2026-public).
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Xilje](https://github.com/Djaahny) - Garmin integration projects, incl plotter display of local web apps and PyPilot integration.
- [Yacht Management Software (YMS)](https://yms.hoogi.de) - Open-source, self-hosted yacht management software for sailing boats, designed for Raspberry Pi/Linux and offline operation.


### AIS

- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [AIS-catcher](https://github.com/jvde-github/AIS-catcher) - AIS receiver for software defined radio (SDR) dongles.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [AIStk](https://github.com/irmina-d/AIStk) - AIS data analysis toolkit. Python library.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Maiana](https://github.com/peterantypas/maiana) - AIS Transponder open hardware/software.
- [OpenAIS](https://open-ais.org/) - tools, database and blog for spatial analysis of AIS data, <img src="../images/icons/gitlab.png" alt="" width="16" height="16"> [code](https://gitlab.com/openais).
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [pico-ais-reporter](https://github.com/rhizomatics/pico-ais-reporter) - Tiny AIS reporter in shell script, suitable for running on a GPS equipped router.

### ESP32

<!--lint disable double-link-->
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Boating with the Baileys](https://github.com/Boatingwiththebaileys) - ESP32 projects for marine displays and engine monitor interfacing with SignalK and NMEA2000. Source code to accompany <img src="../images/icons/youtube.ico" alt="" width="16" height="16"> [vlog](https://www.youtube.com/@BoatingwiththeBaileys)
<!--lint enable double-link-->
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [BoatOpenIO](https://github.com/bigbrainlabs/BoatOpenIO) - ESP-32 16-channel analog marine gateway for legacy VDO sensors, integrating analog instruments to MQTT and SignalK.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [BrineOMatic](https://github.com/hoeken/brineomatic) - Watermaker controller for ESP32, open source hardware and software, integrates with SignalK and Home Assistant.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [espos-ble-gateway](https://github.com/dirkwa/espos-ble-gateway) - SignalK BLE Gateway for ESP32 devices with 16Mb or more memory.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [ESP32 NMEA2000 Multiprotocol Gateway](https://github.com/JaCharer/ESP32_NMEA2000_Multiprotocol_Gateway) - Broadcast N2K as Signal K, NMEA 0183, and Actisense Binary. WebGUI. Begun in 2026.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [ESP32 NMEA2000](https://github.com/wellenvogel/esp32-nmea2000) - NMEA2000 integration with USB, Wifi, 0183 on M5 Atom CAN and compatible with other ESP32.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Head-UP Marine Display](https://github.com/MikeP-NZ/Head-up-display) - ESP32 and HUB75 LED matrix panel based display for use as on-mast racing performance data.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [NMEA2000](https://github.com/ttlappalainen/NMEA2000) - Arduino NMEA2000 interfacing library used in several commercial products.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [NMEA2000_ais_wifi_gw](https://github.com/sailingfree/NMEA2000_ais_wifi_gw) -  ESP32 based NMEA2000 gateway.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [NMEA2000_esp32](https://github.com/ttlappalainen/NMEA2000_esp32) - ESP32 objects for use with NMEA2000 library.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [NMEA 2000 Display on ESP32S3](https://github.com/FrancisSailor/NMEA2000-DISPLAY-on-ESP32S3) - Wind, speed, autopilot and alarms, designed for Waveshare ESP32-S3-Touch-LCD-4 display.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Outlook Guardian](https://github.com/OpenFairWind/S3-Outlook-Guardian) - Read SignalK vessel alarms out loud.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [pico-ble-proxy](https://github.com/rhizomatics/pico-ble-proxy) - A minimal BLE proxy suitable for remote monitoring of BLE sensors like Victron, temperature etc on boats using Home Assistant.
- [Sens32](https://signalk.org/SensESP/) - Sensor development framework for ESP32 based sensors by SignalK.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [SkippersWatch](https://github.com/mkvesala/ESP32-Waveshare-SkippersWatch) - Waveshare ESP32 based wristwatch for SignalK data.

### Operating Systems
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Bareboat Necessities](https://bareboat-necessities.github.io/my-bareboat/bareboat-os.html) - All in one operating system, incorporating OpenCPN, SignalK, PyPilot etc plus open source hardware projects.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [BoatOS](https://github.com/bigbrainlabs/BoatOS) - Marine operating system for Raspberry Pi, navigation, AIS, engine monitoring, logbook and weather.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Venus](https://github.com/victronenergy/venus) - Victron Energy's open source OS for their GX products, available for self-hosting on Raspberry Pi.

### SignalK

- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Boat Instrument](https://github.com/philseeley/boatinstrument) - Cross platform instrument for display SignalK data on Android, iOS, Linux(ARM/X86/AMD/RPi), macOS and Windows.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [eInk Labels for SignalK](https://github.com/rhizomatics/signalk-einklabel-plugin) - 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.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Homebridge SignalK](https://github.com/Krillle/homebridge-signalk) - Homebridge plugin exposing SignalK batteries, tanks, temperatures and switching to Apple HomeKit.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Kip](https://github.com/mxtommy/Kip) - SignalK dashboard / instrument display.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [OpenFairWind](https://github.com/OpenFairWind) - Alternative user interface, QT based, *FairwindSK* for SignalK on macOS, Windows, Linux, Android, iPhoje and iPad.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [pysk](https://github.com/ph1l/pysk) - Terminal (ncurses) client to display streaming SignalK data, last updated 2022.
- [SignalK](https://signalk.org) - Specification, implementation and community for boat data distribution and analysis.
- [SignalK Applications and Solutions](https://signalk.org/solutions/) - SignalK Project's list of apps and other products with SignalK support.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [Signal K Mobile](https://github.com/itemir/signalk_mobile) - Open source Ionic mobile app for iOS and Android, last updated 2018.
- [SignalK Plugins](https://www.npmjs.com/search?q=keywords:signalk-node-server-plugin) - Over 570 plugins, and over 170 web apps, available on the public NPM registry. Install via the SignalK built-in *App Store*.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [signalk-server](https://github.com/SignalK/signalk-server) - Node.js pluggable framework implementing the SignalK specification.
- <img src="../images/icons/pypi.ico" alt="" width="16" height="16"> [signalk-cli](https://pypi.org/project/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.

### NMEA

<!--lint disable no-repeat-punctuation code-block-style-->
:::note[Not all NMEA is what it seems]
A tiny subset of NMEA 0183 is used for GPS integration on almost all devices that handle GPS, including mobile phones, and so has vastly more usage than marine NMEA use cases. Hence, not everything labelled 'NMEA' may be useful in a boating context.
:::
<!--lint enable no-repeat-punctuation code-block-style-->

#### Plotter Integration

See also [OpenCPN NMEA Tools](https://opencpn.org/wiki/dokuwiki/doku.php?id=opencpn:supplementary_software:nmea_instruments).
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [TwoCan](https://github.com/TwoCanPlugIn/TwoCanPlugIn) - NMEA2000 integration for OpenCPN.

#### Tools and CLIs

- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [CAN Boat](https://github.com/canboat/canboat) - NMEA2000 and NMEA 0183 CLI utilities.
- <img src="../images/icons/gitlab.png" alt="" width="16" height="16"> [gpsd](https://gpsd.gitlab.io/gpsd/index.html) - GPS and AIS daemon wrapping NMEA0183 in its own simpler format. C, Python. Ubiquitous.
- [gypsy](https://gypsy.freedesktop.org) - Multiplexer for GPS NMEA data, daemon and C library, alternative to gpsd.
- [KPlex](https://www.stripydog.com/kplex/) - NMEA0183 multiplexer for Linux, Unix, macOS and OpenWRT. ([Google Group](https://groups.google.com/g/kplex)).
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [nm2k](https://github.com/svalentinf/nm2k) - NMEA0183 and NMEA2000 web based visualization and analysis.


#### C and C++

- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [minmea](https://github.com/kosma/minmea) - GPS NMEA0183 parser in C.

#### C#

- [OpenSkipper](https://openskipper.org) - C# based NMEA2000, NMEA0183 and AIS integration, last updated 2023.

#### GoLang

- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [go-nmea](https://github.com/adrianmo/go-nmea) - NMEA 0183 sentence parser.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [nmea0183](https://github.com/martinmarsh/nmea0183) - NMEA 0183 sentence parser, with Actisense integration examples.

#### JavaScript

- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [canboatjs](https://github.com/canboat/canboatjs) - Native CAN Bus / NMEA 2000 interfacing.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [nmea-simple](https://github.com/101100/nmea-simple) - NMEA 0183 sentence parser. Fork of the now deprecated `nmea` package.

#### Python

Lots more libraries and tools can be found on PyPI, for example <img src="../images/icons/pypi.ico" alt="" width="16" height="16"> [NMEA](https://pypi.org/search/?q=nmea)-related. Selection limited to ones recently active in 2026.

- <img src="../images/icons/pypi.ico" alt="" width="16" height="16"> [nmea2000](https://pypi.org/project/nmea2000/) - NMEA 2000 encoder and decoder.
- <img src="../images/icons/pypi.ico" alt="" width="16" height="16"> [pyais](https://pypi.org/project/pyais/) - AIS specific NMEA 0183 parser and encoder, with streaming server.
- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [pynmea2](https://github.com/Knio/pynmea2) - NMEA 0183 sentence parser.
- <img src="../images/icons/gitlab.png" alt="" width="16" height="16"> [nmeasim](https://gitlab.com/nmeasim/nmeasim) - NMEA/GNSS receiver simulator.

#### Rust

- [nmea crate](https://crates.io/crates/nmea) - NMEA 0183 sentence parser.

#### Swift

- <img src="../images/icons/github.ico" alt="" width="16" height="16"> [NMEAParser](https://github.com/sindreoyen/NMEAParser) - iOS and macOS NMEA 0183 parser and validator.