wellenvogel / avnav

using the raspberry pi as a nav computer
MIT License
87 stars 27 forks source link

Computed NMEA data (APB, RMB) sent to Signalk are not correctly parsed #271

Closed dpazz closed 1 year ago

dpazz commented 1 year ago

when the router handler has to compute autopilot sentences like APB or RMB (by checking the relative checkboxes in the handler configuration window) it results in sending to SignalK of a JSON object that the SignalK counterpart is unable to parse. I know that the error could be on SignalK side but I'm opening this bug issue here as a starting point of the investigation. Here after a screenshot of the error in SignalK log. The error is easily reproducible as a waypoint to reach is defined. immagine

wellenvogel commented 1 year ago

Could you please provide the details of your configuration? So what base system, which versions of AvNav and Signalk, which connections are configured,... Looks very strange as NMEA is no Json....

dpazz commented 1 year ago

Good morning here's the config. Openplotter install on: -SBC Rock4SE 4Gb 128Gb microsd (a raspi-like SBC choice due to raspi4c shortage) -OS arm64 Debian 11 Bullseye headless -AvNav as of AvNav updater screenshot: immagine -SignalK as of Openplotter settings screenshot immagine The aim of the project is to substitute an old monocrome chartplotter with openplotter using AvNav as the navigation interface (via an android tablet) and SignalK as the central data administration interfacing old and new instruments, engine, battery packs (ther'is also a by side sensor project based on ESP32 MCUs connected to signalK). What I would like is to give the tiller Autopilot (a Simrad TP32) all the driving nmea0183 sentences it requires. So far I was able to do this using AvNav directly driving the serial interface connected to the TP32 (now I'm testing at home with a PC receiving from serial). I'm trying to do the same with SignalK driving the the serial but SignalK isn't able to build the APB or RMB sentences so I'trying to get them from AVNav but it seems tat Avnav sent these sentences as "pure" nmea0183 strings and SignalK expects them as "deltas"....

dpazz commented 1 year ago

avnav_server-20230428.xml.txt settings.json.txt sk-to-nmea0183.json.txt

free-x commented 1 year ago

you defined your "avnav_tosignalk" interface in SignalK as "SignalK" type. This interface schould be "NMEA0183"

Greetings free-x

пт, 28 апр. 2023 г. в 10:08, dpazz @.***>:

avnav_server-20230428.xml.txt settings.json.txt sk-to-nmea0183.json.txt

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

wellenvogel commented 1 year ago

I'm wondering about the connections: Did you change them by hand? Normally the installer should have been setting up everything correctly... Which version of the avnav installer do you have (visible in openplotter)?

free-x commented 1 year ago

btw: you have defined serial interface to autopilot (/dev/ttyUSB0) in both AvNav and SignalK. This will not work. You have to decide who plays multiplexer role. AvNav in Openplotter is only "client" ....

пт, 28 апр. 2023 г. в 10:17, Oleg Roitburd @.***>:

you defined your "avnav_tosignalk" interface in SignalK as "SignalK" type. This interface schould be "NMEA0183"

Greetings free-x

пт, 28 апр. 2023 г. в 10:08, dpazz @.***>:

avnav_server-20230428.xml.txt settings.json.txt sk-to-nmea0183.json.txt

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

dpazz commented 1 year ago

btw: you have defined serial interface to autopilot (/dev/ttyUSB0) in both AvNav and SignalK. This will not work. You have to decide who plays multiplexer role. AvNav in Openplotter is only "client" .... пт, 28 апр. 2023 г. в 10:17, Oleg Roitburd @.>: you defined your "avnav_tosignalk" interface in SignalK as "SignalK" type. This interface schould be "NMEA0183" Greetings free-x пт, 28 апр. 2023 г. в 10:08, dpazz @.>: > > avnav_server-20230428.xml.txt > settings.json.txt > sk-to-nmea0183.json.txt > > — > Reply to this email directly, view it on GitHub, or unsubscribe. > You are receiving this because you are subscribed to this thread.Message ID: @.***>

Yes I know, but for now it is disabled in AvNav. As I wrote before if I let AvNav to drive the seria everything works fine. I' trying to do this from SignalK....

dpazz commented 1 year ago

I'm wondering about the connections: Did you change them by hand? Normally the installer should have been setting up everything correctly... Which version of the avnav installer do you have (visible in openplotter)?

3.07-stable is the installer release. As for the connection conf I only added manually the avnav_tosignalk connection just to try a "witer" back connection (I was unexpert of the AvNav/SignalK combi and I didn't know that this was already provided by the std openplotterconf). Let me give a try deleting this connection or setting it as NMEA0183 as free-x suggests ....

dpazz commented 1 year ago

Now it works the RMB sentence is included as part of the nmea0183 event written to serial port by Signalk. RMB is calculated by AvNav router (it is strange that the Signalk nmea plugin is capable of calculating the XTE sentence but not the RMB or APB, because all the necessary data are available). I have only left how to filter out all the nmea0183 sentences that aren't interesting the autopilot (e.g. $GSA, $RMC, etc.). I have to experiment further. Many tanks. The issue can be closed