GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • NMEA 2000
  • SAE J1939
  • Quick PCS
  • Using CANboat
  • The canboat binary
  • Gateways
  • canboat server
  • File formats
  • Using the definitions in your own project
  • quick start
  • API reference
  • design
  • Building
  • contributing

This view

  • Original page
  • New address

GeezerVison is showing canboat.github.io — CANboat documentation

CANboat documentation

CANboat decodes and encodes the CAN networks on boats: NMEA 2000 above all, and the SAE J1939 and Quick PCS buses some engines and windlasses speak. The NMEA 2000 database is closed, so CANboat's has been reverse engineered from observation and public sources since 2009. The source is on GitHub.

PGN documentation

Every message CANboat knows, field by field, with the enumerations they use:

  • NMEA 2000
  • SAE J1939: engines, gensets and transmissions
  • Quick PCS: Quick's windlasses and thrusters

The same definitions, for use in your own project (pin a release; semantic versioning flags changes to them):

JSONXML
NMEA 2000canboat.jsoncanboat.xml, schema canboat.xsd
SAE J1939canboat-j1939.jsoncanboat-j1939.xml
Quick PCScanboat-quick.jsoncanboat-quick.xml
canboat's own pseudo-PGNscanboat-pseudo.jsoncanboat-pseudo.xml

NMEA 2000 as a CAN database for CAN tools: canboat.dbc.

Using CANboat

  • Using CANboat: worked examples, from decoding a capture to writing to the bus
  • The canboat binary and each of its subcommands
  • Gateways: the NMEA 2000 gateways and CAN adapters CANboat reads and writes, and how to name them
  • canboat server: its ports, running it as a service, the device quirks, a capture as a live bus
  • File formats: the captures analyzer and canboat convert read
  • Using the definitions in your own project, and writing a decoder
  • The canboat Rust library: quick start, API reference, design
  • Building and contributing, on GitHub

The C programs

  • The C programs: analyzer, the gateway drivers and the helpers, with their options
  • Using the C programs: the same examples, as pipelines of C programs

Research

How some proprietary PGNs work, worked out on the bus:

  • Navico UDB database and source selection
  • Navico / Simrad alarms and commands over NMEA 2000
  • Maretron ALM100 annunciator: which PGN actually drives it

And the projects that use CANboat's definitions: the downstream survey of October 2026.

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.