This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Route Data from OpenCPN
#1
SignalK rounds up and publishes data that OpenCPN uses, but when a route is set in OpenCPN, there is a bunch of sentences sent by OpenCPN that can be used on other chartplotters around the boat, as well as Autopilots.

see attached picture, the sentences are listed below:

‘EC’ = Electronic chartplotter identifier
‘RMB’ = Recommended Minimum Navigation Information – includes waypoint destination Long/lat, distance to destination, closing velocity
‘RMC’ = Recommended Minimum Navigation Information – time stamp, current position, SOG, TMG
‘APB’ = Autopilot Sentence "B" – includes direction to steer, bearing to waypoint and waypoint ID
‘XTE’ = Cross Track error – includes error magnitude, direction to steer 

what is the 'correct' way to get these extra sentences into SignalK and update the sentences that are superceeded - for example the 'RMB' sentence is typically sent by SignalK from basic GPS info, but it is missing the waypoint information until OpenCPN provides it

thanks
Techstyle


Attached Files Image(s)
   
Reply
#2
The manual is always worth a look >
https://opencpn.org/wiki/dokuwiki/doku.p..._autopilot

All you should send is RMB, APB & XTE. If you also send RMC then it will just loop into Opencpn from signalk then back again to signalk from opencpn.
Good idea to ignore RMB.XTE & APD sentences in the opencpn 10110 input from signalk as well.

Then set a connection in signalk set to the udp port that opencpn is set to output on.

The active route data will then show up in signalk.
[Image: qNWTe7V.png]

"for example the 'RMB' sentence is typically sent by SignalK from basic GPS info," ??
RMB is not gps info, it's only route info - are you sure signalk can send RMB just from gps info?

"RMB - Recommended Minimum Navigation Information
To be sent by a navigation receiver when a destination waypoint is active."

https://opencpn.org/wiki/dokuwiki/doku.p..._sentences
Reply
#3
(2020-11-04, 09:32 AM)PaddyB Wrote: All you should send is RMB, APB & XTE. If you also send RMC then it will just loop into Opencpn from signalk then back again to signalk from opencpn.
Good idea to ignore RMB.XTE & APD sentences in the opencpn 10110 input from signalk as well.

1. Are you suggesting that if for example I have a connection made to localhost using port 20220 with output selected (connection to pypilot) that I should filter out all other sentences except RMB, APB, and XTE?
2. Do you mean ignore APB? I did not find a APD, I know so little about the communication between opencpn and signalk I just need to be sure.
Reply
#4
More useful info: https://openplotter.readthedocs.io/en/la...-converter
Reply
#5
(2020-11-04, 07:05 PM)Sailoog Wrote: More useful info: https://openplotter.readthedocs.io/en/la...-converter

got it, that makes a bit more sense.  so I set it up in the same way but I did not see the data in the Signal K data browser for APB, XTE and RMB, even though those sentences were transmitted, but does the addition of the RMB, APB, XTE in the ignored sentences mean these values will not come back to the signal K server and be sent back out?

what I had done previously is dropped these sentences out at the input at OpenCPN thinking that the data would then be available for any other service listening to the signalK stream, while also stopping loops.

either way, if I connect my laptop to the same network running OpenCPN i see GPS data (GGA, GSA, RMC), but I do not see APB, XTE, RMB sentences.
Reply
#6
yes, you have to ignore APB and RMB, otherwise they will go back to opencpn creating a loop

opencpn only filters NMEA 0183 data, not signal k, so if you need those sentences in signal k server you should change the opencpn input to NMEA 0183 and remove the signal k input.

an signl k filter for opencpn would be a really useful feature...
Reply
#7
What I have done is setup OpenCPN to receive data on port 10110 (I think NMEA data) and drop the APB, RMB, XTE incoming sentences, and to send out the data on port 10111 and only send APB, RMB, XTE - this way those sentences are available in SignalK and I can use them in KIP to show me Bearing to Waypoint, Distance to Waypoint, and Velocity made good to waypoint.

However, these sentences are not seen by another instance of OCPN on the netwotk if it is connected via NMEA, but is if using SignalK - but VMG is available in the Gauge Dashboard, but I cant really get OCPN to do anything with the useful info - like generate a waypoint to display or rhumbline
Reply
#8
(2020-11-05, 11:54 PM)Techstyle Wrote: What I have done is setup OpenCPN to receive data on port 10110 (I think NMEA data) and drop the APB, RMB, XTE incoming sentences, and to send out the data on port 10111 and only send APB, RMB, XTE - this way those sentences are available in SignalK and I can use them in KIP to show me Bearing to Waypoint, Distance to Waypoint, and Velocity made good to waypoint.

However, these sentences are not seen by another  instance of OCPN on the netwotk if it is connected via NMEA, but is if using SignalK - but VMG is available in the Gauge Dashboard, but  I cant really get OCPN to do anything with the  useful info - like generate a waypoint to display or rhumbline

 Works here, laptop with active route sending rmb & apb to signalk on a pi, both sentences show up on a tablet running opencpn.
Do you have any input filtering on your second machine? 
What exactly do you want to do?
Reply
#9
No filtering on the second machine and the only sentences I see are ‘GP’ (GPGGA, GPGSA, GPRMC) and not the ‘EC’ sentences, that originate from OpenCPN.

What I would like is to be able to have a route on the pi and be able to see (at least) the goal of the next Waypoint location and Rhumbline to that location on a different tablet running OpenCPN
Reply
#10
Odd, any nmea going into signalk gets sent straight out again on port 10110.
I just have the same routes on the different machines.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)