Git Product home page Git Product logo

signalk-polar's Introduction

Signal K to dynamic sqlite polar table

Signal K Node server plugin to compare performance and write best performance to sqlite3, database.

This is now both a backend plugin and a webapp with polar graphing, to be able to visually see current performance compared to previous sailed performance.

If the plugin stops, re-enable it and look for strange strings in the polar tables in the plugin config view.

As this plugin stores polars in a SQLite database structure, in order to delete unused polar tables, use the /plugins/signalk-polar/listPolarTables?uuid= query.

image

signalk-polar's People

Contributors

dependabot[bot] avatar greenkeeper[bot] avatar joabakk avatar sergei avatar snyk-bot avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

signalk-polar's Issues

Performance based on fixed polar only?

As far as I read your code right, the sqlite3 database is updated all the time and performance deltas are generated based on previously stored values?

I find this useful if you are trying to improve your polar data, but for racing purposes I would like to have an option to always show data based on fixed (non-updating) polar information. Making a separate plugin for this function would probably be trivial, but I with few changes and a option in settings your plugin could also (AFAIK) support this sort of function? Aka. make an option that would disable updating of the polar? I think the engine parameter already might do this, If I read the code right, then updates to the polar table are not made, but targets are still being calculated into the performance.* signalk paths?

Also possible that I somehow missed a functionality in the code and it works differently from previously presumed?

Error starting signalk-polar

Hi.
On my Raspberry pi 4 with PiCAN-M I have installed signalk, SQlite3 and signalk-polar. But the signalk-polar does not start.
I get this error:
Failed to start: Invalid argument: got undefined at index 0.

Hoping you can help with this issue.

Regards

Sten

Time-stamp error/unable to parse when feeding data into influxDB

I have constant errors on the data from this plugin when I want to feed them into influx.

