Skip to content

Release 0.9.7: Various engine and GUI improvements, introduction of the Calories workout type

Latest

Choose a tag to compare

@JaapvanEkris JaapvanEkris released this 04 Apr 12:40
· 2 commits to main since this release
8cdea5b

Main contributors: Jaap van Ekris, Abasz, DXCanas, NickOldfield, cwklurks and klamp169

New functionality in 0.9.7

  • Addition of the 'Calories' workout type. You can now program Intervals and splits based on calories to be burned
  • GUI Improvements:
    • The GUI now has dark (OLED) mode,
    • The layout is more efficient and it has new tiles for Peak Force and Ratio
    • You can now set single distance/time/calories workouts directly from the GUI by tapping on the relevant tile
  • Fit-file improvements:
    • We added a lot of metrics to the FIT-file, bringing it up to par to the RowingData file, in anticipation of intervals.icu improvements
    • The fit-file now also has splits, which makes the fit-file closer to a native Garmin recording of the same session

Newly supported rowers in 0.9.7

For an overview of all supported machines and their support status, please look at the supported rower list

Bugfixes and robustness improvements in 0.9.7

  • Introduction of the flywheel systematic error filter, this filter can handle systematic errors of magnet positioning on the flywheel. This is more effective at reducing structural measurement noise than the previously used smoothing filter and allows a reduction of the code complexity in Flyhweel.js as all dependent algorithms can use the same datastream. It reduces noise on the reference system from 1.5% (version 0.9.6) to 0.3% (version 0.9.7) (see this explanation)
  • Improvement of the Moving Least Squares regressor:
    • Code refactoring to isolate this function from Flywheel.js, allowing a more thorough testing of this function's behaviour
    • Introduced the 'Local Goodness of Fit' function to improve the robustness against noise. This reduces the effect of outliers on stroke detection, the Force curve, Power curve and Handle speed curve
    • Introduction of a 'Gaussian Weight' filter to reduce the effects of flanks on the regression in a specific datapoint
    • Added documentation about the mathematical foundations of the algorithms used
  • Fix of the Garmin bluetooth issues which affected the 'Cycling Power' and 'Cycling Speed and Cadence' Bluetooth profiles (see issue 125, issue 169 and the known issues in 0.9.6).
  • Brought the Bluetooth FTMS interface further into specification: several bugfixes in the communication to prevent miscommunication between OpenRowingMonitor and the client
  • Fixed issue where Apple HR apps would crash ORM: Fixed an issue where apple HR data would crash OpenRowingMonitor, (see issue 221).
  • Fixed a bug in the initialisation of the Flywheel.js
  • Improved logging in the Strava uploader for better troubleshooting (see issue 145)
  • Fixed a bug where VO2Max calculation missed heartrate data (see this discussion)
  • Improved the memory usage of the webkiosk: We replaced Firefox with a heavily tuned Chrome install, reducing memory usage and surpressed memory warnings regardless (see issue 130)
  • Fixed a bug in the install script:
    • as an adaptation to newer versions of Raspberry OS, we now depend less on the user 'pi' being present (see issue 135 and issue 155)
    • some package now disables Bluetooth by default. Our installation procedure automatically enables it again (see issue 206)
  • Increased the test coverage of key algorithms
  • As usual, all packages are updated to the newest versions

Known issues in 0.9.7

  • ErgData will not work well with our PM5 emulation (see issue 117).