Conversation
This patch fixes evil-mad#235 and evil-mad#236 to correctly validate L3 commands with non-zero jerk2 and also flips the gJerk1 and gJerk2 globals if the sign on gSteps1 or gSteps2 is negative in legacy mode.
EmbeddedMan
left a comment
There was a problem hiding this comment.
The change from gJerk1 to gJerk2 is clearly a type (sorry!) and I'm sure that's correct.
The other two changes feel right, but I don't have a deep enough understanding of the mathematics to know that they are correct. @oskay do you think negating the Jerks is correct?
|
I'm also not positive that the inversion of vel/accel/jerk if steps is negative is right in any case, but it is the documented behaviour for
|
|
I agree - it would feel really weird that this same step should only be in one of those two commands. If it's in LM it feels like it should be in L3. But @oskay is the real mind behind all of the math here, so I trust his judgment on if this change should be made or not. |
|
@oskay Would you like me to do a test build with these changes so you can test it out before merging? Or should I just merge it into master and then do a new official release? Realistically I'm unlikely to have time at this point to create specific tests to exercise these changes, so if you want to test it first you'll need to come up with some test cases. |
The firmware fix in PR #237 adds Jerk to the set of parameters that are sign-flipped when negative Steps is used for direction. Update the L3 documentation to reflect this.
This patch fixes #235 and #236 to correctly validate L3 commands with non-zero jerk2 and also flips the gJerk1 and gJerk2 globals if the sign on gSteps1 or gSteps2 is negative in legacy mode.