This morning I came to work to a perfectly printed set of plates. So I started another instance of the exact same print, went for a swim at the municipal swimming pool nearby, came back to check on it just in case, and it had done the same thing it did on Friday.
This time, nobody was at the office (it’s Sunday) so I know nobody monkeyed with the print. Clearly the plate hasn’t moved. So those hypotheses are out.
The belts look tight - although the teeth feel a bit chewed up, particularly the table belt. But I doubt this is what caused the slip, as it seems to slip randomly in both directions at the same time.
At this point, I’m placing my bet on the print head coming so close to the edges that it hits the limit(s) when it’s unlucky, or it causes the stepper motors’ counters to overflow or something - i.e. it hits a firmware bug. The PrusaSlicer software seems very confident that I can print this close to the edges, and indeed the printer does it, but I wonder if it’s overly optimistic.
So I bunched up all the plates closer to the center of the bed and re-sliced, so the printer never prints less than ¼ inch from any one edge. Let’s see what happens with that.
Add some z hop. A fast move is likely contacting a lifted spot or some ooze. I have had this happen before. It can move the plate or skip steps in the motor which is undetectable unless you see it happen. The belt does not need to slip; only enough force to overcome the motor step fields’ strength is required. During fast movements, it is likely skipping some steps or transitioning from full steps to micro stepping which can create potential vulnerable points where the holding field strength is less than ideal in a compromise to create faster accelerations/decelerations. You have got to remember that 3d printers are cheap largely because they are not absolute position linear systems. All motions are relative to (0,0) home. The (0,0) home location is precise, but it is not accurate at all. Every step the machine makes is only ever precise but is accurate relative to the (0,0) home location. Therefore any skipped steps are catastrophic. The primary issue that causes this is that the steppers are in an unknown position upon first powering them up and they move randomly to whatever field step position happens to be closest. Likewise, all end stop methods do not trigger accurately to within a single step field position. It gets complicated to actually make an accurate linear system for things like IDEx or CNC.