Offline navigation, engine monitoring, AIS, logbook and weather on a Raspberry Pi. ~€250 in hardware instead of €2,000+ for commercial chartplotters. Flash, boot, sail.
Offline-Navigation, Motorüberwachung, AIS, Logbuch und Wetter auf dem Raspberry Pi. ~250 € Hardware statt 2.000 €+ für kommerzielle Kartenplotter. Flashen, booten, segeln.
Stable v1.7.3 · beta channel carries the v1.8 pre-releases · OTA updater built in Stable v1.7.3 · Beta-Kanal führt die v1.8-Vorabversionen · OTA-Updater eingebaut
Everything you need to digitise an old boat — from the operating system to the sensor hardware to the heating control.
Alles, was du brauchst, um ein altes Boot zu digitalisieren — vom Betriebssystem über die Sensorhardware bis zur Heizungssteuerung.
Complete marine operating system on Raspberry Pi. Offline navigation, official inland charts, AIS, engine monitoring, automatic logbook, weather and water level integration.
Komplettes Marine-Betriebssystem auf dem Raspberry Pi. Offline-Navigation, amtliche Binnenkarten, AIS, Motorüberwachung, automatisches Logbuch, Wetter- und Pegelintegration.
Raspberry Pi 3/4/5 Flutter + PythonModular universal marine IO system. 16 channels, stackable mini-boards per channel for voltage dividers, pull-ups, optocouplers and pulse counters.
Modulares universelles Marine-IO-System. 16 Kanäle, stapelbare Mini-Boards je Kanal für Spannungsteiler, Pull-ups, Optokoppler und Impulszähler.
ESP32 + ADS1115 MQTTModular frost protection for valves and pipes. Hinged heating rings, click mounting, centrally controlled via a BoatOpenIO extension board — each ring switchable on its own from the BoatOS dashboard.
Modularer Frostschutz für Ventile und Leitungen. Scharnierende Heizringe, Klick-Montage, zentral über ein BoatOpenIO-Erweiterungsboard gesteuert — jeder Ring einzeln aus dem BoatOS-Dashboard schaltbar.
12V DC 3D printed ASAAutomatic satellite dish alignment with real-time tracking — holds the satellite even under way. Compass-based absolute azimuth tracking, stepper for azimuth, servo for elevation. ~€150 DIY versus €3,000+ commercial.
Automatische Satellitenausrichtung mit Echtzeit-Tracking — hält den Satelliten auch während der Fahrt. Absolutes Azimut-Tracking über Kompass, Schrittmotor für Azimut, Servo für Elevation. ~150 € DIY gegenüber 3.000 €+ kommerziell.
ESP32-C3 + IMU 3D printedNo subscriptions. No cloud dependency. Everything runs locally on the Pi — offline first, always. Items marked Beta ship on the beta update channel, Dev is still in the development branch.
Keine Abonnements. Keine Cloud-Abhängigkeit. Alles läuft lokal auf dem Pi — offline-first, immer. Punkte mit Beta laufen im Beta-Update-Kanal, Dev steckt noch im Entwicklungszweig.
OpenSeaMap vector tiles stored locally on SSD. Works without mobile signal. Fairways, locks, buoys — all offline.
OpenSeaMap-Vektorkacheln lokal auf SSD. Funktioniert ohne Mobilfunk. Wasserstraßen, Schleusen, Tonnen — alles offline.
OSRM tuned for rivers and canals — not roads. Locks along the route with opening hours and phone numbers, ETA including lock waiting time and current.
OSRM auf Flüsse und Kanäle getrimmt — nicht auf Straßen. Schleusen entlang der Route mit Betriebszeiten und Telefonnummern, ETA inklusive Schleusenwartezeit und Strömung.
Inland ENC from the German waterways authority (ELWIS), downloaded and converted on the Pi. Depth areas, fairway, bridges and weirs with clearance heights, CEVNI signs, buoyage, kilometre marks — in Deck and Helm.
Amtliche Inland-ENC der WSV (ELWIS), auf dem Pi geladen und konvertiert. Tiefenbereiche, Fahrrinne, Brücken und Wehre mit Durchfahrtshöhen, CEVNI-Zeichen, Betonnung, Kilometrierung — in Deck und Helm.
Every calculated route is checked against the official chart data: bridges too low for your air draft, shallows against your draft — corrected by the live water level — and weirs. Shown as markers plus a warning panel.
Jede berechnete Route wird gegen die amtlichen Kartendaten geprüft: zu niedrige Brücken für deine Durchfahrtshöhe, Flachstellen gegen den Tiefgang — korrigiert um den Live-Pegel — und Wehre. Als Marker plus Warn-Panel.
Other vessels on the chart in real time. Via AISStream.io over internet or local USB AIS receiver.
Andere Schiffe in Echtzeit auf der Karte. Über AISStream.io per Internet oder lokalen USB-AIS-Empfänger.
Battery, oil temp, oil pressure, coolant, RPM — all live. Alarms when something is wrong. Works with old analogue VDO sensors.
Batterie, Öltemp, Öldruck, Kühlwasser, Drehzahl — alles live. Alarm wenn etwas nicht stimmt. Funktioniert mit alten analogen VDO-Gebern.
Every trip recorded automatically — GPS track, sensor data, weather snapshot. After one season: a complete record.
Jede Fahrt automatisch aufgezeichnet — GPS-Track, Sensordaten, Wetter-Snapshot. Nach einer Saison: ein vollständiges Protokoll.
Official DWD severe weather warnings (via Bright Sky), OpenWeather optional. Weather follows your actual position. PEGELONLINE water levels for inland waterways — live.
Amtliche DWD-Unwetterwarnungen (über Bright Sky), OpenWeather optional. Wetter folgt der tatsächlichen Position. PEGELONLINE-Pegelstände für Binnenwasserstraßen — live.
Helm: Flutter native on the touchscreen. Deck: browser frontend — open on any phone, no install needed.
Helm: Flutter nativ auf dem Touchscreen. Deck: Browser-Frontend — auf jedem Handy öffnen, keine Installation nötig.
Man-overboard and emergency button in both Helm and Deck. One tap, position logged, alarm triggered.
Mann-über-Bord- und Notfall-Button in Helm und Deck. Ein Tipp, Position gespeichert, Alarm ausgelöst.
MPU6050 logs every impact with timestamp, GPS position and severity. Born from an unplanned encounter with a rock.
MPU6050 protokolliert jeden Aufprall mit Zeitstempel, GPS-Position und Schwere. Entstanden aus einer unbeabsichtigten Begegnung mit einem Felsen.
MBTiles Creator tool for Windows — no Python, no terminal. Select region, create map, upload to Pi. Done. Several regions side by side, switchable in Deck.
MBTiles-Creator-Tool für Windows — kein Python, kein Terminal. Region auswählen, Karte erstellen, auf den Pi laden. Fertig. Mehrere Regionen nebeneinander, in Deck umschaltbar.
Three brightness stages down to a red-light theme with a red chart filter — keeps your night vision intact on a dark bridge.
Drei Helligkeitsstufen bis zum Rotlicht-Theme samt Rotfilter über der Karte — die Nachtsicht bleibt im dunklen Steuerhaus erhalten.
Harbours and anchorages as pins with berths, VHF channel and services — pre-imported every 48 h, so they work offline. Tidal curve of the nearest gauge with trend and last high/low water.
Häfen und Ankerplätze als Pins mit Liegeplätzen, UKW-Kanal und Service — alle 48 h vorab importiert, damit sie offline funktionieren. Tidenkurve der nächsten Pegelstation mit Trend und letztem Hoch-/Niedrigwasser.
Wind arrows at each waypoint showing the forecast for its own ETA, colour-coded by strength, with gusts in the popup. Cached to file, so it stays usable without internet.
Windpfeile an jedem Stützpunkt — je Punkt die Vorhersage zur eigenen ETA, farbcodiert nach Stärke, Böen im Popup. Datei-Cache, damit es ohne Internet nutzbar bleibt.
The built-in updater has two channels. Stay on stable, or switch to beta in the settings to get new features early — one tap, both directions.
Der eingebaute Updater hat zwei Kanäle. Auf Stable bleiben oder in den Einstellungen auf Beta wechseln, um neue Funktionen früher zu bekommen — ein Tipp, in beide Richtungen.
A tilted head-up look-ahead perspective of the fairway in front of you — with buoys, beacons and inland traffic signs as real 3D objects, built straight from the official chart data.
Eine gekippte head-up-Perspektive der Fahrrinne voraus — mit Tonnen, Baken und Schifffahrtszeichen als echte 3D-Objekte, direkt aus den amtlichen Kartendaten gebaut.
Colours, shapes and topmarks come from the chart attributes of each mark — not from a lookup table of pretty pictures. What you see is what the chart says.
Farben, Formen und Toppzeichen kommen aus den Kartenattributen der jeweiligen Marke — nicht aus einer Tabelle hübscher Bilder. Was zu sehen ist, steht so in der Karte.
Inland traffic signs are rendered as boards carrying the official CEVNI artwork, turned to their real reading direction.
Schifffahrtszeichen erscheinen als Tafeln mit der amtlichen CEVNI-Grafik, gedreht in ihre echte Leserichtung.
Rendered with three.js as a MapLibre custom layer, drawn with instancing so hundreds of marks cost a handful of draw calls. Verified on the target Raspberry Pi.
Gerendert mit three.js als MapLibre-Custom-Layer, per Instancing gezeichnet — hunderte Marken kosten eine Handvoll Draw-Calls. Auf dem Ziel-Raspberry-Pi verifiziert.
Currently in the v1.9 development branch — not in the stable image yet.
Aktuell im Entwicklungszweig v1.9 — noch nicht im Stable-Image.
No Linux knowledge required. No terminal. No setup wizard. Flash, boot, done.
Keine Linux-Kenntnisse erforderlich. Kein Terminal. Kein Setup-Assistent. Flashen, booten, fertig.
Get the latest BoatOS image from archive.org (~7.5 GB). The image contains everything — OS, all services, map data for Germany, OTA updater. Anything newer than the image is pulled in later by the updater.
Lade das neueste BoatOS-Image von archive.org (~7,5 GB). Das Image enthält alles — OS, alle Dienste, Kartendaten für Deutschland, OTA-Updater. Alles Neuere als das Image holt der Updater später nach.
⬇ boatos_v1.7.0.img.gzUse Balena Etcher (free, Windows/Mac/Linux) — select the .img.gz file, select your SSD or SD card, click Flash. Like flashing any USB stick.
Nutze Balena Etcher (kostenlos, Windows/Mac/Linux) — .img.gz-Datei auswählen, SSD oder SD-Karte auswählen, Flash klicken. Wie das Flashen eines USB-Sticks.
After flashing, open the SSD/SD card on your computer and edit wlan.txt in the root directory:
Nach dem Flashen die SSD/SD-Karte am Computer öffnen und wlan.txt im Hauptverzeichnis bearbeiten:
Insert the SSD/SD into the Pi, connect the touchscreen and GPS mouse, power on. BoatOS boots automatically. GPS position appears once the mouse has a fix.
SSD/SD in den Pi einsetzen, Touchscreen und GPS-Maus anschließen, einschalten. BoatOS startet automatisch. GPS-Position erscheint, sobald die Maus einen Fix hat.
Connect your device to the same network as the Pi, open a browser, type the Pi's IP address. Deck opens — full chart and monitoring in the browser.
Gerät mit demselben Netzwerk wie der Pi verbinden, Browser öffnen, IP-Adresse des Pi eingeben. Deck öffnet — vollständige Karte und Monitoring im Browser.
BoatOS has a built-in OTA updater. New versions are applied on demand from the settings menu — no reflashing needed. Pick your channel under Settings → System → Update channel: stable for released versions, beta to get the v1.8 pre-releases early. You can switch back at any time.
BoatOS hat einen eingebauten OTA-Updater. Neue Versionen werden auf Anforderung über das Einstellungsmenü eingespielt — kein Neuflashen erforderlich. Kanal wählen unter Einstellungen → System → Update-Kanal: stable für freigegebene Versionen, beta für die v1.8-Vorabversionen. Der Wechsel geht jederzeit in beide Richtungen.
Detailed instructions for each project in the ecosystem.
Detaillierte Anleitungen für jedes Projekt im Ökosystem.
Recommended: Raspberry Pi 4 (4GB), 10.1" HDMI touchscreen, BU-353N5 GPS mouse, 128GB SSD, DC-DC 12V→5V converter. Also supported: Pi 3B+, Pi 5, Zero 2W.
Empfohlen: Raspberry Pi 4 (4 GB), 10,1" HDMI-Touchscreen, BU-353N5 GPS-Maus, 128 GB SSD, DC-DC 12V→5V-Wandler. Auch unterstützt: Pi 3B+, Pi 5, Zero 2W.
The updater knows two channels, switchable under Settings → System in both Helm and Deck:
Der Updater kennt zwei Kanäle, umschaltbar unter Einstellungen → System in Helm und Deck:
Switching back to stable is safe — the updater picks the newest version of the selected channel, so the next stable release brings you back onto the released line.
Der Rückweg auf stable ist unkritisch — der Updater nimmt die neueste Version des gewählten Kanals, das nächste Stable-Release holt dich also wieder auf die freigegebene Linie.
Not needed on the v1.7.0 image. If OTA update hangs on an older image, run this once via terminal or PowerShell:
Beim v1.7.0-Image nicht nötig. Falls der OTA-Update auf einem älteren Image hängt, einmalig im Terminal oder PowerShell ausführen:
Default password: boatos123 (change this!). Then start the update from Helm or Deck settings.
Standard-Passwort: boatos123 (bitte ändern!). Danach Update in den Helm- oder Deck-Einstellungen starten.
BoatOpenIO is a modular sensor IO system for connecting old analogue marine sensors (VDO temperature, oil pressure, tank senders) to BoatOS via MQTT. 16 channels, stackable mini-boards per channel for signal conditioning.
BoatOpenIO ist ein modulares Sensor-IO-System zum Anschluss alter analoger Bordsensoren (VDO-Temperatur, Öldruck, Tankgeber) an BoatOS via MQTT. 16 Kanäle, stapelbare Mini-Boards je Kanal zur Signalaufbereitung.
Always verify which mini-board is plugged into which channel before applying power. Connecting 12V directly to a pull-up channel (instead of through a voltage divider) will destroy the MUX, all ADS1115 and the ESP32 through I2C chain reaction. Cost: ~€50. The protection circuit (Zener diodes) is planned for the final PCB version.
Immer prüfen, welches Mini-Board in welchem Kanal steckt, bevor Spannung angelegt wird. 12V direkt an einen Pull-up-Kanal (statt über Spannungsteiler) zerstört durch I2C-Kettenreaktion MUX, alle ADS1115 und den ESP32. Kosten: ~50 €. Die Schutzschaltung (Zener-Dioden) ist für die finale PCB-Version geplant.
On first boot, BoatOpenIO opens a WiFi access point BoatOpenIO-Setup. Connect with your phone, open 192.168.4.1, enter WiFi and MQTT credentials. BoatOS auto-discovers all sensor channels.
Beim ersten Start öffnet BoatOpenIO den WLAN-Zugangspunkt BoatOpenIO-Setup. Mit dem Handy verbinden, 192.168.4.1 aufrufen, WLAN- und MQTT-Zugangsdaten eingeben. BoatOS erkennt alle Sensorkanäle automatisch.
Modular frost protection heating rings for valves and pipes. Hinged clamshell design, velcro fastening, 12V heating foil (14W per ring), ESP32 controller with MQTT and BoatOS integration.
Modulare Frostschutz-Heizringe für Ventile und Leitungen. Scharnier-Klappschale, Klett-Befestigung, 12V-Heizfolie (14 W je Ring), ESP32-Controller mit MQTT und BoatOS-Integration.
Print in ASA (heat resistant to ~95°C, UV stable) or PETG as alternative. Do not use PLA — softens above 60°C. STL files and print parameters in the GitHub repository.
Druck in ASA (hitzebeständig bis ~95 °C, UV-stabil) oder PETG als Alternative. Kein PLA — erweicht ab 60 °C. STL-Dateien und Druckparameter im GitHub-Repository.
ValveHeater sends all data via MQTT. BoatOS auto-discovers the topics and displays temperature, ring status, and remote control buttons in the dashboard.
ValveHeater sendet alle Daten per MQTT. BoatOS erkennt die Topics automatisch und zeigt Temperatur, Ring-Status und Fernsteuerungs-Buttons im Dashboard.
Standalone Windows tool for creating offline map tiles. No Python, no terminal required. Shipped with every release — the link below always fetches the current one.
Eigenständiges Windows-Tool zum Erstellen von Offline-Kartenkacheln. Kein Python, kein Terminal erforderlich. Liegt jedem Release bei — der Link unten holt immer die aktuelle Fassung.
BoatOS holds several map regions at once. Upload several .mbtiles files and switch between them in Deck. Since v1.7 the routing graph follows the region — change the map, and routes are calculated on that region's waterways.
BoatOS hält mehrere Kartenregionen gleichzeitig vor. Mehrere .mbtiles-Dateien hochladen und in Deck zwischen ihnen wechseln. Seit v1.7 folgt der Routing-Graph der Region — Karte wechseln, und Routen werden auf den Wasserstraßen dieser Region berechnet.
Experienced users can download .mbtiles files directly from OpenSeaMap or create them with tilemaker on Linux/Mac.
Erfahrene Nutzer können .mbtiles-Dateien direkt von OpenSeaMap herunterladen oder mit tilemaker unter Linux/Mac erstellen.
Beyond the OpenStreetMap-based offline maps, BoatOS can use the official Inland ENC published by the German waterways administration (WSV) via ELWIS. These are the same charts the professional inland skippers use — and they are free.
Neben den OpenStreetMap-basierten Offline-Karten kann BoatOS die amtlichen Inland-ENC der Wasserstraßen- und Schifffahrtsverwaltung (WSV) über ELWIS nutzen. Das sind dieselben Karten, mit denen die Berufsschifffahrt fährt — und sie sind kostenlos.
Beta This is part of the v1.8 line. Switch the update channel to beta in Settings → System to get it.
Beta Gehört zur v1.8-Linie. Update-Kanal in Einstellungen → System auf beta stellen, um sie zu bekommen.
Enter your height and draft once under Settings → Boat. After every route calculation BoatOS checks the route against the chart data and flags bridges you do not fit under, shallows below your draft — corrected by the live water level — and weirs. Warnings appear as markers on the chart plus a list you can walk through.
Höhe und Tiefgang einmalig unter Einstellungen → Boot eintragen. Nach jeder Routenberechnung prüft BoatOS die Route gegen die Kartendaten und markiert Brücken, unter die das Boot nicht passt, Flachstellen unter dem Tiefgang — korrigiert um den Live-Pegel — und Wehre. Die Warnungen erscheinen als Marker auf der Karte plus als Liste zum Durchgehen.
ELWIS covers the German federal waterways. Outside Germany BoatOS falls back to the OpenStreetMap/OpenSeaMap layers described in the Offline Maps tab.
ELWIS deckt die deutschen Bundeswasserstraßen ab. Außerhalb Deutschlands greift BoatOS auf die OpenStreetMap-/OpenSeaMap-Ebenen aus dem Reiter Offline-Karten zurück.
Active communities across multiple platforms. Ask questions, share builds, contribute code.
Aktive Communities auf mehreren Plattformen. Fragen stellen, Builds teilen, Code beitragen.
Source code, issues, releases
Quellcode, Issues, Releases
Professional marine open source community
Professionelle marine Open-Source-Community
Updates, builds, discussions
Updates, Builds, Diskussionen
Project page and build logs
Projektseite und Build-Logs
German sailing community (OBP section)
Deutsche Segelgemeinschaft (OBP-Bereich)
Soon: complete DIY kits (some soldering still on you) and fully assembled boards
Demnächst: komplette DIY-Bausätze (etwas löten bleibt) und fertig bestückte Boards
This project is free and stays free. That works because people put their time, their equipment or their money into it. The names below are also shown inside BoatOS, under Settings → About.
Dieses Projekt ist kostenlos und bleibt es. Das geht, weil Leute ihre Zeit, ihre Technik oder ihr Geld hineinstecken. Die Namen unten stehen auch in BoatOS selbst, unter Einstellungen → Über.
Scans components in 3D so that housings, brackets and adapters can be designed to actually fit — instead of being measured by hand and reprinted three times.
Scannt Bauteile in 3D, damit Gehäuse, Halterungen und Adapter passgenau konstruiert werden können — statt von Hand gemessen und dreimal nachgedruckt zu werden.
Circuit board manufacturing for the BoatOpenIO boards and the mini-board family.
Leiterplattenfertigung für die BoatOpenIO-Boards und die Mini-Board-Familie.
pcbway.com ↗Hardware to test, a skill to lend, or a few euros a month — all of it moves the project forward, and all of it gets credited.
Hardware zum Testen, eine Fähigkeit, die du beisteuerst, oder ein paar Euro im Monat — alles bringt das Projekt weiter, und alles wird genannt.
GitHub Sponsors ↗ Patreon ↗The book series documents every project in this ecosystem — the ideas, the failures, the detours, and the solutions. Honest, self-deprecating, technically correct.
Die Buchserie dokumentiert jedes Projekt in diesem Ökosystem — die Ideen, die Fehler, die Umwege und die Lösungen. Ehrlich, selbstironisch, technisch korrekt.
If you find this project useful, buying the books is the best way to support it. It helps me keep developing BoatOS, test new hardware, and fund the next components to implement.
Wenn du dieses Projekt nützlich findest, ist der Kauf der Bücher der beste Weg, es zu unterstützen. Es hilft mir, BoatOS weiterzuentwickeln, neue Hardware zu testen und die nächsten Komponenten zu finanzieren.
"Find this useful? Buy a book or the series — it helps keep the project moving forward." 🙏 „Findest du das nützlich? Kauf ein Buch oder die Serie — damit hilfst du, das Projekt weiterzutreiben." 🙏📚 Buy on Amazon → 📚 Auf Amazon kaufen →
Not a reader? You can also support the work directly: Kein Lesetyp? Du kannst die Arbeit auch direkt unterstützen: 💜 GitHub Sponsors 🎗️ Patreon