Layer shifting on X axis

My M200 seems to be suffering from layer shifting that I can't shake, it seems to only happen on the x axis and always shifts towards the right (x posisitve).
Things I have done
1) Tighten and tension motor pulleys, I also marked the motor pulleys to indicate if they were slipping and they don't seem to be.
2) Tighten all of the pulleys on the smooth rod shafts. Problem remained.
3) Loosen all of the pillow blocks, move the head as described in the zortrax support document and re-tighten the pillow blocks with the head in the 1st position. This helped some but the problem is still there.
4) Loosen all of the pillow blocks, move the head as described in the zortrax support document and re-tighten the pillow blocks with the head in the corner closest to the pillow blocks. The hope was that this would set x/y rod gap better / differently than #3. Problem still remains.
5) Remove the bed, clean the cruft off, flex the pcb re-attach. I don't seem to have problems with bed level or prints lifting.
6) Printing normal instead of fast, the print actually failed sooner.
7) Lubricating all rods. Problem remained.
I will say that moving the printer head manually there is quite a bit more resistance than I would have thought, and there is noticeably (but not dramatically) more resistance when moving the head left (x negative) than any of the other axis / direction.
I think it is a mechanical friction / binding issue but seem to be unable to relieve it.
If I print small items they generally print fine without issue, but when I plate a few items or do something medium size 5x5 for example I get the shifting. It seems to be worse if the items are plated apart from each other towards the edges of the plate.
It's an awesome printer, but at the moment with the shifting it's kind of dead in the water.
Any advice would be helpful
Photo of shifting, the ends of the part should be even but they have shifted. The failed print in the front is one that I stopped just after a few layers of shifting.
The STL I am printing (happens on other models though no specific to this model:
I can post up the zcode later today but my settings are:
.19mm layer height
red z-abs
normal / fast speed
medium infill
light support

Check this link, I think in your case you should check only pulleys and grab screws which mounted pulleys.

Sadly all of the steps in that guide are included in the list of steps I have completed. Thanks though!

Yep.. Thinking that is a motor pulley.. You say you marked the motor shaft and pulley to see if it was slipping?

"Printing normal instead of fast, the print actually failed sooner"    That is strange because steppers generally have more torque at lower speeds.. (if it's binding)

Correct I took a black marker and marked a line on the pulley and the shaft of the x/y motors, the black marks are still lined up after several shifted prints. The motor pulleys were the first thing I tried and they originally were not all that tight so I cranked them down really good. It might be worth removing the pulley and filing a small flat on the motor shaft.

It might be the linear ball bearings in the head. Try to loosen the set (or grub) screws that hold the linear bearings in place. If they are too tight they can cause the bearings to bind. You want them just barely snug (no radial play but without squeezing the bearing casing). For the x-axis (lower pair of bearings) the set screws are on the front and back side of the “head block”. Try them first. The screws for the y-axis bearings (upper pair) are on the top of the block and are only accessible if you take the extruder stepper out (…which is not that difficult).

You can also pull the bearings out of the block (one by one) when the set screws are loosened… this way you can slide them back and forth on the rod individually and check if they run smoothly. If they don’t, you might have a damaged bearing…this can happen if they were ran with a binding condition for too long. Also check the rods for any “grooving” from the bearing running too tight…if you see a groove and notice the bearing to run rough then try to rotate the bearing a couple degrees to let the balls run next to the groove…if it’s smooth then you can push the bearing back into the block in the newly indexed position and then snug the set screws. These bearings run on 4 tracks on the round rod if I’m not mistaken…so a single groove is not a problem if you index the bearing away from the groove.

I took the x/y cross members and the print head out, the rods seemed very smooth on the head along the full length in both directions. Without the head or cross members in place there is still a good amount of force needed to move the guides along.

One thing I noticed that did make a noticeable difference in the amount of force needed to move the head is relieving the tension on the pillow bearing block nuts. Loosening them and then tightening them back up until snug and not super tight seemed to make the whole movement easier. I am guessing this is directly related to amount of belt tension as the countersunk pillow blocks seems self tensioning as you tighten them.

Re-leveled the bed and running another print test on 'fast'.

With the pillow blocks tight but the stepper belts off…how hard is then to move?

I wonder if there’s an issue with the position of your pillow blocks relative to each other…tolerance, machining of pillow block holes off, etc.

it should not bind like that.

The tension of the long belts is not adjusted by the pillow blocks . It’s done with the screws in the guide blocks. The short belts are adjusted by pushing the motors down in their elongated mounting holes.

Try to take the belt tension out on the motors and guide blocks. Then realign and tighten all the pillow blocks until everything moves with low resistance. Then tighten the belts back up. Search for my post how to adjust the belt tension evenly using an iphone app.

If you can’t get the system smooth soon you should start opening a support ticket.

Edit: can’t find the post anymore for some reason… I could swear I posted it here. Anyway… There’s a continental belt tension app (tension2go) which allows you to adjust the tension via microphone… I think around 80hz was the basic setting on my belts if I remember correctly…

Here the video about the app

One more idea… Run a simple shape (square block) with the pillow blocks loose and then try to get the motors to skip by holding the head with your hand? Does the x motor have less power than the y? Maybe there’s a bad cable/connector on the x motor…