At least 3D printers in the low price segment often have the same problem. There are different reasons for their stepper motors to step over one or more steps. This problem is also called layer shifting and makes waste out of your 3D print.
Chris Barr has now thought about this problem. The Australian has used magnetic encoders to determine the position for each axis. This could help specially everyone with a self-build printer or with an inexpensive purchased printer. Because these printers tend to lose steps and that’s caused by a number of factors such as excess stress, poor lubrication or running the printer at too high speed.
Chris Barr uses an ASM AS5311 Encoder IC and a custom PCB with an ATmega 328. If a wrong position is detected the system will automatically try to fix it. Thereby it should cause fewer or no waste, especially for printers that tend to this problem. More expensive printers usually don’t need such a system because they have well-fitting stepper motors.
In a video Chris Barr shows how his system works by trying to displace the print head with his hand. The print head is automatically going back to the right position and the printer continues printing. More information about this project is available on the website of Chris Barr.