I am surprised to mostly see banglejs underreport speed compared to garmin
We report the speed we get from the GPS chip. Inside the chip there's all kinds of insane maths going on so I'm not really sure what happens there, but it's likely a lot more convoluted than just taking the distance between the last and current points :)
However I'm not entirely sure how well it worked, or whether it worked at all in that snapshot. It could be a good starting point.
My vague memory was it depended on the dop value from the GPS, which is a bit of a 'finger in the air' accuracy figure - but at some point Bangle.js reported that differently and that may have broken things.
Do you think the banglejs is powerful enough for this sort of analysis?
Totally depends on the analysis - if you're looking at doing something simple at 20Hz then totally (and depending on the code you can JIT things or even use C code to get them running faster). If you're doing a bunch of matrix math then it could get tricky though
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
We report the speed we get from the GPS chip. Inside the chip there's all kinds of insane maths going on so I'm not really sure what happens there, but it's likely a lot more convoluted than just taking the distance between the last and current points :)
This was the typescript code for the Kalman filter: https://github.com/espruino/BangleApps/blob/2e8b9ac2cbd0ea70248bbd2ece53ae37203eab7e/apps/banglerun/src/gps.ts#L94
However I'm not entirely sure how well it worked, or whether it worked at all in that snapshot. It could be a good starting point.
My vague memory was it depended on the
dop
value from the GPS, which is a bit of a 'finger in the air' accuracy figure - but at some point Bangle.js reported that differently and that may have broken things.Totally depends on the analysis - if you're looking at doing something simple at 20Hz then totally (and depending on the code you can JIT things or even use C code to get them running faster). If you're doing a bunch of matrix math then it could get tricky though