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
Getting Route details into SignalK
#1
Hi,
I am testing Openplotter on a Pi 4 using SignalK test data.  When I select a point in Opencpn to navigate to and activate the route, I can see the route details on the "This Leg" window in OpenCpn such as Bearing TTG,  VMG and XTE.  However when I look at the SignalK data these parameters do not appear.  Do I need to set up some connection between SignalK and Opencpn so that opencpn sends the route data to SignalK?  It seems as if SignalK only sees the test data - there is no other input stream.
Jodel
Reply
#2
Yes
I have an SK connection with the following properties.

Data Type: NMEA
ID : OpencpnOut
NMEA Source: UDP
Port: 10110
Sentence Event: OpencpnOut 
Validate: YES
Reply
#3
Thanks for the prompt help.  That worked for me.  I only had to add a similar and corresponding output in Opencpn.
I also now have the route data going to KIP from SignalK.  It is amazing what can be done with Openplotter! Also the community is so helpful.
Jodel
Reply
#4
Just occurred to me that if I am sending the route details to SignalK, am I creating a loop whereby SignalK is sending this back to Opencpn?  Is this handled automatically or do I need to apply a filter to the SignalK data coming to Opencpn to stop the data going round in circles??
Reply
#5
(2021-02-08, 12:48 PM)Jodel Wrote: Just occurred to me that if I am sending the route details to SignalK, am I creating a loop whereby SignalK is sending this back to Opencpn?  Is this handled automatically or do I need to apply a filter to the SignalK data coming to Opencpn to stop the data going round in circles??

Yes

You need to configure your Network Input Connection in OpenCPN to IGNORE the RMB sentence or, as you say, when you activate a route or waypoint in OCPN you will have a loop which will grind your RPi to a standstill.
Dont ask me how I know this !
Reply
#6
(2021-02-08, 03:22 PM)affinite Wrote:
(2021-02-08, 12:48 PM)Jodel Wrote: Just occurred to me that if I am sending the route details to SignalK, am I creating a loop whereby SignalK is sending this back to Opencpn?  Is this handled automatically or do I need to apply a filter to the SignalK data coming to Opencpn to stop the data going round in circles??

Yes

You need to configure your Network Input Connection in OpenCPN to IGNORE the RMB sentence or, as you say, when you activate a route or waypoint in OCPN you will have a loop which will grind your RPi to a standstill.
Dont ask me how I know this !

Thanks a mill for confirming that.
Reply
#7
Hi, I'm also trying to get this to work. Since OpenCPN 5.2 accepts native SignalK as input, I would like to keep this as it is. Unfortunately, I can't filter sentences out in SignalK. Has anyone tried it yet? Does it work, or also loop of death?

I'll give it a go, but wanted to check in here beforehand.

Aloha,
Axel
Reply
#8
I had tried the SignalK input to Opencpn but I also could not work out a way to exclude RMB and APB sentences.
I went back to connecting by TCP and adding the filter in Opencpn connections.  There appears to be no disadvantage in doing it that way, that I have discovered yet!
Jodel
Reply
#9
Nothing new but a sum up..

If OCPN is set up to receive TCP from SignalK
AND
If OCPN is also set up to output to a TCP connection that's read by SignalK all NMEA0183 messages will be reflected back by SK and you'll have a loop. That loop will choke both OCPN and SK.

So, what if you want to output AP data to SK?
By default all AP messages from OCPN are like: ECRMB, ECXTE
The common solution will be to filter the OCPN TCP input connection to not receive  any Talker Id "EC".
Input filtering -> [x] Ignore sentences -> "three dots icon"->Add->"EC"-> OK
AND (of course?) The TCP output must only: Output filtering -> [x] Transmit sentences -> "EC"

If you just output to a TCP connection
AND
Input a Signal K connection all will be fine since OCPN don't parse any navigation.courseRhumbline messages.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)