"Jun 12 23:18:44 Error: A 400 Bad Request error occurred: {"error":"partial write: unable to parse 'performance.beatAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.9876577115566776 NaN': bad timestamp\nunable to parse 'performance.beatAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1381119060994607 NaN': bad timestamp\nunable to parse 'performance.beatAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.4573499257480211 NaN': bad timestamp\nunable to parse 'performance.targetAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.9876577115566776 NaN': bad timestamp\nunable to parse 'performance.targetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1381119060994607 NaN': bad timestamp\nunable to parse 'performance.gybeAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1285888647430173 NaN': bad timestamp\nunable to parse 'performance.gybeAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=13.015447741691206 NaN': bad timestamp\nunable to parse 'performance.gybeAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=-13.014347310694532 NaN': bad timestamp\nunable to parse 'performance.polarSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=5.504556950043316 NaN': bad timestamp\nunable to parse 'performance.polarSpeedRatio,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'environment.wind.speedTrue,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=11.27 NaN': bad timestamp\nunable to parse 'environment.wind.angleTrueWater,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.4573499257480211 NaN': bad timestamp\nunable to parse 'performance.velocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'performance.beatAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.6151575271528897 NaN': bad timestamp\nunable to parse 'performance.beatAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=2.8 NaN': bad timestamp\nunable to parse 'performance.beatAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.4667 NaN': bad timestamp\nunable to parse 'performance.targetAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.6151575271528897 NaN': bad timestamp\nunable to parse 'performance.targetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=2.8 NaN': bad timestamp\nunable to parse 'performance.gybeAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1182664161777955 NaN': bad timestamp\nunable to parse 'performance.gybeAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=13.015447741691206 NaN': bad timestamp\nunable to parse 'performance.gybeAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=-13.01190696279637 NaN': bad timestamp\nunable to parse 'performance.polarSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=2.1606672140356946 NaN': bad timestamp\nunable to parse 'performance.polarSpeedRatio,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'environment.wind.speedTrue,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=9.99 NaN': bad timestamp\nunable to parse 'environment.wind.angleTrueWater,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.6063 NaN': bad timestamp\nunable to parse 'performance.velocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'performance.beatAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.6151575271528897 NaN': bad timestamp\nunable to parse 'performance.beatAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=2.8 NaN': bad timestamp\nunable to parse 'performance.beatAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.6063 NaN': bad timestamp\nunable to parse 'performance.gybeAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1182664161777955 NaN': bad timestamp\nunable to parse 'performance.gybeAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=13.015447741691206 NaN': bad timestamp\nunable to parse 'performance.gybeAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=-13.01190696279637 NaN': bad timestamp\nunable to parse 'performance.targetAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1182664161777955 NaN': bad timestamp\nunable to parse 'performance.targetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=13.015447741691206 NaN': bad timestamp\nunable to parse 'performance.polarSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.68 NaN': bad timestamp\nunable to parse 'performance.polarSpeedRatio,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'environment.wind.speedTrue,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=10.340335952885109 NaN': bad timestamp\nunable to parse 'environment.wind.angleTrueWater,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.3619 NaN': bad timestamp\nunable to parse 'performance.velocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'performance.beatAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.9876577115566776 NaN': bad timestamp\nunable to parse 'performance.beatAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1381119060994607 NaN': bad timestamp\nunable to parse 'performance.beatAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.3619 NaN': bad timestamp\nunable to parse 'performance.targetAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.9876577115566776 NaN': bad timestamp\nunable to parse 'performance.targetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1381119060994607 NaN': bad timestamp\nunable to parse 'performance.gybeAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1285888647430173 NaN': bad timestamp\nunable to parse 'performance.gybeAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=13.015447741691206 NaN': bad timestamp\nunable to parse 'performance.gybeAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=-13.014347310694532 NaN': bad timestamp\nunable to parse 'performance.polarSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.55 NaN': bad timestamp\nunable to parse 'performance.polarSpeedRatio,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'environment.wind.speedTrue,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=10.35 NaN': bad timestamp\nunable to parse 'environment.wind.angleTrueWater,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.4143 NaN': bad timestamp\nunable to parse 'performance.velocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp\nunable to parse 'performance.beatAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.9876577115566776 NaN': bad timestamp\nunable to parse 'performance.beatAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1381119060994607 NaN': bad timestamp\nunable to parse 'performance.beatAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=1.2921 NaN': bad timestamp\nunable to parse 'performance.targetAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0.9876577115566776 NaN': bad timestamp\nunable to parse 'performance.targetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1381119060994607 NaN': bad timestamp\nunable to parse 'performance.gybeAngle,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=3.1285888647430173 NaN': bad timestamp\nunable to parse 'performance.gybeAngleTargetSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=13.015447741691206 NaN': bad timestamp\nunable to parse 'performance.gybeAngleVelocityMadeGood,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=-13.014347310694532 NaN': bad timestamp\nunable to parse 'performance.polarSpeed,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=2.2121116715127345 NaN': bad timestamp\nunable to parse 'performance.polarSpeedRatio,context=vessels.urn:mrn:signalk:uuid:52133a24-d0a3-4239-9d61-b0fd66fc39a2,source=calculated.signalk-polar value=0 NaN': bad timestamp dropped=0"} at IncomingMessage.Create.res.on (/home/pi/.signalk/node_modules/influx/lib/src/pool.js:50:38) at IncomingMessage.emit (events.js:203:15) at endReadableNT (_stream_readable.js:1145:12) at process._tickCallback (internal/process/next_tick.js:63:19) "

An in-range update of debug is breaking the build 🚨

Version 2.6.3 of debug just got published.

Branch Build failing 🚨
Dependency debug
Current Version 2.6.2
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As debug is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this 💪


Status Details
  • continuous-integration/travis-ci/pr The Travis CI build failed Details
Commits

