 |
30-01-2023, 15:09
|
#1
|
Registered User
Join Date: Oct 2018
Posts: 23
|
What Signal K data does Opencpn use?
Hi, I am running the latest version of Openplotter on a Raspberry pi 4. I intend to send the RMB and RMC data from Opencpn to Signal K ( using TCP or UDP) so that the active route data is available in Signal K.
I have a Signal K connection configured in Openplotter for input from Signal K.
Will the RMB and RMC data come back to Opencpn, via the Signal K input, creating a loop?
Is there a list anywhere of the data coming through the Signal K connection in Openplotter that is used by Openplotter and does it ignore all other data? Jodel
|
|
|
30-01-2023, 23:00
|
#2
|
Registered User
Join Date: Nov 2012
Location: Orust Sweden
Boat: Najad 34
Posts: 3,754
|
Re: What Signal K data does Opencpn use?
I think all valid NMEA0183 received by SK is also transmitted as NMEA0183 by SK if there are such connections. So you will probably create a loop if data is not filtered either in OCPN or SK. Just test it.
|
|
|
31-01-2023, 01:36
|
#3
|
Registered User
Join Date: Oct 2018
Posts: 23
|
Re: What Signal K data does Opencpn use?
Thanks. One problem I have is, how to detect the loop, as I can't see any way to detect what Opencpn is reading, and using or dropping, from the data it can see on Signal K port 3000. As far as I can see, Signal K input data is not shown as NMEA-in in the NMEA debug window in Opencpn.
Also there is no option to filter data is you use a Signal K connection in Opencpn.
I can't see how it could be filtered on the Signal K side as Opencpn is is just reading from port 3000.
I know I can get round the issue by using a plug-in to to convert all the Signal K to NMEA and using any connection other that Signal K option in Opencpn. The other connection options can be filtered.
Jodel
|
|
|
31-01-2023, 03:24
|
#4
|
Registered User
Join Date: Oct 2014
Location: Netherlands
Boat: Halmatic 30
Posts: 1,014
|
Re: What Signal K data does Opencpn use?
Quote:
Originally Posted by Jodel
Thanks. One problem I have is, how to detect the loop, as I can't see any way to detect what Opencpn is reading, and using or dropping, from the data it can see on Signal K port 3000. As far as I can see, Signal K input data is not shown as NMEA-in in the NMEA debug window in Opencpn.
Also there is no option to filter data is you use a Signal K connection in Opencpn.
I can't see how it could be filtered on the Signal K side as Opencpn is is just reading from port 3000.
I know I can get round the issue by using a plug-in to to convert all the Signal K to NMEA and using any connection other that Signal K option in Opencpn. The other connection options can be filtered.
Jodel
|
The only problem is as you don't limit the outgoing data from OpenCPN then there is the risk of "singing around" of the data.
The sending of the route/waypoint data from OpepCPN is, make a new connection (only outgoing) nmea183 udp port 2000. Limit the data in the lower: setup removing everything and only switch on the RMC RMB etc..
In the the SignalK server make a new connection: UDP and port 2000.
Now the route/waypoint data from OpenCPN is available in SignalK. Can be shown in the KIP display or transfered to an autopilot. Without the risk of "singing around".
Bram
|
|
|
31-01-2023, 04:21
|
#5
|
Registered User
Join Date: Feb 2010
Location: Tierra del Fuego
Boat: Phantom 19
Posts: 5,712
|
Re: What Signal K data does Opencpn use?
Quote:
Originally Posted by Jodel
Thanks. One problem I have is, how to detect the loop, as I can't see any way to detect what Opencpn is reading, and using or dropping, from the data it can see on Signal K port 3000. As far as I can see, Signal K input data is not shown as NMEA-in in the NMEA debug window in Opencpn.
Also there is no option to filter data is you use a Signal K connection in Opencpn.
I can't see how it could be filtered on the Signal K side as Opencpn is is just reading from port 3000.
I know I can get round the issue by using a plug-in to to convert all the Signal K to NMEA and using any connection other that Signal K option in Opencpn. The other connection options can be filtered.
Jodel
|
Can you please try to explain what exactly is the problem you are trying to address? OpenCPN does not output SignalK and does not convert SignalK to NMEA0183 or NMEA0183 to SignalK, so I do not see any way to create a loop here.
|
|
|
31-01-2023, 04:37
|
#6
|
Registered User
Join Date: Nov 2012
Location: Orust Sweden
Boat: Najad 34
Posts: 3,754
|
Re: What Signal K data does Opencpn use?
I concur with Nohal and..
Since you wrote "Will the RMB and RMC data come back to Opencpn, via the Signal K input, creating a loop?" I assumed you send N0183 data to SK and also receive TCP/UDP N0183 data from SK. That's, as of Nohal, the only way you can get a N0183 RMB sentence back to OCPN.
If you send N0183 to SK he will also make SK deltas in Json format out of that. (See the SK plugin "NMEA0183 to SignalK" for translated sentences.)
Now if you receive SignalK data to OCPN you'll get what's listed in the SK Data browser. If you, for any reason I don't understand now, will filter SK data you have to do that in SK by the filter function there.
|
|
|
31-01-2023, 04:51
|
#7
|
Registered User
Join Date: Oct 2018
Posts: 23
|
Re: What Signal K data does Opencpn use?
I am using the network Signal K connection port 3000 as an input in Opencpn to read in the GPS and AIS data from SignalK.
The problem that I was anticipating was that if I sent the RMB and RMC from Opencpn to Signal K, as "verkerkbr" explained how to do in his post above, that Opencpn would read it back in on the Signal K input to Opencpn with all the other data such as GPS and AIS, and that the RMB and RMC sentences would be going round in a loop.
If Opencpn drops any RMC or RMB data on the signal K input then there is no problem. However if it reads the RMC and RMB data as an input on its Signal K input, then I will have a loop, will I not??
|
|
|
31-01-2023, 04:55
|
#8
|
Registered User
Join Date: Feb 2010
Location: Tierra del Fuego
Boat: Phantom 19
Posts: 5,712
|
Re: What Signal K data does Opencpn use?
You will not, SignalK does not send NMEA sentences, so there is no loop being created in this scenario.
|
|
|
31-01-2023, 05:02
|
#9
|
Registered User
Join Date: Oct 2018
Posts: 23
|
Re: What Signal K data does Opencpn use?
I am confused by you saying that Signal K does not send NMEA sentences to Opencpn. All my other NMEA data, such a Depth, Wind speed and direction etc are all coming directly into Signal K. Then Opencpn reads them in through the network Signal K port 3000. If it is picking up all my other NMEA data from Signal K why would it drop RMB and RMC?
|
|
|
31-01-2023, 05:18
|
#10
|
Registered User
Join Date: Feb 2010
Location: Tierra del Fuego
Boat: Phantom 19
Posts: 5,712
|
Re: What Signal K data does Opencpn use?
SignalK server, on port 3000, does not send any NMEA0183 sentences at all. It sends SignalK delta messages there, completely different type of data. Processing SignalK delta messages in OpenCPN has nothing to do with processing NMEA0183 sentences, no loop can ever be created.
Yes, the information in the SignalK deltas, in your particular setup, is created from the NMEA0183 sentences by the SignalK server, but that is the only point where they are connected.
|
|
|
31-01-2023, 05:44
|
#11
|
Registered User
Join Date: Oct 2018
Posts: 23
|
Re: What Signal K data does Opencpn use?
Thanks for explaining that. I will stop worrying!
|
|
|
 |
Thread Tools |
Search this Thread |
|
|
Display Modes |
Rate This Thread |
Linear Mode
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
|
Advertise Here
Recent Discussions |
|
|
|
|
|
|
|
|
|
|
|
|
Vendor Spotlight |
|
|
|