I’ve seen this happen a lot, and sometimes it isn’t the drain itself so much as how the robot approaches it.
One thing that helped mine was checking the water level. If the water is a bit low, the robot tends to ride heavier on the floor and doesn’t have enough lift to climb off raised areas like drain covers. Once I topped the water up to the middle of the skimmer, it stopped getting “beached” as often.
Another thing worth looking at is wheel or track wear. When the treads start getting smooth, the robot loses traction right when it needs it most, climbing over the drain edge. Mine looked fine at a glance, but replacing worn tracks made a noticeable difference.
Also, try brushing around the drain manually before dropping the robot in. If there’s a slick biofilm or fine debris around the cover, the robot can lose grip and just sit there spinning.
If it’s consistently stopping in the exact same spot, it’s usually a combo of approach angle, traction, and buoyancy rather than a fault with the robot itself. A few small tweaks like water level, tread condition, and a quick pre-brush can sometimes solve it without changing hardware at all.