The new version differs by 3 commits .

  • 9dc30f8 release 2.6.3
  • 0fb8ea4 LocalStorage returns undefined for any key not present (#431)
  • ce4d93e changelog fix

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Crash observed

TypeError: Cannot read property 'polarSpeeds' of undefined
    at update.values.reduce (/Users/sergei/github/forks/signalk-polar/index.js:550:67)
    at Array.reduce (<anonymous>)
    at delta.updates.forEach.update (/Users/sergei/github/forks/signalk-polar/index.js:408:38)
    at Array.forEach (<anonymous>)
    at FullSignalK.handleDelta (/Users/sergei/github/forks/signalk-polar/index.js:402:21)
    at FullSignalK.emit (events.js:187:15)
    at FullSignalK.addDelta (/Users/sergei/github/forks/signalk-server/node_modules/@signalk/signalk-schema/dist/fullsignalk.js:52:8)
    at doProcess (/Users/sergei/github/forks/signalk-server/lib/deltachain.js:10:13)
    at DeltaChain.process (/Users/sergei/github/forks/signalk-server/lib/deltachain.js:6:16)
    at Function.Server.app.handleMessage (/Users/sergei/github/forks/signalk-server/lib/index.js:172:28)
    at Simple.result.pipeElements.(anonymous function).on.msg (/Users/sergei/github/forks/signalk-server/lib/pipedproviders.js:36:17)
    at Simple.emit (events.js:187:15)
    at addChunk (_stream_readable.js:283:12)
    at readableAddChunk (_stream_readable.js:264:11)
    at Simple.Readable.push (_stream_readable.js:219:10)
    at Simple.Transform.push (_stream_transform.js:151:32)
TypeError: Cannot read property 'polarSpeeds' of undefined

Not working right under 9 Kts TWS

I've been putting the signalk-polar v3.0.0 thru it's paces from home using SKsim to provide precise TWS/TWA data to the plugin. I'm getting the expected data at 6 kts of wind and at 10 kts and above. 8 kts is showing the data from 6 and anything below 6 shows the 6 kts data. Starting at 9 kts I'm getting interpolated data for 11, 13, 15 and so on that looks right on the money. I'm including my polar file as it is in the /.signalk/plugin-config-data/signalk-polar

586f602e-df5d-4752-896b-930acfdff01.txt

Version 10 of node.js has been released

Version 10 of Node.js (code name Dubnium) has been released! 🎊

To see what happens to your code in Node.js 10, Greenkeeper has created a branch with the following changes:

  • Added the new Node.js version to your .travis.yml

If you’re interested in upgrading this repo to Node.js 10, you can open a PR with these changes. Please note that this issue is just intended as a friendly reminder and the PR as a possible starting point for getting your code running on Node.js 10.

More information on this issue

Greenkeeper has checked the engines key in any package.json file, the .nvmrc file, and the .travis.yml file, if present.

  • engines was only updated if it defined a single version, not a range.
  • .nvmrc was updated to Node.js 10
  • .travis.yml was only changed if there was a root-level node_js that didn’t already include Node.js 10, such as node or lts/*. In this case, the new version was appended to the list. We didn’t touch job or matrix configurations because these tend to be quite specific and complex, and it’s difficult to infer what the intentions were.

For many simpler .travis.yml configurations, this PR should suffice as-is, but depending on what you’re doing it may require additional work or may not be applicable at all. We’re also aware that you may have good reasons to not update to Node.js 10, which is why this was sent as an issue and not a pull request. Feel free to delete it without comment, I’m a humble robot and won’t feel rejected 🤖


FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Wouldn't process data from PGN 128259

In the delta reduction it would not recognize speedThroughWater because PGN 128259 contains both speedThoughWater and speedThroughWaterReferenceType. The attached file replaced all the if's and looking at EVERY delta on the server. I changed it to app.streambundle.getSelfStream for just the paths needed to make it all work. I also fixed the wind index look up. I tested it against my polar table with SKSim at known angles and wind speeds and the data matched the expected values. I will update again after a race this coming weekend. Thanks... Chuck

main.txt

app.pushDelta error

The plugin can't send any delta. Signalk-server Version 1.40 as Docker container with Debian 10.
Several data paths stop working. like environment.wind.speedApparent

it seems the app.pushDelta should be pushDelta without app. since pushDelta is not an app prop?

When I start the plugin I get this error in the server log:

Sep 25 10:58:17 TypeError: app.pushDelta is not a function at update.values.reduce (/home/node/.signalk/node_modules/signalk-polar/index.js:531:25) at Array.reduce () at delta.updates.forEach.update (/home/node/.signalk/node_modules/signalk-polar/index.js:408:38) at Array.forEach () at FullSignalK.handleDelta (/home/node/.signalk/node_modules/signalk-polar/index.js:402:21) at FullSignalK.emit (events.js:203:15) at FullSignalK.addDelta (/home/node/signalk/node_modules/@signalk/signalk-schema/dist/fullsignalk.js:52:8) at doProcess (/home/node/signalk/lib/deltachain.js:10:13) at msg (/home/node/signalk/lib/deltachain.js:29:17) at Array.unsubscribes.push.app.registerDeltaInputHandler (/home/node/.signalk/node_modules/@signalk/calibration/index.js:82:15) at doProcess (/home/node/signalk/lib/deltachain.js:13:21) at DeltaChain.process (/home/node/signalk/lib/deltachain.js:6:16) at Function.Server.app.handleMessage (/home/node/signalk/lib/index.js:174:28) at Simple.result.pipeElements.(anonymous function).on.msg (/home/node/signalk/lib/pipedproviders.js:58:17) at Simple.emit (events.js:203:15) at addChunk (_stream_readable.js:288:12) at readableAddChunk (_stream_readable.js:269:11) at Simple.Readable.push (_stream_readable.js:224:10) at Simple.Transform.push (_stream_transform.js:151:32) at Simple._transform (/home/node/signalk/node_modules/@signalk/streams/simple.js:87:8) at Simple.Transform._read (_stream_transform.js:190:10) at Simple.Transform._write (_stream_transform.js:178:12) at doWrite (_stream_writable.js:415:12) at writeOrBuffer (_stream_writable.js:399:5) at Simple.Writable.write (_stream_writable.js:299:11) at ToSignalK.ondata (_stream_readable.js:710:20) at ToSignalK.emit (events.js:198:13) at addChunk (_stream_readable.js:288:12) at readableAddChunk (_stream_readable.js:269:11) at ToSignalK.Readable.push (_stream_readable.js:224:10) at ToSignalK.Transform.push (_stream_transform.js:151:32) at ToSignalK._transform (/home/node/signalk/node_modules/@signalk/streams/n2k-signalk.js:160:12) at ToSignalK.Transform._read (_stream_transform.js:190:10) at ToSignalK.Transform._write (_stream_transform.js:178:12)
Sep 25 10:58:17 2021-09-25T10:58:17.205Z signalk-polar 2014-08-15T19:00:58.071Z navigation.courseOverGroundTrue 3.2306
Sep 25 10:58:17 2021-09-25T10:58:17.206Z signalk-polar timediff 1.4869999885559082 , engine running? false stable? true last store 1
Sep 25 10:58:17 2021-09-25T10:58:17.207Z signalk-polar sailing
Sep 25 10:58:17 TypeError: app.pushDelta is not a function at update.values.reduce (/home/node/.signalk/node_modules/signalk-polar/index.js:531:25) at Array.reduce () at delta.updates.forEach.update (/home/node/.signalk/node_modules/signalk-polar/index.js:408:38) at Array.forEach () at FullSignalK.handleDelta (/home/node/.signalk/node_modules/signalk-polar/index.js:402:21) at FullSignalK.emit (events.js:203:15) at FullSignalK.addDelta (/home/node/signalk/node_modules/@signalk/signalk-schema/dist/fullsignalk.js:52:8) at doProcess (/home/node/signalk/lib/deltachain.js:10:13) at msg (/home/node/signalk/lib/deltachain.js:29:17) at Array.unsubscribes.push.app.registerDeltaInputHandler (/home/node/.signalk/node_modules/@signalk/calibration/index.js:82:15) at doProcess (/home/node/signalk/lib/deltachain.js:13:21) at DeltaChain.process (/home/node/signalk/lib/deltachain.js:6:16) at Function.Server.app.handleMessage (/home/node/signalk/lib/index.js:174:28) at Simple.result.pipeElements.(anonymous function).on.msg (/home/node/signalk/lib/pipedproviders.js:58:17) at Simple.emit (events.js:203:15) at addChunk (_stream_readable.js:288:12) at readableAddChunk (_stream_readable.js:269:11) at Simple.Readable.push (_stream_readable.js:224:10) at Simple.Transform.push (_stream_transform.js:151:32) at Simple._transform (/home/node/signalk/node_modules/@signalk/streams/simple.js:87:8) at Simple.Transform._read (_stream_transform.js:190:10) at Simple.Transform._write (_stream_transform.js:178:12) at doWrite (_stream_writable.js:415:12) at writeOrBuffer (_stream_writable.js:399:5) at Simple.Writable.write (_stream_writable.js:299:11) at ToSignalK.ondata (_stream_readable.js:710:20) at ToSignalK.emit (events.js:198:13) at addChunk (_stream_readable.js:288:12) at readableAddChunk (_stream_readable.js:269:11) at ToSignalK.Readable.push (_stream_readable.js:224:10) at ToSignalK.Transform.push (_stream_transform.js:151:32) at ToSignalK._transform (/home/node/signalk/node_modules/@signalk/streams/n2k-signalk.js:160:12) at ToSignalK.Transform._read (_stream_transform.js:190:10) at ToSignalK.Transform._write (_stream_transform.js:178:12)
Sep 25 10:58:17 2021-09-25T10:58:17.704Z signalk-polar 2014-08-15T19:00:58.520Z environment.wind.speedApparent 5.56
Sep 25 10:58:17 2021-09-25T10:58:17.706Z signalk-polar timediff 1.935999870300293 , engine running? false stable? true last store 1
Sep 25 10:58:17 2021-09-25T10:58:17.706Z signalk-polar sailing

Unable to show "user input polars"

I have tried to put in the date from our ORCi-sheet from jester, and from the preloaded polars but the never show up in the webbapp.

What can I look in to?

Upgrade `better-sqlite`

I'm trying to install this on RPI running Manjaro with latest Node.js, and it looks like better-sqlite won't compile.

Installing the latest version of better-sqlite seems to work.

The error for reference:

npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm ERR! In file included from ./src/better_sqlite3.lzz:11,
npm ERR!                  from ../src/better_sqlite3.cpp:4:
npm ERR! /home/maiku/.cache/node-gyp/21.1.0/include/node/node.h:1192:7: warning: cast between incompatible function types from ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Context>)’ to ‘node::addon_context_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Context>, void*)’} [-Wcast-function-type]
npm ERR!  1192 |       (node::addon_context_register_func) (regfunc),                  \
npm ERR!       |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
npm ERR! /home/maiku/.cache/node-gyp/21.1.0/include/node/node.h:1210:3: note: in expansion of macro ‘NODE_MODULE_CONTEXT_AWARE_X’
npm ERR!  1210 |   NODE_MODULE_CONTEXT_AWARE_X(modname, regfunc, NULL, 0)
npm ERR!       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
npm ERR! /home/maiku/.cache/node-gyp/21.1.0/include/node/node.h:1241:3: note: in expansion of macro ‘NODE_MODULE_CONTEXT_AWARE’
npm ERR!  1241 |   NODE_MODULE_CONTEXT_AWARE(NODE_GYP_MODULE_NAME,                     \
npm ERR!       |   ^~~~~~~~~~~~~~~~~~~~~~~~~
npm ERR! ./src/better_sqlite3.lzz:67:1: note: in expansion of macro ‘NODE_MODULE_INIT’
npm ERR! ./src/util/macros.lzz: In function ‘void SetPrototypeGetter(v8::Isolate*, v8::Local<v8::External>, v8::Local<v8::FunctionTemplate>, const char*, v8::AccessorGetterCallback)’:
npm ERR! ./src/util/macros.lzz:157:21: error: ‘v8::AccessorSignature’ has not been declared
npm ERR! ./src/util/binder.lzz: In static member function ‘static bool Binder::IsPlainObject(v8::Isolate*, v8::Local<v8::Object>)’:
npm ERR! ./src/util/binder.lzz:37:51: error: ‘class v8::Object’ has no member named ‘CreationContext’; did you mean ‘GetCreationContext’?
npm ERR! ./src/util/data.lzz: In function ‘v8::Local<v8::Value> Data::GetValueJS(v8::Isolate*, sqlite3_stmt*, int, bool)’:
npm ERR! ./src/util/data.lzz:73:92: warning: this statement may fall through [-Wimplicit-fallthrough=]
npm ERR! ./src/util/data.lzz:73:197: note: here
npm ERR! ./src/util/data.lzz: In function ‘v8::Local<v8::Value> Data::GetValueJS(v8::Isolate*, sqlite3_value*, bool)’:
npm ERR! ./src/util/data.lzz:77:81: warning: this statement may fall through [-Wimplicit-fallthrough=]
npm ERR! ./src/util/data.lzz:77:175: note: here
npm ERR! make: *** [better_sqlite3.target.mk:121: Release/obj.target/better_sqlite3/src/better_sqlite3.o] Error 1

Long story short, the Node.js API has moved forward and is incompatible with the old version.

Any chance you could upgrade it in package.json?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.