Welcome! Log In Create A New Profile


Problems with Dual Z Axis Drivers

Posted by CTCHunter1 
Problems with Dual Z Axis Drivers
April 03, 2016 11:57PM
I've been having issues losing steps in the z-axis on a P3Steel build. I've had the 2 z axis motors hoked up in series for the z-axis. I've noticed I'm missing steps in z in this configuration which is more pronounced in prints with a lot of z retract.

Today I hooked up my printer with dual z-axis drivers thinking having dedicated drivers for the 2 z steppers would help things. My changes in firmware have been uncommenting #define Z_DUAL_STEPPER_DRIVERS on line 144 of Configuration_adv.h of marlin and installing a separate driver on E.

I'm seeing a few strange behaviors. 1) Sometimes when homing the z-axis one of the motors over spins at higher speed and jacks up that side of the axis. 2) sometimes when increasing the height by 1mm one of the axis spins excessively(like 4x the speed rate) and over extends that axis 3) some times when increasing the height by 1 mm one axis moves down rapidly and the other axis moves up.

I do not have micro-stepping enabled on the z-axis or E1 (z2-axis). I've tried to make some videos documenting these issues. If you watch them you will see the axes get cocked on some of the z-axis moves. I've tried using A4988 and DRV8825 drivers both have the same issues. I've tried changing from Marlin 1.0.2 to Marline 1.1.0 same issues. I am using 400 steps per revolution motors.

Max feed rate it set to 2.5 mm/sec and max acceleration is at 20 mm/s^2. I've played with these values lowering them to 1.0 mm/s and 15 mm/s^2 and haven't fixed it.

I've tried to document the issues in the below videos. It's not easy to see the steppers moving backwards vs forwards so I've tired to annotate where there has been an issue.

Voltage on the DRV8825 Rsenses are set to 0.89 V. I'm going to move to parallel steeping next. These issues seem like software to me but maybe it's cheap hardware or something else. I know other users are doing 2 drivers for the z-axis so it's probably something related to my setup.

Problem with Dual Steppers Drivers on Z-Axis - 4 Movement problems @39 seconds.

Problem with Dual Steppers Drivers on Z-Axis - 3

Problem with Dual Steppers Drivers on Z-Axis - 8x view Speed - 2

I can try for more videos in day light if its hard to see in these. I'm planning on moving to a parallel hookup in the meantime. Any guesses to these issues.
Re: Problems with Dual Z Axis Drivers
April 04, 2016 03:54AM
I can't help you with Marlin, but I use the same configuration 2 Z-drivers on a P3steel with M5 Z screw, in combination with Repetier and it works perfectly.
I am now running 8 mm/s, acceleration I don't know. But my motor current is 1.6A

Your motor current is ~0.9A with that voltage ref, or not ? Is that not a little bit low ?

You could try Repetier, to check if it is a software problem. You only have to switch "copy Z axe" on and select the driver in the web configure tool.
and it worked for me. I had them Parallel BTW, before I switched to two drivers, and that was also not working that great, very low speeds.
Re: Problems with Dual Z Axis Drivers
April 04, 2016 04:19AM
Do you realy use the motors in series connection? If yes change that to parallel, it could already be your problem.

Re: Problems with Dual Z Axis Drivers
April 04, 2016 04:55AM
I read in a number of threads that serial works better then parallel. ( I know that parallel doesn't work as good as two Z drivers, I didn't test serial )
Who is right?? and why.
Re: Problems with Dual Z Axis Drivers
April 04, 2016 07:01AM
The problem with parallel wiring is that two motors requires 2X current and the little driver modules can't usually handle that much current. Wiring the motors in series guarantees identical current in each motor and uses only 1X current.

Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Re: Problems with Dual Z Axis Drivers
April 04, 2016 08:31AM
Thanks, sounds logical, was thinking way to difficult :-)

