Sitting in an airport on the other side of the world, you open an app on your phone and you are looking at the chart table screen. Not a summary of it. The actual screen, with a mouse pointer you can move.
Virtual Network Computing
VNC shares a screen. That's it. One computer sends pictures of its display down a wire, and sends back the keystrokes and mouse movements that come the other way.
It is deliberately dumb, and the dumbness is the point. The remote end doesn't need to understand what program you're running, what operating system it is, or what the data means. It only has to draw pixels and forward a click.
Because only changed rectangles get sent, a mostly-static screen — a dashboard, a settings page, a chart — uses almost no bandwidth. That matters enormously on a boat, and it's why this works over a connection that would never carry video.
The reason it's worth setting up
The boat sits in a marina for weeks at a time while you're at work, or visiting family, or anywhere that isn't the boat. VNC turns that from a blind spot into something you can actually look at.
Say the Victron gear needs a tweak — a charge current limit, a relay setting, something in the GX device's menus. Normally that means standing in front of it.
With VNC you open the boat computer's screen on your phone, open the Victron page in the browser that's already running there, and change the setting. The boat computer is on the boat's own network, so it can reach things your phone never could. You're not reaching into the Victron gear from outside — you're using the boat's own computer to do it, exactly as if you'd walked up to it.
Something stops working. Instead of guessing, or driving four hours, you look. You read the actual error. You restart the actual service. Nine times out of ten the problem is something you can fix in two minutes from a phone, and you only know that because you could see it.
The part that matters more than the rest of this page
Do not forward a VNC port through your router. Not with a strong password. Not on a non-standard port. Not "just while I'm away".
Exposed VNC servers are scanned for continuously and automatically, by people who are not looking for your boat specifically and do not care what it is. The protocol's own password scheme is old and weak, many servers cap the password length, and plenty of setups end up with no encryption on the session at all.
An exposed screen-sharing service is not "someone might see my battery voltage". It is a keyboard and mouse on a computer that is wired into your boat's systems.
The approach that works, and the one we use, is to put no ports on the internet at all and instead join your own devices to a private encrypted network that only your devices can see.
A mesh VPN does this. Your phone and your boat computer each sign in to your own account, each gets a private address that exists only inside your own network, and they talk directly to each other over an encrypted link. To the rest of the internet there is nothing there at all — no open port, nothing to scan, nothing to find.
Tailscale is the easy one, and it's free for personal use. WireGuard underneath it if you'd rather build it yourself.
| Do | Don't |
|---|---|
| Reach the boat over a private mesh VPN | Forward port 5900 (or any VNC port) on your router |
| Bind the VNC server to the local network only | Leave it listening on every interface |
| Use a long, unique password you use nowhere else | Reuse a password, or leave the default |
| Keep the VPN account behind two-factor authentication | Rely on the VNC password as your only defence |
| Keep the boat computer updated | Run an ancient image because it works |
| Know which devices are on your VPN, and remove old ones | Leave a phone you sold still able to reach the boat |
The honest version
A desktop designed for a 24-inch monitor, viewed on a phone, is fiddly. You will be pinching and zooming. Precise clicking takes a moment. It is a tool for getting a job done, not a pleasure.
A few things make it much better:
Reading a dashboard uses very little — the screen barely changes, so almost nothing is sent. Dragging a window around a desktop with a photo wallpaper is the opposite. If you're on metered satellite data, set a plain background, keep the resolution modest, and don't scroll things you don't need to.