Right now, we auto-shift based on encoder values...but if the robot is in a pushing contest with wheels spinning, that results in an autoshift when we really shouldn't. We should try to detect reasonable motion (either using isMoving or by checking if our x/y motions exceed a threshold).
Right now, we auto-shift based on encoder values...but if the robot is in a pushing contest with wheels spinning, that results in an autoshift when we really shouldn't. We should try to detect reasonable motion (either using isMoving or by checking if our x/y motions exceed a threshold).