Edited 1 time(s). Last edit at 04/04/2016 08:31AM by amigob.
Re: Problems with Dual Z Axis Drivers
April 04, 2016 09:30AM
Since the Z Axis is usually not that hard to move, especially if you have two motors the actual load per motor is very low compared to X and Y. Usually one driver can handle two z motors in parallel with no problems. Yes in theory they can need two times the current, but in reality that only happens if your Z axis has some bigger mechanical problems.
Edit: The boards that offer two connectors for Z (like the RADDS) have them in parallel.

Edited 1 time(s). Last edit at 04/04/2016 09:32AM by Srek.

Re: Problems with Dual Z Axis Drivers
April 04, 2016 12:37PM
If you want to move a little bit fast and have good acceleration, again you need to increase the current.
That is why my due+RADDS has now two drivers for the Z axes, It almost doubled the speed.
And I use RAPS128 that real can give 2A ( with the two driver I reduced it to 1.5A )
Anonymous User
Re: Problems with Dual Z Axis Drivers
April 07, 2016 01:29PM
I modified my Geetech Al for one stepper for the Z axis. See here : Geetech Prusa

Same issues discussed.

It works pretty well.
Ignore the ranting of some Ignoramus questioning the solution. It works great. I have started printing at twice the "default" speed of 60mm/s and no issue.

The Pololu stepper driver clone (with 1488) are set to deliver 0.6A (yes, they have a 0.2 ohm sens R !!!!) and no issue.

Edited 3 time(s). Last edit at 04/07/2016 01:39PM by MKSA.
Re: Problems with Dual Z Axis Drivers
April 08, 2016 03:01AM
I took yor advice amigob and am trying to get repetier firmware working on this printer. I am having problems with the serial communication in repetier and posted into the repetier forum about it.

In the mean time with Marlin

I tried changing out both the z axis motors with new ones. I encountered the same problems immediately after this change so I know it's not the motors.

After this I swapped the two drv8825 drivers. The left axis continued to occasionally move down when I raised z by 1 or .1mm . So is it is not the drivers.

I went to a parallel configuration. I was having the motors lock up on moves. This tends to be from insufficient current. I turned up Vref and it helped but didn't fix it. Then I commented out thr z_dual_stepper_drivers line in configuration_adv.h . This got things working. I was surprised because I didn't expect it to matter if I was sending steps to the other motor driver with no motor connected. That setting changes things more than expected.

On the drv8825 Itrip = Vref*2 so for .8 V I am running Itrip ~ 1.6 A .With two in parallel I'm running Vref=1.8 V.

I am still suspecting a software issue. Hopefully I'll get through the serial communications issues in repetier soon and use it to know it it is Marlin.
Re: Problems with Dual Z Axis Drivers
April 08, 2016 03:35AM
I am using the Repetier firmware and host and there is no "configuration_adv.h" file in the firmware,
The advantage of Repetier firmware is that it has a online configure tool. So I have never touched
the "Configuration.h" file. The only thing I do is load the current Repetier configuration.h file in the online configure tool
change what I want to change and download it, so that I can build it together with the rest of the firmware.

So it seems that you are not using the Repetier firmware.

P3steel DXL, with Due/RADDS/Raps128 dual Wade's extruder
Re: Problems with Dual Z Axis Drivers
April 08, 2016 11:54AM
I installed the firmware. I configured it with the on-line tool. I'm having a hard time communicating with it over the serial connection. I started a thread on the repetier forum about this. I know it took the flash because the startup screen on my LCD screen changed to say Repetier v. 0.9 and the status screen is different.

I've been using printrun to try to connect to it. Basically, when I try to connect all I get is a bunch of garbage characters over the serial connection. I've got the baudrate set to the same thing in the repetier firmware as I do in printrun. I've tried a few baudrates (changing both in firmware and printrun) too and I keep keep getting the same issue. I tried using the repetier host software to connect as well and it doesn't communicate with it either.

If I flash back to Marlin I can communicate over serial with it no problem.

