Adding the Catenary Sag Calculation to the stock firmware

I am going to work at improving the official Firmware with one more of @Joshua’s prototype feature: catenary sag calculation.

The first step is to review the calculations independently to make sure we can assess the accuracy and sensitivity. One could argue it works. But will it always work? So a function review is important.

The next step is to decide whether we keep the parabola solution and offer the catenary as an alternative, or if we drop the parabola altogether.

Now before we count the votes, I would like to highlight one key aspect:

User experience.

  • It is important to not break the MaslowCNC performance through SW upgrades.
    We must let people trust they are not going to lose time recalibrating or lose their MalsowCNC performance. Yet, they must install improved firmware and Controlware to enable improvements.
  • So our goal should be to let them try better solutions at the flip of a switch, and have an easy step back if they don’t find it useful for them.
  • As an example, to protect that user experience, the sled weight value and sag correction factor were separated in the last firmware pull request (as compared to @Joshua 's prototype firmware.)
  • ->(In the same line of thinking, should also add a chain stretch compensation ON/OFF switch?)
  • ->Once Controlware :tm: ( either GroundControl or WebControl) features are ready, and the firmware is ready, then Controlware :tm: may offer the nice GUI settings on/off switch: That is the easy upgrade path not breaking user experience.

sag calculation

So about chain sag calculation: I would recommend we offer both parabola and catenary, and add a firmware switch parameter defaulting to “parabola”. This would let everyone continue upgrade their firmware while using parameter values they know, until they are ready to try it out.