What's the proper way to make these two bearings rotate together in Onshape?

As you can see, there are two bearings supporting this hex shaft, and they should rotate together. As I see it, there are 3 ways to accomplish this:

  1. Fasten one of the bearings to the other with an offset. This seems suboptimal because if I were to change the thickness of the tube or other parts the bearings would not react properly.
  2. Mate both of the bearings as revolute and use a parallel mate between the internal faces on them (the inner race is hex shaped). This works well, except that according to the help page and the Onshape courses only 1 mate should be used whenever possible.
  3. Use a gear relation at 1:1 to make the two rotate together. This feels like I’m misusing the tool, but maybe this is correct? This is minor, but when I do this I often have to reverse the direction of the gear relation to get them to move correctly.

Is there a more elegant solution here that I am missing?

Interesting question. I choose route 2, although I usually mate it parallel to the shaft (since that’s what’s actually keeping it lined up), rather than the inner face of the other bearing.


I personally don’t mate bearings to rotate. Everyone knows they are going to rotate, and they don’t change their profile when they do rotate, so eliminate all the DOF. This will also make the model run faster in the long run because that is one less movement calculation it needs to do.

In short, fasten the bearings, revolute the shaft.


I always get an uneasy feeling when doing mating conditions between one part and another part that’s loaded later.

Doing the last mating condition to align the hex shaft, bearings, pulleys, sprockets, spacers and wheel hubs makes me wonder if the order that the components are loaded and mated causes problems when the assembly is reloaded/rebuilt.

The problem reappears in the objects right next next to the bearings, if they rotate with the shaft on either side of it

That’s how I do round bearings, but a stationary hex bearing that intersects the shaft is just plain annoying.

I think people are forgetting something: CAD, at least how designers and engineers use it, is meant to be a tool to assist in design.

If we’re talking about renders that is completely different and understandable, but 99% of the equipment designed in CAD doesn’t get a pretty rendering of it.

If there is a known visual interference that clearly won’t be a problem in the real world (for example, hex shafts interfering with their bearings) it’s not worth my time to go and make it pretty and add complications to the model. Plus, at the level I work every mate counts, and we try to minimize faces and mates (DOF) at all times.

The minutiae like making bearings rotate simply wastes resources better spent elsewhere, and the same can probably be said about designing a competitive robot.

See my point above. They don’t need to rotate in most cases. Fewer DOF, faster model. If we’re talking snap rings/E-clips/collars, most of the time I just fasten them to the shaft or bearing if I know there isn’t anything to interfere with. On the rare case there is a possible interference if it rotates, I’ll just do a revolute mate on the fixed bearing.

I’m not entirely sure what you mean by loading later. Could you explain a bit more? In SW, and as far as I can tell in OS, the load order does not matter at all, as long as everything is rolled forward.

Of course parts load serially rather than all at once in models, but my guess is that the program is well aware of this and just lets the mate dangle until that part does load. Can’t imagine that adds too much to the rebuild time, but I’ll let the programmers in the room fight that one out.


Second everything said about just locking the bearing (personally, the shaft and wheel too) in place. I don’t know about rebuild times but in terms of hunting down parts that should be fully constrained and making them so, it’s certainly faster when everything is already fully constrained…


I completely agree with not worry about it. It doesn’t impact the design, and as such is just unnecessary time spent.

That said, a situation like this does provide a good teaching opportunity. While bearings are trivial, thinking through the mating process can help understand the different stresses a part goes through. You can lock the two bearings together, but in reality it’s the shaft that constrains them together. The same can be said for a rotating arm - you could just set the arm in place with a revolute on the bearing holes, but that doesn’t show you how the shaft supports the arm and controls the rotation.

So, do the mates as a teaching tool once in a while, but when working on an actual design, ignore inconsequential stuff like rotating bearings :slight_smile:

1 Like

Modeling features are resolved in the order they were created. I’m guessing that assembly mating conditions are also resolved in order, but AFTER every component has it’s data loaded. I’m not sure how CAD programs resolve mating/aligning part 2 to part 1, then part 3 to part 2 and then align part 1 to part 3. What happens when you spin part 2???

Assembly mating conditions are just too easy to become broken through the normal revision of the individual parts. There’s enough churn in CAD design that having to re-do broken alignment mating conditions takes a backseat to getting parts fabricated.

The primary value you get out of this is basically the post you just made thinking through it. I agree with Jon-- I haven’t worried about clocking bearing rotation for a design in years.

The way I understand it is that constraints like this can be thought of as a set of equations for which the solver finds a valid solution. In this case you would have one more equation than variables, and the assembly (equation) is overdefined and only has a valid solution if two equations overlap (for example, part 3 is mated to part 1 in the same way part 2 is mated to part 1, so that the solution to both is the same).

In onshape at least I find it’s usually possible (and usually how I actually want to do it) to treat mates almost as a tree, with a single mate connecting any two parts.

1 Like

inb4 @Shelby_Lamp fully mated drivetrain including gears

1 Like

not to flex or anything but my cad has that

I think the “proper” way is to fasten mate everything to the shaft then revolute mate one bearing to the tube/Versablock. That being said, in this case the proper way is probably whichever way you can do quickest so long as your mates are robust. Unless you’re noticing appreciable slowing in your document, any of the options you’ve listed are likely fine. I typically just fasten mate onto both sides of the tube because I’m never going to change the tube width from 1" and it makes sense to me.

Whatever works

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.