Signal K – open-source universal marine data exchange format
signalk.org
signalk.org
Shameless but relevant plug -- I was annoyed hearing radio traffic of boaters trying to share their location with the Coast Guard, so I built a free tool for them (i911) that allows USCG to text the boater a link to share their location. The vast majority of distress calls are made within cell phone range (<15 miles from shore), so tapping that link isn't as much of an issue as you would think it is. It was the fastest tech to graduate from their R&D site to nationwide sector adoption.
https://www.youtube.com/watch?v=QF1pi2-ygXU
Excited to dig into Signal K to see if something there can help improve that response even further.
* https://en.wikipedia.org/wiki/National_Marine_Electronics_As...
Also, only NMEA2000 is based on CANbus, NMEA0183 is not.
NMEA2000 is essentially a Marine Electronics version of CANBUS with their own agreed upon PGNs.
NMEA0183 is pretty close to RS-232 (and/or RS-422), usually at 4800 baud, but there's a "High Speed" variant at 38,400 baud.
You need to have a way for the individual boats to share that data. The most obvious way would be to have access to the internet, and host a server somewhere where all the boats would send their data (sensor data, mostly position/heading/speed information).
For example, a regatta could host a server where participants send all their data, enabling a live map with all participant's position and course plotted on it, along with depth & wind instrument readings. This could let spectators understand the participant's performance (how high their point into the wind, etc.)
Navigation information (routes, waypoints, etc) can also be shared over SignalK, altough that's not much used yet as OpenCPN doesn't support it. Again, in the regatta example, you could see a "dynamic" regatta, where the course isn't known in advance.
IMO the main challenge here is having a peer-to-peer "local broadcast" mode, like AIS or DSC. There are regulatory challenges with this, though.
DSC is present on "newer" / more expensive radios so it's not a guarantee that a given boat has it. It has a few message types:
- Distress calls
- "Routine call" (basically rings the other boat and asks them to switch to a chosen channel so you can then talk over voice)
- Position request
There's very poor integration between these DSC messages and the rest of marine electronics.
The other radio-based protocol is Automatic Identification System (AIS), which requires dedicated hardware (or a very expensive radio). It transmits your position, heading and speed regularly, and some biographic info (name & dimensions of the boat) from time to time. It's basically ADS-B for boats.
This is very well integrated with all marine electronics and apps. It's also what powers sites like MarineTraffic.
Main issue with both of these is that they aren't really extensible, so you can't send whatever you want over them.
Other radio tech used on boats would be Single-Sideband (SSB), but that's more in the amateur radio realm. Some boats do have a full HAM setup, but it's not that common.
I feel like what you describes leaves some large holes in what could be done with radio. Automatic exchange of intended route info for eg could be useful in areas of high traffic. Maybe something LoRa shaped could some of fit them, given its fairly large range.
I know for a fact that security has been a big consideration in SignalK's development, but at its core SignalK is only a JSON schema; I don't see why military ships couldn't pick this up if they were so inclined.
For now, it has basically become the standard in the open-source marine ecosystem; used by default in OpenPlotter (a marine-oriented Linux distribution) and supported in OpenCPN (a chartplotter/navigation software).