A Little Rewiring Teaches A Creality Ender 3 New Tricks

The Creality Ender 3 is part of the new wave of budget 3D printers, available for less than $250 from many online retailers. For the money, it’s hard to complain about the machine, and it’s more than suitable for anyone looking to get make their first steps into the world of FDM printing. But there’s certainly room for improvement, and as [Simon] shows in a recent blog post, a little effort can go a long way towards pushing this entry-level printer to the next level.

The first step was to replace the printer’s stepper drivers with something a bit more modern. Normally the Ender 3 uses common A4988 drivers, but [Simon] wanted to replace them with newer Trinamic drivers that offer quieter operation. Luckily, Trinamic makes a drop-in replacement for the A4988 that makes installation relatively easy. You’ll need to change out a few caps and remove some resistors from the board to make everyone play nice, but that shouldn’t pose a challenge to anyone who knows their way around a soldering iron.

Beyond quieter running steppers, the Trinamic TMC2208 drivers also offer direct UART control mode. Of course the Ender’s board was never designed for this, so the MCU doesn’t have enough free pins to establish serial communications with the three drivers (for the X, Y, and Z axes). But [Simon] realized if he sacrificed the SD card slot on the board, the six pins that would free on the controller could be cut and rewired to the driver’s UART pins.

Combined with the Klipper firmware, these relatively minor modifications allows him to experiment with printing at speeds far greater than what was possible before. Considering the kind of headaches that a ~$200 printer would have given you only a few years ago, it’s impressive what these new machines are capable of; even if it takes a few tweaks.

How Accurate Is Microstepping Really?

Stepper motors divide a full rotation into hundreds of discrete steps, which makes them ideal to precisely control movements, be it in cars, robots, 3D printers or CNC machines. Most stepper motors you’ll encounter in DIY projects, 3D printers, and small CNC machines are bi-polar, 2-phase hybrid stepper motors, either with 200 or — in the high-res variant — with 400 steps per revolution. This results in a step angle of 1.8 °, respectively 0.9 °.

Can you increase the resolution of this stepper motor?

In a way, steps are the pixels of motion, and oftentimes, the given, physical resolution isn’t enough. Hard-switching a stepper motor’s coils in full-step mode (wave-drive) causes the motor to jump from one step position to the next, resulting in overshoot, torque ripple, and vibrations. Also, we want to increase the resolution of a stepper motor for more accurate positioning. Modern stepper motor drivers feature microstepping, a driving technique that squeezes arbitrary numbers of microsteps into every single full-step of a stepper motor, which noticeably reduces vibrations and (supposedly) increases the stepper motor’s resolution and accuracy.

On the one hand, microsteps are really steps that a stepper motor can physically execute, even under load. On the other hand, they usually don’t add to the stepper motor’s positioning accuracy. Microstepping is bound to cause confusion. This article is dedicated to clearing that up a bit and — since it’s a very driver dependent matter — I’ll also compare the microstepping capabilities of the commonly used A4988, DRV8825 and TB6560AHQ motor drivers.

Continue reading “How Accurate Is Microstepping Really?”