Field Centric Question

Our team used field centric control this year. However, because the robot starts facing the driver, the gyro’s zero position is skewed by 180 degrees.

As the robot is shipped and I don’t have a mecanum test environment anymore, I’m trying to convince myself of how this can be resolved.

  1. always add 180 to the gyro angle before using it
  2. negate both joystick axes (this is the one I’m particularly interested in)

Are both of these solutions valid, and equivalent?

Thanks for your help. This is probably a really simple question, I’m just having trouble visualizing it.

Both will work as long as you mean reverse both axis and not negate

What do you mean by “reverse” both axes?

**

Our team does a 180 after placing the tube during autonomous, so that once teleop starts, the gyro is reset and we’re good to go. However, this took a bit of time to tweak, and at this point, you probably don’t have that luxury.

I would change the one that does only affects field oriented operation, if you ever switch back to normal controls.

From experience, having an offset angle in the code along with a comment why its there is much more helpful to people (including yourself in a week after you put it there) then seemingly randomly messing with joystick axes / wheel outputs.
Also, if you ever have the robot start in a different orientation, changing an angle is much more convenient than changing your joystick input, especially if its an awkward angle like 45 degrees.