A computer for about the price of a decent shackle, the boards and sensors that give it a way into the boat, what to know before you buy them, and where to buy them.
The cheap end
A Raspberry Pi is a complete computer for about the price of a decent shackle. It is what everything on this boat ends up talking to, and it's what the rest of the site is largely about.
It arrives knowing nothing about boats — no marine interfaces, no sensors, and no sensible way to run off 12 or 24 volts. The next few sections are what you bolt onto it to fix that.
The board on Exodus, numbered
Not visible: the microSD slot is on the underside of the board, on the left. The Pi 5 is rated for 32 to 158 °F. Every port in detail, and the power rules →
The hat is the whole job
A Raspberry Pi has no marine interfaces at all. It cannot hear NMEA 2000, it cannot hear NMEA 0183, and it has no sensible way to run off 12 or 24 volts. A hat fixes all three, and which one you choose decides what the rest of the project looks like.
This is the board actually fitted here. From SK Pang in the UK, also sold through Copperhill in the US. It is the long-established way to get a Raspberry Pi onto an NMEA 2000 backbone, and it is what everything on this site is built on top of.
Underneath it is an MCP2515 CAN controller — the same chip in most Pi CAN boards — which is why Linux already knows how to talk to it. You bring the interface up and the whole N2K bus arrives as a standard network device. CANboat and Signal K take it from there.
The PiCAN-M, the version we run, adds NMEA 0183 as well, and can power the Pi from the bus with a proper regulator rather than a USB brick — worth having on a boat where the 12 volt supply wanders around.
skpang.co.uk · copperhilltech.com
From OpenMarine — the people behind OpenPlotter — and the most complete board of its kind. We don't run one, but it is the board to look at if you are starting from scratch with a mixed-protocol boat. It takes both NMEA 0183 and NMEA 2000, which is the thing most boats actually need, because most boats are a mixture of the two.
| Interface | What you get |
|---|---|
| NMEA 0183 | 2 inputs, opto-isolated, and 2 outputs |
| NMEA 2000 | 1 port, in and out, with an optional 120 Ω termination resistor included |
| SeaTalk | 1 input — for older Raymarine gear that speaks neither of the above |
| 1-Wire | A connector for DS18B20 temperature probes, so you don't have to solder your own pull-up resistor onto a breadboard |
| Power | Runs the Pi straight off the ship's batteries, with smart power management that shuts it down cleanly instead of yanking the power and corrupting the SD card |
Those opto-isolated inputs are worth the money on their own. Opto-isolation means the incoming signal is passed across a tiny internal light beam rather than a wire — so there is no electrical connection between the boat's instrument wiring and your Pi. A ground loop or a voltage spike on the 0183 line cannot follow it home.
It stacks with other hats, so you can put an AIS receiver board on top of it. Pi 3, 4 and 5, with OpenPlotter.
shop.openmarine.net · documentation
| PiCAN / PiCAN-M | MacArthur HAT | |
|---|---|---|
| NMEA 2000 | Yes | Yes |
| NMEA 0183 | On the -M version | Yes — 2 in opto-isolated, 2 out |
| SeaTalk | No | Yes |
| 1-Wire connector | No | Yes |
| Powers the Pi | On the -M version | Yes, with clean shutdown |
Both do the main job. If your boat is all NMEA 2000, the PiCAN-M is simple, proven and cheaper — it's what's here and it has never given trouble. If you have older 0183 or SeaTalk gear to bring in as well, the MacArthur does it on one board instead of three.
And why a boat needs one at all
A multiplexer takes several streams of boat data and turns them into one. A Raspberry Pi running Signal K does exactly that, and it is the main reason to put a Pi aboard.
| Job | How the Pi does it |
|---|---|
| Many 0183 talkers | Each one goes into its own serial input (a USB serial adapter or a hat with isolated inputs), so nothing collides. |
| NMEA 2000 | Comes straight off the backbone through the CAN hat. On Exodus that is the PiCAN-M. |
| Different baud rates | Every serial input is set to its own speed, so 4800 and 38400 sit side by side. |
| Your own sensors | Temperature, pressure, motion and the rest are read by the Pi itself and join the same stream as everything else. |
| One common set of names | Signal K turns it all into one model, so a wind speed is the same thing wherever it came from. |
| Out again | Serves the merged result back out as 0183, as a web page, or over WiFi to any phone or tablet on the boat. |
A commercial multiplexer does the first part for a few hundred dollars and keeps its insides hidden. The Pi does all of it, and you can see and change every step. The commercial boxes, and how they work →
Not a wish list — these are fitted
The pictures show each kind of part, not necessarily the exact unit aboard.
| Part | What it does | Connects by |
|---|---|---|
| PiCAN-M hat (MCP2515) |
Puts the Pi on the NMEA 2000 backbone. The single most useful board on the boat — without it the Pi is deaf. | GPIO hat |
| Stacking header | Passes the GPIO pins up through the hat so everything else can still reach them. Costs almost nothing, solves the problem that stops most people at board two. | GPIO |
| BME280 | Barometric pressure, temperature and humidity in one chip. A logged pressure trend is worth more at anchor than any forecast. | I2C, 4 wires |
| DS18B20 probes | Waterproof stainless temperature probes on a lead. Engine coolant in and out, fridge, freezer, anywhere you want a number. | 1-Wire + 4.7kΩ resistor |
| BNO085 IMU | Nine-axis motion sensor. Heel, pitch and roll — real attitude data without a proprietary sensor. | I2C |
| RTL-SDR dongle | Software defined radio on a USB stick. Receives AIS, weather satellite images and a great deal more for about the price of dinner. | USB |
| Ecowitt weather station | Outside temperature, humidity, dew point, pressure and wind, feeding straight into Signal K — and published as a public weather station that anybody can look up, alongside thousands of others doing the same. How that network works → | WiFi |
| Bluetooth sensors | Cheap BLE temperature and humidity tags scattered in lockers and compartments, read by the Pi's own Bluetooth. | Bluetooth LE |
| ESP32 boards | Sensors where a cable run isn't worth the day it would take. WiFi built in, a few dollars each. | WiFi |
What it takes to build any of this
None of the sensors on this page work straight out of the packet. You need a few ordinary things on the bench first.
Four things that cost us time
A hat covers the pins it sits on. If you plan more than one board, buy a stacking header at the same time. It's a couple of dollars and it saves taking the whole thing apart later.
1-Wire needs a pull-up resistor. 4.7 kΩ between data and 3.3 V. Without it you get nothing and no error message explaining why. Some probe modules include it; bare probes don't.
Wire colors are not standard. On the DS18B20 probes we use, red is power, yellow is data and blue is ground. Other suppliers use black and white for the same jobs. Check before connecting — guessing can cook the sensor.
Check the voltage. The Pi's GPIO is 3.3 volt and not tolerant of 5. Plenty of modules are sold for Arduino at 5 volts. Read the board before you wire it to a Pi.
The shops worth knowing
New York. Excellent documentation, honest descriptions, and a tutorial for almost everything they sell. If you're learning, start here even when they're not cheapest.
The microcontroller side. Where you go when the job doesn't need a whole computer, or needs to sit somewhere a Pi can't.
The boards themselves, the official accessories, and the documentation that actually matches the hardware.
Colorado. Similar ground to Adafruit, different catalog — worth checking both before you buy.
UK. The PiCAN CAN-bus boards — the usual way to get a Pi onto an NMEA 2000 backbone.
Sensors and modules at low prices, plus their own Pi-compatible boards.
Not bought yet
Turns the Pi from something that watches into something that acts. Start a generator, switch a pump. Needs real care — see the generator write-up.
TUSS4470 board on an Arduino Uno. Our own transducer, our own raw echo data, our own screen.
Hall-effect clamps on individual circuits, to find out what is actually drawing the power at three in the morning.
On the bilge pump outlet. Counting cycles catches a leak months before you'd otherwise notice.