BoatOS is a complete marine operating system built on Raspberry Pi. It started as an experiment in AI-assisted development – and ended up as a full marine OS with offline navigation, live sensor monitoring, AIS, weather integration, a custom dashboard system, and a logbook that writes itself.
The boat: a 1989 motorboat with dead instruments, a lying fuel gauge and analogue VDO sensors that nobody has datasheets for anymore. The budget: €250 for hardware. The alternative: €2,000+ for a Raymarine chartplotter.
Architecture
Two frontends, one backend:
Helm – Flutter native app running directly on the Pi, fullscreen on the dashboard touchscreen. Fast, stable, always there.
Deck – Browser frontend. No install, no app. Type the IP address on any phone or tablet and you have full access to the chart, sensors and logbook.
Backend – FastAPI + WebSocket + MQTT (Mosquitto). The invisible heart that connects everything: GPS via SignalK, sensors via MQTT, routing via OSRM, weather via OpenWeatherMap, water levels via PEGELONLINE, AIS via AISStream.io.
Navigation
Offline-first. Always.
MapLibre renders OpenSeaMap vector tiles stored locally on the SSD. No mobile coverage needed. No subscription. No monthly fee. Fairways, locks, buoys, shallows – all there, all offline.
OSRM runs locally as a waterway routing engine built from OpenStreetMap data. Route from A to B, calculate travel time, simulate the route at ×1000 speed before departure.
AIS shows other vessels in real time on the chart. Came in very useful when a 110-metre cargo vessel came around a bend in zero visibility. 90 seconds warning instead of 15.
Engine Monitoring
ESP32 + 2× ADS1115 reads the existing VDO sensors directly. No expensive NMEA2000 interface needed.
Battery voltage, oil temperature, oil pressure, coolant temperature, RPM – all live on the dashboard. All calibrated empirically, because 1989 VDO sensor datasheets are not easy to Google.
The impact detection sensor (MPU6050) wasn't planned. It became a feature after an unplanned encounter with a rock in zero visibility during a delivery trip. The coffee flew. Everyone was okay. The MPU6050 registered a G-value that didn't fit any normal sailing situation. Now every impact is logged with timestamp, position, G-value and severity level (LIGHT / MODERATE / SEVERE / CRITICAL).
Logbook
Automatic. Every trip is recorded without thinking about it: GPS track, sensor data, events, weather snapshot at departure, water levels along the route. After one season: a complete record of everywhere you've been.
Dashboard
Custom widget system with a built-in editor. Configure your display without touching code. Gauge widgets, sensor cards, horizon widget showing tilt and impact warnings. Export and import layouts. All sensor topics from SignalK and MQTT are auto-discovered and selectable.
SOS / MOB Button
Man-overboard and emergency button integrated in both Helm and Deck.
In Development – BoatOpenIO
Modular universal marine IO system. Main board with ESP32 + up to 4× ADS1115 + CD74HC4067 MUX (16 channels). All components on sockets – no soldering needed for replacements. Stackable mini-boards per channel (voltage divider, pull-up/down, Schmitt trigger, optocoupler, pulse counter). Fully configurable via JSON. Coming soon as its own repository.
Open Source
Everything. Code, schematics, firmware, configuration, ready-to-use image. Free. Forever. Including commercial use.
If you'd like to support the project, check out the book series "Logbook Without Posing" on Amazon – where the whole story is documented, including all the mistakes, detours and the rock.
github.com/bigbrainlabs/BoatOS
"Made by hand means knowing what's inside and keeping it affordable."
Maik


Zymbit
Raymond
Laurence