Re: Problems with Dual Z Axis Drivers
April 08, 2016 12:46PM
Check to see what baudrate is being flashed. It's in Configuration.h (marlin). Don't know about other firmwares, but probably similar. Note that flashing usually uses a different baudrate.
Re: Problems with Dual Z Axis Drivers
April 08, 2016 11:29PM
It was a baud rate issue. Changing it in configuration.h wasn't changing it in the firmware because it was being store in eeprom. I had to change the eeprom set in the firmware to overwrite it.

Now on to testing the z-axis issue.

Edited 1 time(s). Last edit at 04/09/2016 03:14PM by CTCHunter1.
Anonymous User
Re: Problems with Dual Z Axis Drivers
April 10, 2016 10:59AM
Amusing these "probblem"/ "solutions", yet you will NEVER be able to keep your two Z motor/screws synchronized all the time (unless you use feedback like servo motors, encoders ...).
The ONLY valid solution is to have ONE stepper. Besides, the Z axis is the one requiring the least power and speed. Speed is achieved by the X,Y, extruder.

Put alignment mark on the shaft/couplers whatever and see by yourself that you will get out of synch soon. Just power on/off can do. Z uses micro stepping too.

Edited 1 time(s). Last edit at 04/10/2016 11:02AM by MKSA.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 12:25PM
Per amigob's advice I have switched from Marlin 1.1.0 to Repetier 0.92 firmware and the problems with using 2 z-axis stepper drivers has gone away.

Using 2 stepper motor drivers, I no longer see intermittently, 1) one motor move down while the other one moves up, 2) one motor move up at a different rate than the other, and 3) one motor running away during homing.

I included my Marlin configuration.h and configuration_adv.h in this post if it is of any use. Like I said above I've tried the latest stable and 1.1.0 of Marlin. This seems to be a old Marlin bug. I guess I should open a bug report with them.

Edited 1 time(s). Last edit at 04/10/2016 12:29PM by CTCHunter1.
open | download - Configuration.h (43 KB)
open | download - Configuration_adv.h (29.9 KB)
Re: Problems with Dual Z Axis Drivers
April 10, 2016 12:42PM
I have a GT2950 board with a single driver for both z motors. I have actually marked my shafts and they are always perfectly synchronized. Every time I home the axes after a print, the markers always point to the exact same place. I'm running Marlin_1.1.0_rc3.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 12:42PM
Re: MKSA's comment

I've seen others also say you need to use a belt or something so that you use 1 motor for the z-axis. the_digital_dentist did just this in his instructable with a belt . It sounds like you have some experience with this since you are talking about marking the z-axis and seeing them lose sync.

Of note, the reason I'm looking into using 2 z-axis stepper drivers isn't because I was losing sync between the screws (although I was). It's because I was flat out missing steps on prints that have a lot of z-axis retraction in them. I was losing sync between the screws as well. I figured going to dedicated drivers might help this.

As far as losing steps goes, if encoders (closed loop) was the only way to prevent this, I would think that would require encoders on the x ans y axis that is said to have a lot more stress on it than the z-axis. Losing steps on those axis would cause layer shift that I am not seeing in prints. I have seen that before but it normally means something is misaligned, belt not tight, or current needs to be turned up on the stepper.

If we are not losing steps on the open loop x and y axis then we also should be able to print without losing steps on the z-axis. If that is the case then we should be able to do that one or two steppers drivers.

I have disabled micro-stepping on my z-axis. 500 steps per mm seems like it should be plenty of resolution. I might try re enabling it latter to see it if really was part of the issue. It certainly will help the noise.

Edited 4 time(s). Last edit at 04/10/2016 11:51PM by CTCHunter1.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 01:16PM
I think the reason the Z axis behaves differently from the X and Y axes is that the space between the rails (in most printers) makes accurate alignment difficult which can lead to binding. Then there's the microstepping issue. On power cycling the motors may shift to the closest full step position. There's no guarantee that they'll both go to the same full step so after multiple power cycles there may be a significant tilt in the X axis.

