End Motion Magic at a non-zero velocity?

Has anyone been able to run a Motion Magic loop where you end at a velocity or start at a velocity? I am aware the WPILib path following has an option to specify a start and end velocity, but I like the neatness of Motion Magic and I feel more comfortable working with it. I have multiple waypoints in a trajectory that I would like to be able to run motion magic loops to, but I would like it to end at max cruise velocity if possible and then I want to tell the next part of the sequence to start at max cruise velocity, sort of negating the trapezoidal part of the loop on one end. If anyone has any ideas or experience, please let me know! Thanks

Not possible, afaik. It might be a phoenix pro feature though?


WPILib’s ProfiledPIDController has a similar use case to motion magic. It doesn’t support nonzero start and end velocities directly because it’s primarily intended for position control. You could use a TrapezoidProfile instance tho, which does support what you want.

1 Like