Marine data

NMEA Live

A real-time marine data station that makes NMEA feeds useful in the browser, from wind behaviour to AIS vessel awareness.

Current build

NMEALive marine data

What it does

Built for a clear view

NMEA Live combines data that is often spread across several instruments. It presents current wind, recent trends and vessel traffic in one screen for situational awareness and testing.

Key features

01

Live wind angle and speed gauge

02

Rolling ten-minute wind averages

03

AIS map with nearby vessel data

04

Dedicated read-only Boat Gauges page using the Bat Cave sensor feed

05

Shared navigation for NMEA, gauges, water, batteries and compass

Under the panel

How the system works

A practical map from the onboard sensor or controller to the value shown in the browser.

  1. 01

    The LILYGO T-RS3 receives NMEA 0183/AIS sentences from the Quark gateway over isolated RS485 at 38,400 baud.

  2. 02

    Firmware validates checksums, extracts GPS, wind, heading, temperature and AIS counters, and batches the parsed values with the original sentences.

  3. 03

    An authenticated HTTPS POST sends the batch to ingest.php, which decodes AIS targets and atomically updates state.json and lines.json.

  4. 04

    The browser polls state.json without caching, then draws the wind gauge, rolling averages, own-ship position, AIS map, trails and CPA/TCPA warnings.

Wire reference

Data format

Transport
RS485 NMEA 0183 → authenticated HTTPS JSON POST → polled state JSON
Envelope
One JSON object with parsed fields plus a sentences[] array of raw NMEA records

Example payload

{
  "device_id": "nmea-node",
  "lat": 53.7441, "lon": -0.3342,
  "wind_ang": 42.0, "wind_spd": 11.8, "wind_ref": "R",
  "sentences": [{"t_ms": 182340, "s": "$WIMWV,42.0,R,11.8,N,A*hh"}]
}

Field reference

lat / lon

Own-ship position in decimal degrees

wind_ang / wind_spd

Wind angle in degrees and speed in knots

wind_ref

R for relative/apparent or T for true

hdg / cog_deg / sog_kn

Heading, course over ground and speed over ground

ais_targets[]

Decoded vessel records keyed by MMSI with position, motion and static data

sentences[]

Original NMEA line plus ESP millisecond timestamp

Source code

Take it apart. Make it yours.

The ZIP contains the web project and its matching ESP/Arduino firmware. Passwords, private keys, tokens, logs and live location data have been removed.

Firmware: LILYGO T-RS3 NMEA gateway firmware 1.3.0

  • NMEA Live dashboard
  • Read-only Boat Gauges dashboard
  • Wind, AIS and HAL gauge modules
  • Server-side NMEA ingest code
  • ESP32-S3 Arduino sketch and secrets template
Download nmea-live-source.zip