That sort of uncertainty and the difficulty of properly aligning the X axis to be orthogonal to the Z axis is one reason I used a belt to drive both screws with a single motor. My Z axis has been every bit as reliable as the X and Y axes, and after final alignment, has never required any readjustment.

There's an added benefit of driving the Z axis with a belt. If I want to raise or lower the X axis/extruder carriage, I just pull on the belt and both screws turn and the axis moves where I want it to move. I don't have to have the power on, I don't have to step through menus to jog, etc. It's as easy as moving the X and Y axes. It doesn't seem like a big deal, but once you've worked on a machine like that you'll never want to go back. I maintain a Taz printer with two Z axis motors at the makerspace and all the messing around required to move the X axis up and down drives me nuts.

Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Re: Problems with Dual Z Axis Drivers
April 10, 2016 03:25PM
My first attempt at fixing this with my 2 z-axis motors connected to a single stepper in the serial configuration was disabling the microstepping. I had line #define DISABLE_Z true in configuration.h of marlin. I was also figuring that in doing this was causing the motors to fall to the nearest step between moves leading to step loss.

This actually didn't fix the issue. My part of interest continued to come out thin in the z-axis. I figured it was a general issue and designed and printed this z-stair case test part. The height of all the stairs came out in specification. That made me think it was due to having a lot of z-retract in the print. I was able to improve it in the z-dimension by turning down the z-feed rate from 2.5 to 1.5 mm/s and the acceleration down to 15 mm/s^2. This was with microstepping disabled but the part still came out undersized.

I'm now onto working with 2 z-axis stepper drivers by using Repetier firmware. So far I'm still finding that the right motor is losing steps. I just got this going today so I will update when I know more.

I find it interesting that you think it has something to do with binding in the z-axis due to poor alignment. I went from a Prusa i3 to P3steel to try to fix these issues. I still wonder if i have binding on my axis from poorly printed x-motor and idler mounts printed on the previous i3.

Edited 2 time(s). Last edit at 04/10/2016 11:53PM by CTCHunter1.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 03:32PM
I just had my first a dual z-stepper driver miss step in Repetier firmware. I moved up 1 mm and the right axis moved down two while the left I think moved up. Way less frequent then it was in Marlin but maybe this is for other reasons.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 05:42PM
what type of microcontroler board are you using ?

for the faster micro controllers you have these settings
Delay stepper high signal
Delay stepper direction signal

P3steel DXL, with Due/RADDS/Raps128 dual Wade's extruder
Re: Problems with Dual Z Axis Drivers
April 10, 2016 06:13PM
I'm running an Arduino Mega/Ramps 1.4.

The problems I started this thread with, axis moving in opposite directions intermittently on z axis moves is pretty much gone with repetier firmware. These problems have happened once in all my z-axis moves since my change to repetier firmware.

Per MKSA's advice I marked the z-axis couplers with a sharpie. I was seeing them lose synchronization during the z-axis retracts of my prints (no u-stepping). It was noticeable(more than a quarter turn) before the end of the first layer because of the z-retraction

For my last print I just re enabled microstepping, 32x because I'm running drv8825s. That changes my z-axis from 500 steps per mm to 16000 steps per mm. Although I was worried I'm pushing the Arduino Mega/Ramps 1.4 to hard the result was good.

The right coupler is one or two degrees under rotated in doing z-axis homing after the print. Right now I think the second lesson is the driver is designed to microstep. Don't disable it.

I'm going to try reducing my z-axis feed rate and acceleration. It is currently set to 2.0 mm/sec and acceleration 100 mm/s^2 .

Edited 4 time(s). Last edit at 04/11/2016 01:55AM by CTCHunter1.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 06:20PM
it is not 160000 put 16000

But I have Radds and raps128's but for Z I use 8 or 16 microsteps that is already to mutch

