Cruisers Forum
 

Go Back   Cruisers & Sailing Forums > Seamanship, Navigation & Boat Handling > OpenCPN
Cruiser Wiki Click Here to Login
Register Vendors FAQ Community Calendar Today's Posts Log in

Reply
  This discussion is proudly sponsored by:
Please support our sponsors and let them know you heard about their products on Cruisers Forums. Advertise Here
 
Thread Tools Search this Thread Rate Thread Display Modes
Old 23-01-2024, 12:41   #1
Registered User

Join Date: Mar 2012
Location: Solomons, MD
Boat: Cal 27
Posts: 165
Images: 4
Does OpenCPN need to be a Data Server?

I didn't want to derail the "NMEA 2000 over wifi" thread with this related topic. I've been a happy OpenCPN user for awhile with just Win7 laptop (Panasonic CF19) and USB GPS Puck. More recently this was backed up with an android phone running OpenCPN. I'm also a US waters sailor so the downloaded charts were all I needed. I say this to indicate that I never had to install or deal with (external) plugins for anything.

The install of a Raymarine EV-1 autopilot with SeatalkNG (NMEA 2000) triggered an interest in joining OpenCPN with the EV-1 via NMEA 2000. I know this can be done with OpenCPN plugins and some USB devices. However, I've also been looking at the SignalK project with interest. I've noticed a lot of parallel effort going into data plugins for OpenCPN and SignalK that do essentially the same thing.


I'm assuming OpenCPN has been around longer than SignalK and needed to deal with data input/output primarily as serial / NMEA 0183. But now I'm seeing NMEA 2000 support added for both, autopilot plugins being developed for both, plugins to display gauges for both, etc. Currently, it looks to me like there is
OpenCPN => Chart Plotter + Built In Data Server
and
SignalK => Data Server

Have there been any discussions on phasing out the Data Server functions from OpenCPN so that the developers can concentrate more on Chart Plotter functions. I see a future OpenCPN install as an OpenCPN package combined with a SignalK package, either as a single installer or separate installs.
cas206 is offline   Reply With Quote
Old 23-01-2024, 18:06   #2
Registered User
 
rgleason's Avatar

Join Date: Mar 2012
Location: Boston, MA
Boat: 1981 Bristol 32 Sloop
Posts: 17,639
Images: 2
Re: Does OpenCPN need to be a Data Server?

I won't be able to address your questions about signalK and opencpn, but for an EVO autopilot there are two options, and I would probably use Nmea2000 for those and both Douwe and Bernd have been focused mostly on that in developing the plugins
rgleason is offline   Reply With Quote
Old 23-01-2024, 18:39   #3
Registered User

Join Date: Mar 2016
Location: San Francisco
Boat: Morgan 382
Posts: 2,942
Re: Does OpenCPN need to be a Data Server?

I'm not one of the developers, but here is my take on the question.

SignalK is a protocol, meant as an extensible and open replacement for NMEA2000. NMEA has proposed OneNet, which requires a large payment to use, and likely couldn't be used in an opensource project. So, SignalK is an alternative to that.

The problem is that basically nothing has adopted either of them. OpenCPN can use SignalK, and because it is opensource SignalK is popular with DIY and openboat people. Onenet has maybe one vendor that supports it. But to work with anything made by any other manufacturer, Raymarine, Garmin, B&G, or even gateway devices like Actisense, or Yacht Devices, OCPN needs to support NMEA0183 and/or NMEA2000.

The SignalK "sever" is really a gateway for converting between various protocols, SignalK, NMEA0183, and NMEA2000. OpenCPN supports SignalK as a protocol, as well as NMEA2000 and NMEA0183. Since NMEA2000 and NMEA0183 are both staying with us for the foreseeable future, and SignalK and Onenet both have extremely limited use and no indication either will be adopted by the boating industry, I think NMEA needs to stay in OpenCPN. If OpenCPN were to use SignalK and rely on the SignalK server to convert that to NMEA2000, I think that would introduce a whole mess of problems and complexity.

OpenCPN really isn't a server. The NMEA connections are core to what it does.
__________________
-Warren
wholybee is offline   Reply With Quote
Old 24-01-2024, 11:02   #4
Registered User

Join Date: Mar 2012
Location: Solomons, MD
Boat: Cal 27
Posts: 165
Images: 4
Re: Does OpenCPN need to be a Data Server?

