Skip to content

⚠️ Important Notice

NMEA2000 support in AIS-catcher is experimental and only works on Linux with socketCAN support. The program is not certified by NMEA and is not intended for connecting to a NMEA2000 network on a boat. It is for experimenters wanting to learn and play with networks and AIS. Use at your own risk.

NMEA2000 input and output via SocketCAN

In v0.56 we introduced "Experimenter Mode" for NMEA2000 input and output via socketCAN on Linux. To properly handle the mechanics of a NMEA2000 network, the NMEA2000 library library by Timo Lappalainen is required, build AIS-catcher in the main directory with:

./scripts/build-NMEA2000.sh
This downloads and builds the NMEA2000 library and includes it in the AIS-catcher build process. If you install via the provided installation script on Linux-based systems this is included by default.

The following example creates a UDP server listening on port 4002 and forwards these messages to the CAN-bus (vcan0):

AIS-catcher -x 192.168.1.120 4002 -I vcan0  
Current implementation handles AIS messages 1-5, 9, 11, 14, 18, 19, 21, 24 and have been very high-level tested with the excellent CANboat utilities and a virtual network. Another option is to have AIS-catcher read AIS messages on the NMEA2000 canbus:
AIS-catcher -i vcan0
Note that this only works on Linux with socketCAN support and has not been tested properly. Obviously, the program is not certified by NMEA and is not build for connecting it to a NMEA2000 network on a boat. It is for the experimenters wanting to learn and play with networks and AIS.

Summary Settings Input

Key Type Default Description
INTERFACE string "can0" CAN bus interface name

Summary Settings Output

Key Type Default Description
NETWORK string "" CAN network interface name