Omni drive on Squared Away

We had pretty high hopes for our omni wheel drive, but when the kids we test driving it for the first time today trying to drive around and pick up some cubes, I saw two problems: 1) insufficient traction in general 2) omni wheels getting stuck in the orange pegs. Here’s a pic of the underbody of our bot:

; it’s geared 1:1. Is this behavior expected on a hard plastic surface, or can it be “fixed” in the software? We tried setting the torque on the motors to 100% and reduced the inputs (velocities) to the motors by ~ 1.5.

1 Like

Are you using the robot as an X drive or a tank drive with 2 strafe motors? With X drives your torque is automatically reduced by 70%. If you are using this in a standard tank drive with 2 strafes, then I can see where the problem lies. Your traction is only the two driven wheels. If those ever get stuck or need more torque to go over an obstacle from a start, then you will not have enough traction. I don’t think there’s a software “fix” for this.

Both of my kids’ teams use omni wheels on their robots and things are fine, but their drivetrains are standard tank drives with 4 wheels (front and rear wheels on each side, geared or chained). There are some spots with pegs on the field where the wheels can get caught, but that’s only if the robot stops with the wheels in-between the orange pegs then tries to move forward.

One of the my daughter’s school’s teams had a robot set up where it was 4 wheels (front and rear on both sides) but not chained. So, the robot essentially was only getting traction from the 2 wheels connected to the motors. We saw that when picking up cubes in autonomous and trying to do a 180 turn the wheels were seriously slipping and it was not able to turn as far as the code told it to. Once they chained the wheels together they got the right traction and their autonomous worked perfectly. If your robot is not an X drive, then you may want to make it a standard tank (chained or geared) using 4 wheels… you can still have your strafe motors.

Also, is the drivetrain 1:1? From what I can see, your wheels are connected to 36 toothed gears, but he motors are offset, so I would assume 12 tooth gears are connected to the motors, unless they are angled diagonally.


It’s more of a tank setup where the left and right motors are used to drive the bot forward/back, and the other two are used to drive side to side. The motors are geared 1:1.

With a regular tank drivetrain, are there any advantages to having omni wheels in the back? Would they be chained/geared, or would they behave more like caster wheels?

1 Like

OK, yeah, I would recommend you turn it into a regular tank drive or H-drive drivetrain. Chain or gear the front and rear wheels on both sides. We prefer chains because you can build a chain to any length you like. Gears only fit in specific distances, and depending on how far apart are the wheels you may have to find a right combination so the gears can actually fit.

Since you are strafing from side to side then you can only use omni wheels. You can’t use regular wheels with rubber tires as they will offer too much friction when your robot goes side ways.

Here are a couple of links from Vex. and


If you are running the right code (here is a link to the original VRC code by Cody ( Holonomic drives 2.0: A video tutorial by Cody) ) then you should be fine.

When you say the omni wheels get stuck, are the pins getting between the rollers and the wheel?

You show us the top view of the robot, but the bottom is important. Your wheel axles should be at the very bottom of the robot to make sure you have clearance past the pins.


I believe the pic was of the bottom of the bot. My teams had trouble with it because if an onmi hits a peg perpendicular it blocks it.

The wheelbase looks pretty small as well, and dedicating 4 motors to the drive base doesn’t give you much to work with for they other functions the bot needs to do…

1 Like

Yes, that was the bottom of our bot. We ended up going back to a tank-type drivetrain and couldn’t be happier. I’m just wondering if anyone’s been successful with either H-type drive-train or a true X-drive on a VEX IQ field?

Yes, there are many teams that have been successful using H or X drives with Vex IQ. During our first year, the robot was an H drive, and last season our sister team used an X drive.

There are challenges and things to consider with H or X drives. From our learnings with H drives, the strafe wheels need to be under the center weight of the robot (not necessarily the center of the robot) since when driving weight balance is important to keep the robot straight. This is especially important for autonomous. Also key would be to making sure the strafe wheels are always in contact with the floor. Since Vex IQ parts are plastic they can bend, so don’t assume they will remain straight and always make contact with the floor.

With X drives, you basically have to allocate 4 motors to your drivetrain, which only leaves you with 2 to use for the cubes/balls, etc. Also, with X drives torque is reduced to 70% automatically (speed is automatically increased by 140%)

1 Like

this isn’t exactly related, just a might want to make the base bigger, you don’t really have space to mount anything. and you might want to consider this design:

but change the left/right drive motors(there are two on each side) to one.


We’re back to a tank drive, but our sister team has a design similar to that, with a larger base and two omni wheels instead of one in the middle. Theirs also spins and loses traction and gets caught in the pegs just like ours did.

i know, my robot got stuck on the pegs too…one time we got stuck, and 4 pegs got bent, 2 popped out. but have you tried elevating the main base and mounting the wheels each on two vertical beams?

Is it possible to take a picture and show the robot stuck on the orange pegs? There are specific peg spots where omni wheels can get stuck, but from our experience the robot has to come in at a very specific angle and speed in order for it to get stuck. Go over the orange pegs at a different angle or go near full speed no problems (other than redirecting the robot, which is a big problem for autonomous… but that’s a whole different issue).

1 Like