Your boat's instruments,
on a €50 screen you build.
Wind, navigation, batteries, solar, tanks, anchor watch with phone alarms, AIS collision monitoring, and full sailing-performance analysis — one clean panel, running on a Raspberry Pi in your nav station. No subscription. No cloud you don't control.
A Victron panel shows you Victron. This shows you the whole boat.
Victron's GX Touch is excellent — for Victron gear. But your wind, depth, heading, AIS, and tank senders live on the NMEA 2000 network, and the Cerbo barely speaks it. One Raspberry Pi reads everything — and costs a third as much.
Cerbo GX + GX Touch 50
- Battery, solar, and Victron devices — beautifully
- Limited NMEA 2000 — no real wind/depth/AIS dashboard
- No anchor watch with phone alarms
- No sailing-performance analysis
- Closed ecosystem, fixed feature set
Oroboro Dashboard on a Pi
- Wind, nav, depth, batteries, solar, tanks — one panel
- Reads the entire NMEA 2000 network via Signal K
- Anchor watch + AIS Guardian, alarms to your phone
- Polar performance analyzer built in
- Open source — change anything, owe nothing
Your whole boat, at a glance.
One screen brings together everything your instruments and Victron system already know — true and apparent wind on a live rose, speed, depth and water temperature, house-bank state of charge with power flowing in and out, solar yield panel by panel, and tank levels. No flipping between apps or squinting at four separate gauges: the numbers that matter are laid out the way a sailor actually reads them, updating live. It runs full-screen at the nav station, on a cockpit tablet, or on your phone — same panel, everywhere.
Sleep easier at anchor.
Drop the hook, set an allowed circle — or a directional sector for a tight spot — and the Pi watches your swing all night. Drift outside the zone and your phone alarms, sent straight from the boat whether or not you're aboard. Because the alarm runs on the Pi, not the browser, it reaches you ashore at the taverna too.
A witness that never sleeps.
Guardian watches every AIS-equipped vessel around you, day and night. A boat enters your zone — or drags down onto you at 3 a.m. — and it records a full breadcrumb track, closest approach, and top speed, then alarms your phone. Every encounter is saved as a timestamped incident report you can hand to a harbourmaster or insurer. Nearby boats even leave visible swing-arcs, so you see how the whole anchorage lies.
Sail closer to your boat's best.
Every sail is logged and scored against a VPP target polar for your hull. See live VMG versus target, a colour-coded performance heat-map of your track — green where you're sailing well, red where there's speed left on the table — and your personal-best envelope building up over the season. It turns a day on the water into something you can actually learn from.
Nav station, cockpit tablet, or the phone in your pocket.
It's a web dashboard, so it runs anywhere with a browser — a fixed screen at the chart table, a tablet in the cockpit, your phone at anchor. Same live data, no app to install, shared across the whole crew.
Built for the way you actually sail.
Every instrument your NMEA 2000 network already produces, plus the tools cruisers wish came standard.
Wind & nav
True and apparent wind on a clean rose, heading, SOG, COG, depth, and water temperature — the core six at a glance.
Batteries & solar
State of charge, net power in or out, voltage, and solar yield — pulled from Victron over the same network.
Tanks
Fresh water, fuel, and waste levels front and centre — with the sender options spelled out for boats that lack them.
Anchor watch
Circular or directional zones, live swing track, and phone alarms that fire from the Pi even when you're ashore.
Guardian AIS
24/7 collision and drag watch on other vessels, with breadcrumb tracks and exportable incident reports.
Polar performance
A VPP-based analyzer that scores your sailing against target speeds, logs personal bests, and shows a performance heat-map of your track.
I wanted to see my whole boat on one screen — wind, batteries, the anchor holding through the night — without buying a closed box that only spoke to half of it. So I built it on a Raspberry Pi, and now it runs every day aboard Oroboro.
The whole boat, on one screen you own.
Free, open source, and documented step by step — from which HAT to buy to the final git push. If you can follow a recipe, you can build this.
From a bare Pi to a live panel.
Every step, in order — hardware, wiring, software, and deploy. New to Raspberry Pis and Signal K? This is written for you. The full README is the deep reference; this is the friendly path through it.
What it costs
Approximate street prices, mid-2026 — they drift, so treat them as ballparks. The core electronics come in well under a Victron panel that does less.
| Item | Approx. | Needed? |
|---|---|---|
| Raspberry Pi 4 (4 GB) or Pi 5 | €60–90 | Yes |
| Quality microSD card, 32 GB+ | €10 | Yes |
| 12 V → 5 V USB-C converter, 3 A+ | €10–20 | Yes |
| NMEA 2000 CAN HAT (MacArthur / PiCAN-M / Waveshare) | €20–90 | Yes* |
| 4G/LTE WiFi router + data SIM | €50–150 | For remote alarms |
| Cockpit HDMI touchscreen, 7–9″ | €60–120 | Optional |
| Typical core build | €150–250 |
*Or a USB gateway (Actisense NGT-1, Yacht Devices) at €170–200 instead of the HAT. All software — OpenPlotter, Signal K, InfluxDB, Grafana, Tailscale, this dashboard — is free.
The parts list
At minimum you need three things: a Raspberry Pi (the computer), a way to power it from the boat's 12 V, and an interface to your instrument network. Everything else — touchscreen, 4G router, Victron cables — extends what you can see and do.
The single decision that trips people up is the instrument interface, because it depends on how old your boat's electronics are. That's the next step.
NMEA 2000 — you need a CAN HAT
The Raspberry Pi has no marine-network port of its own, so you add a small board. For a modern boat (roughly 2008 onward — Raymarine SeaTalkng, Garmin, B&G, Simrad) that board is a CAN bus HAT.
NMEA 2000 runs on the CAN bus — so you need a CAN HAT, not an RS485 board. RS485/RS422 is the physical layer of the older NMEA 0183 and Seatalk standards. Wiring an RS485 adapter to a NMEA 2000 backbone will not work: wrong signalling. If in doubt and your instruments are post-2008, you want a CAN HAT.
The wiring itself is two data wires from the backbone into the HAT:
# NMEA 2000 drop cable → CAN HAT white → CAN-H blue → CAN-L # leave red/black (power) disconnected — the Pi powers the HAT
Older boat (pre-2008 NMEA 0183 or Seatalk1)? Then instead of a CAN HAT you use a USB-to-RS422/RS485 adapter (~€10–25), and OpenPlotter reads the 0183 sentences. The MacArthur HAT handles both worlds if you're mixed.
How everything connects
The shape of the system, start to finish:
boat instruments ─┐
Victron gear ─────┤→ NMEA 2000 backbone → CAN HAT → Raspberry Pi
AIS / GPS ────────┘ │
Signal K (reads it all)
│
┌──────────────┼──────────────┐
this dashboard InfluxDB anchor-api
(the panel) + Grafana (24/7 watch)
(history)
Signal K is the translator: it reads every device on the backbone and republishes it in one common format. The dashboard, the history database, and the anchor/AIS watchdog all read from Signal K. A small WiFi router ties it together so your phone and cockpit tablet see the same panel.
Install OpenPlotter
OpenPlotter is a ready-made Raspberry Pi image with Signal K already aboard — the fastest way to a working marine server. Flash it to the microSD card with Raspberry Pi Imager, boot the Pi, and you have Signal K running.
- Download OpenPlotter and flash it to the SD card
- Boot the Pi, connect it to your WiFi router
- Open Signal K's admin panel in a browser at the Pi's address, port 3000
- Add your CAN (or 0183) connection so Signal K starts seeing instruments
When the Signal K Data Browser shows wind, depth, and position updating, your hardware half is done.
Give the Pi a static IP
So the dashboard always finds the Pi at the same address, pin it down on your router (or in the Pi's network settings). Everything from here assumes a fixed address like 192.168.1.238 — use whatever your network gives you and keep it consistent.
Connect your Victron system
To see batteries and solar, bridge Victron into Signal K. Three paths, depending on your gear:
- Already have a Cerbo/GX? Enable its MQTT output and point Signal K at it.
- No GX device? Run Venus OS on a second small Pi with VE.Direct-USB cables — the open-source route to the same data.
- Direct? VE.Direct-to-USB straight into the OpenPlotter Pi for simpler systems.
You don't need to buy a Cerbo just for this — the README's "you don't need a Cerbo" section walks through each path in detail.
Deploy the dashboard files
The dashboard is a set of HTML files that Signal K serves. Put them in Signal K's public folder and open them in a browser. The repo's README gives the exact copy commands; the essence:
# on the Pi — fetch each page into Signal K's public folder
sudo wget -O /usr/lib/node_modules/signalk-server/public/oroboro.html \
https://raw.githubusercontent.com/fpugliano/oroboro-dashboard/main/oroboro.html
Repeat for each page — anchor.html, polar.html, settings.html, and the logo. Then open http://YOUR-PI-IP:3000/oroboro.html and the panel appears.
Anchor & Guardian background service
The anchor watch and the AIS Guardian run as a small always-on service on the Pi — anchor-api.js — so alarms reach your phone even when no browser is open. Install it to /home/pi/anchor-api/ and register it with systemd so it starts on boot and restarts itself.
# after copying anchor-api.js to the Pi sudo systemctl restart anchor-api sudo systemctl status anchor-api # expect: active (running)
This service is what makes the safety features real: it watches your swing and every AIS vessel around you 24/7, and pushes alarms whether you're at the helm, asleep, or ashore.
History & polar performance
For graphs over time and the sailing-performance analyzer, add InfluxDB (stores the data) and Grafana (draws the history graphs). Signal K's InfluxDB plugin logs everything; Grafana visualises it; the polar page reads back your speed-vs-wind history to score your sailing. The README covers the tokens and settings step by step.
Configure your boat's specifics
One file, config.js, holds your boat's details — network addresses, your Pushover keys, your polar targets. It stays on the Pi and never goes into the public repo, so your secrets are yours. Set it once and the whole dashboard picks it up.
Phone alarms with Pushover
Anchor-drag and Guardian alarms reach your phone via Pushover — a one-time small purchase, no subscription. Create an account, paste your user and API keys into the Pi's config, and the background service does the rest. Because the alarm is sent from the Pi, it works as long as the Pi has internet — even with your phone locked and every browser closed.
See it from anywhere
Add Tailscale (free tier) and the Pi joins a private network you can reach from your phone anywhere with signal — no port-forwarding, no exposed ports. Check your batteries from the beach, watch the anchor hold from dinner ashore. The anchor and Guardian alarms run independently on the Pi regardless, so they protect the boat whether or not you're connected.
You're done — go sailing
That's the whole build: a Raspberry Pi reading your entire boat, a clean panel on any screen, a 24/7 anchor and collision watch in your pocket, and performance analysis that turns every sail into data. All of it yours, all of it free, none of it locked to anyone's cloud.
Hit a snag, or built something you're proud of? Open an issue on GitHub — the project is alive and the fleet is growing.