A new addition to our boat is the ability to log all of our travels. To do so, we added a Raspberry Pi powered by the boat's 12V system, connected to the NMEA 2000 backbone, and running a program called Saillogger. See our article on boat networking.
We started by buying a Raspberry Pi. This is a single-board small computer. It has most of the functionality of a large desktop on a tiny board. The specs: 1.5 GHz 64-bit quad core ARM Cortex-A72 processor, on-board 802.11ac Wi-Fi, Bluetooth 5, full gigabit Ethernet (throughput not limited), two USB 2.0 ports, two USB 3.0 ports, 8 GB of RAM, and dual-monitor support via a pair of micro HDMI (HDMI Type D) ports for up to 4K resolution. It runs a version of Linux.
![]() |
Raspberry Pi 4 B |
The Raspberry Pi then has added the PICAN-M hat board. This plugs into it and provides NMEA 2000 and NMEA 0183 connections, as well as providing power from the NMEA 2000 connection. It takes in 12V and steps it down to 5V.
![]() |
PICAN-M hat board that plugs into the Pi |
This entire setup is then enclosed into a nifty little case. It is about the
same size and somewhat thicker than a pack of playing cards.
![]() |
Case for the Pi, plus the PICAN-M |
You can test the whole setup by using a
micro HDMI cable, monitor, USB keyboard,
USB mouse, and either a wired or wireless Ethernet connection. The Pi will
need a micro SD card. If you want to
power the board at home for testing purposes, you will need a
120V to 12V converter to power the NMEA
2000 backbone. You may also need
a USB adapter for your computer to
transfer the operating system onto the card. We did all our initial setup at
home, then moved to the boat where we remotely log in using a laptop via WiFi
with both devices connected to a phone hotspot.
Our setup required that we pull a
NMEA 2000 backbone cable from the
"garage" lazerette where our existing backbone was located to the panel to the
right of where the AC/DC distribution is located in the cabin of the Catalina 320.
The boat's existing cables feed above and behind the cabinets in the galley.
We unscrewed the wood panel on the rightmost cabinet, then easily used an
electrical fish wire to pull it from the garage. (Make sure to disconnect from
shore power before doing this as there is live AC back there.) This is then
fed down behind the AC/DC panel. Power is provided by the 12V on the NMEA
2000. We already have a Garmin 17X GPS antenna on the boat hooked to the
backbone to feed GPS info to the chart plotter. We put a "T" on the backbone
and installed the terminator. Then we attached a drop cable to the PICAN-M
NMEA 2000 socket. This kit will provide
all the basic NMEA 2000 hardware.
We installed the Debian and SignalK software onto the Pi. We found this page provided really excellent instructions on the install. If you are not familiar with Linux, you may need a friend to help you. We then installed Saillogger.
Sailogger is a program written by a
friend of ours. It consists of two parts: a program installed on the Raspberry
Pi through SignalK and a web site to which it uploads the information. It
automatically records every time you leave a marina and where you have gone,
pulling the info from the GPS (and other devices) on the NMEA 2000 network.
The next time the Pi gets an internet connection either through a marina wifi
or a phone hotspot, it uploads it to the Saillogger web site. There is very
little configuration necessary and virtually no information that needs to be
added to the logs. You don't need to remember to start something or end
it...it is all automatic as long as the NMEA 2000 backbone is powered.
After installing it, we went out for a day sail on Lake Washington.
![]() |
One image from the Sailogger upload |
![]() |
Detail of performing Man-Overboard drills |