P3steel DXL, with Due/RADDS/Raps128 dual Wade's extruder
Re: Problems with Dual Z Axis Drivers
April 10, 2016 06:54PM
DRV1225 chips have some known problems with microstepping. See [cabristor.blogspot.ca]

Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Re: Problems with Dual Z Axis Drivers
April 10, 2016 07:32PM
I meant 16000. It seems excessive but it works. I had it set to this previously in serial motor configuration before I started to get into this problem.

the_digital_dentist: that's an interesting link you posted. I'm not sure of the default decay mode. This link says it's an "intelligent mode" that auto selects. Looking at the traces in that link, his last trace post upgrade doesn't look much better than his first one. Actually it kind of looks worse. I wonder what the traces on a A4988 look like. If this is accurate it's showing a similar dead zone. My findings today are I need to have microstepping on to have synchronous z-axis positioning.

I'm running my DRV8825's with Vref = 1.19V or I_trip = 2.38 A. My stepper motors are rated to 2.25 A. I turned it up all the way without the motors in micro stepping mode. Maybe I can dial it back now. That link says problems get worse with higher current. I'm using a a 24 V PSU.

Now I just replaced my x-axis idler. I broke it at the start of this process by crashing my carriage into it which snapped it. I did that last print with elmers glue holding it together. With it I can tension my x-axis again.

I just lowered the speeds to 1.5 mm/s feed and 25 mm/s^2. So far the marked z couplers look in sync. After I get a second backup idler I'll go back to my part of interest.

Edited 4 time(s). Last edit at 04/11/2016 01:57AM by CTCHunter1.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 08:35PM
That's a lot of current for a drv, your're risking thermal shutdown at that level. If you really need a pair of such powerful motors then you should probably be looking at some heavier duty drivers.

I have the embarrassment of a single motor belt drive layout that still manages to get out of synch. I put witness marks everywhere and nothing is slipping, so the only explanation I can think of is that the belt is jumping teeth on a pulley. One of them only has slightly more than 90 degrees of contact, so at some point I'll add an idler to wrap the belt further around and see if that improves things.
Re: Problems with Dual Z Axis Drivers
April 10, 2016 11:28PM
I read at one manufacturer's site that for gear-belt pulleys, you want a minimum of 6 teeth or a minimum of 90 degrees wrapped, whichever is greater. Make sure the tension is good, too.

Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Re: Problems with Dual Z Axis Drivers
April 11, 2016 12:01AM
JamesK: That was a typo it was 2.38 not 2.83. I fixed the typo with the edit feature on the forum. It's still high but I have back up drivers and motors. The z-motors are also heat sunk by the p3 steel chassis even though they are getting warmer in the always on configuration they are in with repetier compared to off after move in Marlin.

Are the screws out of sync on your build. If you mark the z-axis couplers with a line at z=0 pointed towards you, do they return to the same position in homing after the print.

I think using 2 motors on the z-axis could be beneficial vs. belt. If you have the above markings, and you see them lose alignment, you know you have a problem on the z-axis. With one motor + belt you could be losing steps on some moves and not even know it. My printing problems in serial motor wire configurations looked like that. I was losing steps and couldn't easily see it.

Edited 8 time(s). Last edit at 04/11/2016 02:52AM by CTCHunter1.
Re: Problems with Dual Z Axis Drivers
April 11, 2016 12:54AM
If you're trying to print anything beyond Yoda heads and tugboats the alignment of the axes is important. Misalignment of the axes results in inaccurate printing which means you'll have problems with threaded parts, gears, and almost anything that needs to be a specific shape or size.

The problem with two Z motors is maintaining alignment of the X axis. If you lose steps in one motor for any reason, the X axis tilts and you have to realign it. I don't know if you've ever aligned the axes in a printer, but it takes time to do it right. It isn't something you want to have to do over and over.

With a single motor driving both screws, if the motor loses steps your print fails but you haven't screwed up the alignment of the machine. Fix the problem and you're back to printing- no realignment is necessary.

Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
Sorry, only registered users may post in this forum.

Click here to login