No description
  • Go 98.9%
  • Makefile 0.6%
  • Dockerfile 0.5%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2023-08-04 08:26:42 +02:00
.github/workflows Build for arm64 2023-06-22 14:35:21 +02:00
cmd/nmea-collect Experiment with new slog package 2023-08-04 08:26:42 +02:00
internal Experiment with new slog package 2023-08-04 08:26:42 +02:00
.gitignore Missed testdata 2023-06-22 14:10:25 +02:00
Dockerfile Consolidate tools as sub-commands 2023-06-29 08:49:49 +02:00
go.mod Experiment with new slog package 2023-08-04 08:26:42 +02:00
go.sum Experiment with new slog package 2023-08-04 08:26:42 +02:00
LICENSE README/LICENSE 2020-07-06 13:44:53 +02:00
Makefile Smaller arm64 binary 2023-06-29 08:52:00 +02:00
README.md Consolidate tools as sub-commands 2023-06-29 08:49:49 +02:00

nmea-collect

A small tool to collect NMEA raw data and track logs.

Usage: nmea-collect serve

Process incoming NMEA data

Flags:
  -h, --help    Show context-sensitive help.

Input
  --input-tcp-connect=ADDR,...    TCP connect input addresses (e.g.,
                                  172.16.1.2:2000)
  --input-udp-listen=PORT,...     UDP broadcast input listen ports (e.g., 2000)
  --input-http-listen=PORT,...    HTTP input listen ports (e.g., 8080)
  --input-serial=DEV,...          Serial port inputs (e.g., /dev/ttyS0)
  --input-stdin                   Read NMEA from standard input

UDP output
  --forward-udp-all=ADDR,...    UDP output destination address (all NMEA)
  --forward-udp-all-max-packet-size=1472
                                Maximum UDP payload size (all NMEA)
  --forward-udp-all-max-delay=1s
                                Maximum UDP buffer delay (all NMEA)
  --forward-ais-udp=ADDR,...    UDP output destination address (AIS only)
  --forward-ais-udp-max-packet-size=1472
                                Maximum UDP payload size (AIS only)
  --forward-ais-udp-max-delay=10s
                                Maximum UDP buffer delay (AIS only)

TCP output
  --forward-all-tcp-listen=ADDR    TCP listen address (all NMEA)
  --forward-ais-tcp-listen=ADDR    TCP listen address (AIS only)

GPX File Output
  --output-gpx-pattern="track-20060102-150405.gpx"
      File naming pattern, see https://golang.org/pkg/time/#Time.Format
  --output-gpx-sample-interval=10s
      Time between track points
  --output-gpx-moving-distance=25
      Minimum travel in time window to consider us moving (meters)
  --output-gpx-start-time-window=1m
      Movement time window for starting track
  --output-gpx-stop-time-window=5m
      Movement time window before ending track

Raw NMEA File Output
  --output-raw-pattern="nmea-raw.20060102-150405.gz"
                                  File naming pattern, see
                                  https://golang.org/pkg/time/#Time.Format
  --output-raw-buffer-size=131072
                                  Write buffer for output file
  --output-raw-uncompressed       Write uncompressed NMEA (default is gzipped)
  --output-raw-time-window=24h    How often to create a new raw file
  --output-raw-flush-interval=5m
                                  How often to flush raw data to disk

Metrics
  --prometheus-metrics-listen=ADDR
      HTTP listen address for Prometheus metrics endpoint