SignalK / specification

Signal K is a JSON-based format for storing and sharing marine data from different sources (e.g. nmea 0183, 2000, seatalk, etc)
Other
91 stars 68 forks source link

[WIP] SKv2 Food for Thought #596

Closed tkurki closed 2 years ago

tkurki commented 3 years ago

I am adding this PR and the document thereof to serve as a living document for stuff that we could or should implemement in the next "big" Signal K version.

Not sure how things will work out, but the idea is to discuss in the PR and then edit the doc to contain a somewhat coherent view of things.

Let's see how this turns out - please, discuss here if you have something on your mind or amend this PR by issuing PRs to it.

panaaj commented 3 years ago

Some inital thoughts based on my recent experience...

  1. This maybe an implementation thing rather than one for the spec..... Where there are keys that represent values of interest that have multiple source types (e.g. headingTrue, heading Magnetic or courseGreatCircle, courseRhumbline) provide a path (eg. heading, course) which is populated with the preferred source (nominated by the user in server settings). This would provide a means for any app, plugin, component, extension, etc a way to consistently display preferred values.

  2. Where keys/paths are intended for use by specific devices (e.g. autopilot -> steering.autopilot) the spec should provide clear guidance on how it is intended this path is used. Preferably with example use cases which include sequence diagrams. I suspect we don't want a scenario where a chart plotter overwriting values placed there by the autopilot.

preeve9534 commented 3 years ago

Tidy up the convention adopted for tank keys.

My suggestion would be to move the essentially arbitrary fluid type name out of the path and into meta information so that tank keys simply become: tanks.n. In application contexts where Signal K sees a named fluid type in its data feed (e.g. N2K) then the name supplied by the data feed would provide a default value for the meta.

tkurki commented 3 years ago

Added these to the doc. You can also do PRs to add to this branch, then we have a comment thread for each addition.