Filtering of data source and output
I'm having an issue with the position/SOG data on SignalK server installed via OpenPlotter.
The AIS transceiver is being used to provide the position data (and SOG and COG). It is outputting 2 sentences AIGLL and AIVDO which contain location data and don't always seem to match. GPS accuaracy is reported as =/- 0.5-1.5m
The issue we're seeing is:
* The position is jumping about as the vessel moves, sometimes moving backwards, sometimes sideways on OpenCPN which is only taking data from SignalK
* When tied to a fixed pontoon the SOG is randomly flickering between 0 and 0.6 knots on the KIP interface
I'm thinking that it's either an interaction between the 2 sentences or a lack of filtering.
Is there a way to tell the SignalK server to only ever take position data from AIGLL?
Is there a way to add a moving average filter to location, COG and SOG? Something like a 5 second moving average would probably be good.
4 Replies
Setup “source priorities”, it’s under Server -> Data Connections
Thanks, and is there anyway to add a moving average filter?
Nothing built in. There is https://www.npmjs.com/package/signalk-data-dejitter
npm
signalk-data-dejitter
SignalK plugin that provides de-jitter to values by averaging data frames. Latest version: 1.0.2, last published: 2 years ago. Start using signalk-data-dejitter in your project by running
npm i signalk-data-dejitter
. There are no other projects in the npm registry using signalk-data-dejitter.Could also be done in node-red I’m sure.