AIS Decoder and Web based Tracker for both serial AIS hardware and generic UDP network based data sources. Tested with a SevenStar 2rxPro and various SDR based decoders.
- Clone this repo
- Download prebuilt binary from Releases for your OS/Arch (or build your own)
- Run the binary from within the cloned repo directory (chmod +x first on Linux/Mac)
- Start sending NMEA 0183 data to UDP port 8101 or configure a
serialdevice (or both!) - In a browser go to http://127.0.0.1:8100 (or whatever IP address of the host)
- Make sure you see vessels appearing as expected
- Go to http://127.0.0.1:8100/admin.html (no default password) and fill in your station details
- Optionally restart the program with command line arguments
-aggregator host:portand--aggregator-public-url https://example.comto a public aggregator
Usage of aisdecode:
-aggregator string
Comma delimited list of aggregator host/ip:port (optional)
-aggregator-public-url string
Public aggregator URL to push myinfo.json to on startup (optional)
-aggregator-upload-period int
Aggregator upload period in minutes (default: 1, 0 disables periodic uploads)
-allow-all-uuids
If specified, allows all receiver UUIDs (by default, UUIDs are restricted via allowed list)
-baud int
Baud rate (default: 38400), ignored if -serial-port is not specified (default 38400)
-debug
Enable debug output
-dedupe-window int
Deduplication window in milliseconds (default: 1000, set to 0 to disable deduplication) (default 1000)
-dump-vessel-data
Log the latest vessel data to the screen whenever it is updated
-expire-after duration
Expire vessel data if no update is received within this duration (default: 24h)
-external-lookup string
URL for external lookup endpoint (if specified, enables lookups for vessels missing Name)
-log-all-decodes string
Directory path to log every decoded message (optional)
-no-state
When specified, do not save or load the state (default: false)
-serial-port string
Serial port device (optional)
-show-decodes
Output the decoded messages
-state-dir string
Directory to store state (default: state)
-udp-listen-port int
UDP listen port for incoming NMEA data (default: 8101)
-update-interval int
Update interval in seconds for emitting latest vessel data (default: 10)
-web-root string
Web root directory (default: web)
-ws-port int
WebSocket port (default: 8100)