Quote:
Originally Posted by wholybee View Post
I'm not one of the developers, but here is my take on the question.

SignalK is a protocol, meant as an extensible and open replacement for NMEA2000. NMEA has proposed OneNet, which requires a large payment to use, and likely couldn't be used in an opensource project. So, SignalK is an alternative to that.

The problem is that basically nothing has adopted either of them. OpenCPN can use SignalK, and because it is opensource SignalK is popular with DIY and openboat people. Onenet has maybe one vendor that supports it. But to work with anything made by any other manufacturer, Raymarine, Garmin, B&G, or even gateway devices like Actisense, or Yacht Devices, OCPN needs to support NMEA0183 and/or NMEA2000.

The SignalK "sever" is really a gateway for converting between various protocols, SignalK, NMEA0183, and NMEA2000. OpenCPN supports SignalK as a protocol, as well as NMEA2000 and NMEA0183. Since NMEA2000 and NMEA0183 are both staying with us for the foreseeable future, and SignalK and Onenet both have extremely limited use and no indication either will be adopted by the boating industry, I think NMEA needs to stay in OpenCPN.
SignalK is a data standard. SignalK-Server is a reference server software that implements one way of using the SignalK standard. My focus of this question was on the latter, the server software. I don't expect the SignalK standard to be used by any of the big names in hardware. I am interested in the server function of taking NMEA 0183 data and NMEA 2000 data and converting it to a common format (SignalK). And then being able to send any of that data back as either SignalK, NMEA 0183, or NMEA 2000. (Sound familiar?)

Quote:
If OpenCPN were to use SignalK and rely on the SignalK server to convert that to NMEA2000, I think that would introduce a whole mess of problems and complexity.
I disagree. First, it isn't just about NMEA 2000. It also includes NMEA 0183. If it survives as a project, I expect it will include OneNet once/if it captures significant market share. It also supports all of the typical devices (Acitsense, YD, etc). A future OpenCPN would only need to deal with data coming over a SignalK connection which isn't tied to a particular hardware communication channel. It could come over USB/Serial, Wifi, Ethernet, etc. OpenCPN wouldn't have to deal with syncing data between multiple devices running OpenCPN. Seems like this would be a simplification for the developers.

Now I agree, somewhat, that it could be a bit more complicated for users. But with good default settings on the server, it might be made hands off for most of the user base.

Quote:
OpenCPN really isn't a server. The NMEA connections are core to what it does.
Except that it kinda is becoming one, a server, not at it's core, but an important component. Originally consuming NMEA 0183, primarily in the form of GPS data, was a core feature. More recently AIS as become "a thing". Users are asking for data to be synced between multiple devices. Now we have routing data being sent to autopilots. NMEA 2000 support being added with the same issues just mentioned. Users wanting data over Ethernet and Wifi ().

Does it make sense to keep supporting this and future data needs within OpenCPN? (As a user looking in, I don't have an answer, just lots of opinions).
cas206 is offline   Reply With Quote
Old 24-01-2024, 11:20   #5
Registered User

Join Date: Mar 2012
Location: Solomons, MD
Boat: Cal 27
Posts: 165
Images: 4
Re: Does OpenCPN need to be a Data Server?

I'm probably coming off as a SignalK "fanboy". Just to be clear, the question is intended to be more general than that. Any other data conversion/routing projects could also be considered. I just happen to be looking at both OpenCPN and SignalK recently and there is a lot of plugin development that seem to be duplicates of each other. Seems like wasted talent. But I guess that's one of the characteristics of open source. Now we have the NMEA 2000 over wifi discussion that is trying to duplicate what SignalK-Server can already do.
cas206 is offline   Reply With Quote
Reply

Tags
enc, opencpn


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Does OpenCPN ingest data from a B&G H5000? HeliosJim OpenCPN 2 13-07-2023 22:32
What Signal K data does Opencpn use? Jodel OpenCPN 10 31-01-2023 04:44
OpenCPN Continued use of zyGrib server Boatuser OpenCPN 1 15-08-2018 06:23
OpenCPN not accepting NMEA data from NEXUS server cblake OpenCPN 6 28-06-2013 15:04
Server Errors on the Server Errors thread Tom Stormcrowe Forum Tech Support & Site Help 11 24-08-2012 06:51

Advertise Here


All times are GMT -7. The time now is 06:17.


Google+
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Social Knowledge Networks
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

ShowCase vBulletin Plugins by Drive Thru Online, Inc.