Duet 6HC and driver step sync
-
Hi, I need some advice :)!
I'm looking into a new build and would like to use the Duet 6HC. I found interesting setup that I’d like to try, where it consists of four strong stepper motors for Y and two smaller ones for X. (would post link to igmur of setup in question but dont have the reputation yet
)
Since I’ve never used more than two steppers on XY (let alone six), I’m a bit worried about potential issues caused by step delays between motors.
I thought that wiring the steppers in parallel to the drivers might help with this issue to some extent. However, the steppers I have for the Y-axis are 3A (I’ll probably run them at 2.5A), and I assume the 6HC driver wouldn’t be able to handle two of them in parallel, even with additional cooling.
So I’d probably need to run just XY on five drivers (with both X motors connected in parallel to a single driver).
This brings me back to step delays. Is there a significant delay between steps that could cause some issues? Is there a better approach to this? Maybe using external drivers connected to a 1XD expansion board?
Also, would I start hitting MCU limits with this setup? Running five drivers for XY, plus an extruder and triple Z, sounds like a lot of steps to generate.
Sorry for the many questions, but I want to do my homework before committing!
-
@Prize you should have no problem running multiple steppers using multiple drivers on the same axis.
This has been done for a long time on different types of machines, such as CNC machines that have 2 Y motors or 4WD corexy machines that have 2 X and 2 Y motors. I've ran both on RRF and never seen an issue with motor steps being out of sync -
@jay_s_uk Yeah i guess should be fine, and incase its no i guess 1XD with 4 slave drives should work also
. Also i guess if there is any delay between steppers belts should compansate
-
@Prize i wouldn't be using a 1XD on a new build as the MCU used on it is now quite weak.
I would be running X and Y on the 6HC and then if powerful enough a mini5+ for the remaining Z drivers and a toolboard for the extruder (if either of those are needed) -
@Prize said in Duet 6HC and driver step sync:
I thought that wiring the steppers in parallel to the drivers might help with this issue to some extent. However, the steppers I have for the Y-axis are 3A (I’ll probably run them at 2.5A), and I assume the 6HC driver wouldn’t be able to handle two of them in parallel, even with additional cooling.
The drivers on the 6HC can handle 6.3A peak current. Two Y drivers in parallel would be 5A peak current if you want to run them at 2.5A peak each, so within the board limits. However, the board will run cooler if you connect each Y motor to a separate driver.
This brings me back to step delays. Is there a significant delay between steps that could cause some issues?
No. RRF generates the steps to multiple drivers assigned to the same axis simultaneously.
Also, would I start hitting MCU limits with this setup? Running five drivers for XY, plus an extruder and triple Z, sounds like a lot of steps to generate.
No. The step generation in RRF is written so that generating steps for 4 drivers on the main board assigned to the same axis uses no more CPU than a single driver. This is possible because we require that all drivers assigned to an axis have the same steps/mm. [EDIT] Whereas if the drivers were attached to four 1XD boards, RRF would need to prepare four CAN messages to send to them.
-
@jay_s_uk oh ok tought that XD1 mcu could handle it since it has one driver output. Good to know. Also didnt noticed that mini5+ has also canFD
also good to know. I was planing using 3HC expansion but using mini5+ makes more sense for Z.
Thanks!
-
@Prize The 1Xd only has a 48MHz MCU and I know in the past it was touch and go whether it got input shaping etc.
If external drivers were to be used then the 6XD would be a better choice but unless you're running steppers over 6.3A or running them in closed loop mode (not integrated with RRF) then the built in drivers of the 6HC are a better choice -
@dc42 Ohh thanks a lot for explaining that!
I was asuming it would MCU would iterate over drivers and send signal to one driver at a time... Well iam happy that i asked then...
Well that means gotta go order 6HC!
....