Slow replay of nmea-0183 log file
I have some nmea-0183 log files which I am replaying to setup KIP, learn SignalK and evaluate the polars I adopted and generate a more bespoke one using various plugins.
However the replay is very slow. About 1:5 or even slower. Is this expected or might there be something wrong. The file has sensor, pilot and AIS data. I could filter the latter out but I am replaying a regatta to compare a bit with others.
7 Replies
how are you replaying the files?
problem with 0183 playback is that typically the files don't have timestamps and all you can do is adjust the rate at which they are replayed. this is what the included 0183 playback sample does at https://github.com/SignalK/signalk-server/blob/master/settings/volare-file-settings.json#L28
GitHub
signalk-server/settings/volare-file-settings.json at master · Signa...
An implementation of a Signal K central server for boats. - SignalK/signalk-server
opencpn has a vdr plugin which can replay 0183 with variable speed playback you could point at signalk. Also the sigk sim app can be useful though that's sigk data.
I use a File stream connection and point it to my file with NMEA data.
Worth a try.
Could do it in node-red maybe. Split the file in batches based on the RMC sentence and then pass a batch every second to the tcp or udp NMEA server.
There is an undocumented settings option
throttleRate
that you can add to the connection in settings.json
The default value is 1000, more is quickerGitHub
signalk-server/packages/streams/simple.js at 315597215b0066d279deb7...
An implementation of a Signal K central server for boats. - SignalK/signalk-server
Thanks for the advice. I noticed my nmea dump had information from 2 gps's and somehow lines were repeated. Probably due to a misconfiguration in a YDNR router and a separate pypilot based autopilot. With some puzzeling I made a node-red flow that deduplicates in batches for each second in the dump and then sends that to the nmea server of Signal K. In Node-red I can control the message rate somewhat too.
For future reference the flow is shared here: https://github.com/ArjenR/node-red-signalk-flows