I have a cr-20 and an Ender 3 v2, both of which have dual z.
I don’t know if my thought process is correct but I did have concerns about keeping the steppers in time with each other. I’ll just ramble off my decision making process for you to take as food for thought.
I have had my Cr-20 pro for a bit over a year, I did dual z on it because I made it direct drive and wanted more support for the added weight. The Cr-20 has a fixed bed, as in no bed levelling knobs.
I put the Fysetc dual z system on it that is belt driven with only one stepper. It has worked great since I installed it, but I changed it for reasons below.
I just got the Ender as part of the college program I’m doing so I decided to upgrade it in a similar fashion to my cr-20 by doing direct drive and dual z. They are basically the same printer with the difference being that the Ender has an adjustable levelling bed.
When I ordered the parts for the Ender from 3dpc the Fysetc belt system was out of stock so I ordered the Creality dual stepper kit instead.
So we now have a printer with a fixed bed and one that is adjustable and three ways to do dual z on each
- One stepper driving two lead screws synced with a belt
- Two steppers in parallel sharing one driver
- Two steppers on individual drivers for individual control
As far as I’m concerned, option 2 is not an option. The problem is, as you were initially concerned with, the motors aren’t synced. When you power down the printer the steppers can move independently of eachother. Or they can miss steps since they are two steppers sharing the current from one driver and grow out of sync. It may only be a tiny amount but it leads to a variable that causes inconsistency. You would regularly need to manually measure to tram the gantry to the bed to make sure things stay parallel.
So now we have option 1 or 3.
On my current setup I am using option 3 on the Cr-20 with the fixed bed and option 1 on the Ender.
Let’s start with my Cr-20. It is using two steppers plugged into an SKR 2 board with 5 stepper drivers. Each z motor has independent control and the printer has a bltouch. With this setup I can use G35 in Marlin which does auto gantry levelling. Before each print the carriage goes back and forth between each side of the bed and probes to see how far out of parallel the gantry is to the bed. Each stepper can move independently so it is able to auto correct and it will get within 0.01mm parallel across the width of the bed. This works well because the bed is fixed so it is a constant reference point to probe off of. As long as my bed is square to the uprights everything is happy.
On the Ender I have the belt driven system that used to be on the Cr-20. In this case the gantry was set up level to the frame of the printer, square to the uprights and the bed is the moving target. Instead of the gantry getting trammed to the bed, the bed gets levelled to the gantry. The belt keeps both sides in sync with eachother so if you manually move the gantry up or bump something with the printer off both sides stay together so long as the belt doesn’t slip (which is very unlikely).
So long story short, on an Ender I recommend the belt system. It is easier to install, doesn’t require a board upgrade for more drivers, doesn’t need a bltouch. If you’re careful setting it up it keeps everything moving together nicely and doesn’t really need any maintenance.
If however you are feeling adventurous the independent two stepper option does have potential for really good accuracy and piece of mind knowing that every time it is only out of alignment by 0.01mm at most.
I would happily do the belt system on both printers and the only reason I went down this rabbit hole was because 3dpc only had the dual stepper version in stock at the time which forced me into a board upgrade and a whole convoluted upgrade path.