SØNDAG
2026-08-09

Too many projects, too many ideas, too few hours — one learning a day anyway

SignalK DMI plugin

part of Maracaibo

A SignalK plugin that puts DMI's free Danish weather and marine observations on the boat's data bus.

The signalk-dmi settings panel in the SignalK admin: an Enabled toggle set to yes, a green status line reading DMI running, poll every 30 min, a guidance block suggesting an InfluxDB setup for trending, and the Position source field set to Vessel GPS so the weather always describes where the boat actually is — fixed coordinates below are the fallback for a dock install.
FIG. 1 The settings panel — enabled, polling every 30 min, position from the boat's live GPS.
The SignalK data browser's paths table listing thirteen environment paths published by signalk-dmi — outside temperature, pressure, humidity, visibility, wind, tide and water values — every row stamped signalk-dmi in the Source column, so any dashboard or alarm on the boat can consume them without knowing DMI exists.
FIG. 2 Thirteen environment paths — every row's Source reads signalk-dmi.

The Danish Meteorological Institute gives its data away for free; this plugin puts it where a boat can use it — on the SignalK bus. It started as pure research: survey every free DMI dataset relevant to a vessel before writing a line of code. The plugin now publishes outside conditions (temperature, dew point, pressure, humidity, visibility, cloud cover, precipitation), marine values from the nearest model cell — honestly flagged as nearby, not at-boat — and official met warnings when one is live, with an Open-Meteo fallback when DMI’s marine track runs empty.

It runs on Maracaibo’s SignalK server today, and the repo was deliberately prepared for strangers: internal docs stripped from the public surface, history squashed to a clean root, documentation made SignalK-generic rather than about my boat. Published for anyone on Danish waters: github.com/dennismilton/signalk-dmi · npm signalk-dmi (listed in the SignalK Appstore).

CODE
  • Changelog ships with the npm package
  • Self-recovery plus marine data fallback
  • Danish weather data plugin launches
POSTS

No posts from this project yet — they'll gather here as they publish.