Parameters don't seem to do what they say (mecanumDrive)

Using the method robotDrive.mecanumDrive_Cartesian(x, y, rotation, gyro) doesn’t work, however switching the parameters around to (x, rotation, y, gyro) gets more desired results however strafing still doesn’t work. I want to burn this laptop its been bugging my entire team for the last 2 weeks. :confused:

The mecanum wheels ARE in an “x” formation, and as far as we know we are getting the right values for each parameter. Anyone else having this problem? Solutions?

I would suggest posting your code so that others can look at what you have and help debug this.

In addition to programming, verify your wiring and mechanical setup.

One issue you need to remember that might cause this is that because the motors are mounted back-to-back rather than pointing the same direction, if you put all the motors driving in the “forward” direction, one side will go forward and the other in reverse. Which goes forward depends on whether there is an even or odd number of stages in your gearbox. This is not a mecanum issue; it also affects skid-steer/tank drive.

It would also be helpful to write a quick test robot that allows you to drive each motor forward or reverse or stop and ensure that your signals are getting to the correct motor, in the correct direction. Because there are 12 settings, this is probably more easily based on the keyboard than a joystick-style controller. This will help you distinguish between errors in how mecanumDrive_Cartesian() is being called and errors in motor assignment and orientation.