How to set up 5 steppers in smoothie config file?

273 views
Skip to first unread message

Doug Hoffman

unread,
Oct 21, 2019, 12:18:53 PM10/21/19
to OpenPnP
My version 1.1 - 5 axis smoothie board will be controlling a Pick and Place machine

I have one X axis ball screw - M1

I have two Y axis ball screws - M2 and M4
m2 and M4 will be slaved together

I have one Z axis ball screw - M3

I have one left over axis M5, that will have a small stepper attached later to operate a component feeder device

I have already jumpered the pins below on the smoothie board below according to the directions on this page
EN2 to EN4
ST2 to ST4
DIR2 to DIR4

It looks like M4 and M5 are setup for hotend motors in the stock config
With a bunch of hotend config lines that I don't need

I am confused as to how to set up motors 4 and 5 in the smoothie config file

I have setup X, Y1 and Z in the config like this

# X axis
alpha_step_pin 2.0 # Pin for alpha stepper step signal
alpha_dir_pin 0.5 # Pin for alpha stepper direction, add '!' to reverse direction
alpha_en_pin 0.4 # Pin for alpha enable pin
alpha_current 1.5 # X stepper motor current
alpha_max_rate 30000.0 # Maximum rate in mm/min

# Y axis 1 - M2 and M4 are slaved
beta_step_pin 2.1 # Pin for beta stepper step signal
beta_dir_pin 0.11 # Pin for beta stepper direction, add '!' to reverse direction
beta_en_pin 0.10 # Pin for beta enable
beta_current 1.5 # Y stepper motor current
beta_max_rate 30000.0 # Maxmimum rate in mm/min

# Z axis
gamma_step_pin 2.2 # Pin for gamma stepper step signal
gamma_dir_pin 0.20 # Pin for gamma stepper direction, add '!' to reverse direction
gamma_en_pin 0.19 # Pin for gamma enable
gamma_current 1.5 # Z stepper motor current
gamma_max_rate 300.0 # Maximum rate in mm/min

How do I get rid of the hotend config lines and set up M4 and M5 as regular steppers like the 3 axis shown above?

Thanks for any info on this

Doug Hoffman

unread,
Oct 21, 2019, 1:50:18 PM10/21/19
to OpenPnP
I Think I found the info
M4 is called delta
M5 is called epsilon

Has anyone here slaved one Smoothie motor to another one?
My Y axis has two ball screws

I can't get it to work so far

Doug Hoffman

unread,
Oct 21, 2019, 2:25:24 PM10/21/19
to OpenPnP
Still no luck getting M4 to slave up to M2

I jumpered these pins on the board (see image)

EN2 to EN4
ST2 to ST4
DIR2 to DIR4
Are you supposed to jumper the GND pins also?

I set the config up like this 
I commented out the M4 delta pins

# X axis - M1
alpha_step_pin                               2.0              # Pin for alpha stepper step signal
alpha_dir_pin                                0.5              # Pin for alpha stepper direction, add '!' to reverse direction
alpha_en_pin                                 0.4              # Pin for alpha enable pin
alpha_current                                2.0              # X stepper motor current
alpha_max_rate                               30000.0          # Maximum rate in mm/min


# Y1 axis - M2 and M4 are slaved
beta_step_pin                                2.1              # Pin for beta stepper step signal
beta_dir_pin                                 0.11             # Pin for beta stepper direction, add '!' to reverse direction
beta_en_pin                                  0.10             # Pin for beta enable
beta_current                                 2.0              # Y1 stepper motor current
beta_max_rate                                30000.0          # Maxmimum rate in mm/min


# Z axis - M3
gamma_step_pin                               2.2              # Pin for gamma stepper step signal
gamma_dir_pin                                0.20             # Pin for gamma stepper direction, add '!' to reverse direction
gamma_en_pin                                 0.19             # Pin for gamma enable
gamma_current                                2.0              # Z stepper motor current
gamma_max_rate                               500.0           # Maximum rate in mm/min


# Y2 axis - Slave of M2
#delta_step_pin                               2.3              # Pin for delta stepper step signal
#delta_dir_pin                                0.22             # Pin for delta stepper direction, add '!' to reverse direction
#delta_en_pin                                 0.21             # Pin for delta enable
delta_current                                 2.0              # Y2 stepper motor current
delta_max_rate                                30000.0          # Maxmimum rate in mm/min

Img_1241.jpg


Doug Hoffman

unread,
Oct 21, 2019, 2:26:43 PM10/21/19
to OpenPnP
Note that the motors are not hooked up to M2 and M4 in the image above
I am doing test on M1 and M3 in that photo

John

unread,
Oct 21, 2019, 5:00:20 PM10/21/19
to OpenPnP
Hello Doug,


Are you using default 5-axis firmware?
Check if the extruder.hotend pins (that's your M4) are commented out.


John

Mike Menci

unread,
Oct 22, 2019, 5:06:37 AM10/22/19
to OpenPnP
Why bridging inputs to Two stepper drivers? This
is completely wrong, worst case both the pin driver resulting damaged, really, in worst case, latch up of uc because of latch up of pin drivers on chip!

Doug Hoffman

unread,
Oct 22, 2019, 6:57:08 AM10/22/19
to OpenPnP
Because I was told to go to this page by Art Wolf
http://smoothieware.org/general-appendixes#doubling-stepper-motor-drivers

And on that page, that say to bridge th EN, ST, and Dir pins

Doug Hoffman

unread,
Oct 22, 2019, 7:01:21 AM10/22/19
to OpenPnP
Hi John,

Yes, I have the 5 axis config

I figured out you have to refer to axis 4 and 5 by the Hot end names, not the delta
and epsilon names

M4 is this
extruder.hotend.enable 

M5 is this
extruder.hotend2.enable

John

unread,
Oct 22, 2019, 7:36:47 AM10/22/19
to OpenPnP
Hi Doug,


Yes, that's how it should work. Axis config names in smoothies "3D-printer-world" are there a little bit different than in "CNC-world".


Some while ago i had a CNC with two ball screws for X-axis with separate endswitches to get no skew on gantry.
That was managed by mach3 very well, but on smoothieware with hard-bridged drivers there is no option for this.
So take care that your two parallel working ball screws are aligned before powerup.


John

Doug Hoffman

unread,
Oct 22, 2019, 7:42:26 AM10/22/19
to OpenPnP
Thanks John,
I was told by Art Wolf to go to this page to see how to hook up two steppers on a single driver
http://smoothieware.org/general-appendixes#doubling-stepper-motor-drivers


Check out the info on that page in this section

Using two steppers motor on a single drive

 

Arthur Wolf

unread,
Oct 22, 2019, 10:44:18 AM10/22/19
to ope...@googlegroups.com
Actually smoothie supports multiple actuator axis homing ( see documentation )

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b8f4d784-0ab6-4f38-8fd1-015c7319e937%40googlegroups.com.


--
勇気と気分

Doug Hoffman

unread,
Oct 22, 2019, 11:06:47 AM10/22/19
to OpenPnP
Art, The page you sent me to that describes how to have double axis is not working
I sent you an email about it

Will you please reply


On Tuesday, October 22, 2019 at 10:44:18 AM UTC-4, Arthur Wolf wrote:
Actually smoothie supports multiple actuator axis homing ( see documentation )

On Tue, Oct 22, 2019 at 1:36 PM John <waterpl...@gmail.com> wrote:
Hi Doug,


Yes, that's how it should work. Axis config names in smoothies "3D-printer-world" are there a little bit different than in "CNC-world".


Some while ago i had a CNC with two ball screws for X-axis with separate endswitches to get no skew on gantry.
That was managed by mach3 very well, but on smoothieware with hard-bridged drivers there is no option for this.
So take care that your two parallel working ball screws are aligned before powerup.


John

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.


--
勇気と気分

John

unread,
Oct 22, 2019, 11:21:50 AM10/22/19
to OpenPnP
@Arthur


That sounds cool. I could not found in documentation that smoothieboard with standard firmware supports real slave axis with separated endstop handling for master and slave driver.


John

Arthur Wolf

unread,
Oct 22, 2019, 4:52:18 PM10/22/19
to ope...@googlegroups.com

Doug: I'm travelling for work, haven't had time to look at your issue, sort of hoping the mailing list will have ideas for you as this isn't something that is known to be troublesome

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.


--
勇気と気分

Doug Hoffman

unread,
Oct 23, 2019, 12:28:09 PM10/23/19
to OpenPnP
Thanks @Arthur,
So far no luck posting on RipRap forum and here
I'll post on the smoothie board also


To recap:
I am trying to run double Y axis steppers on M2 and M4 on my smoothie 1.1 board

The instructions on this page say to do this
http://smoothieware.org/general-appendixes#doubling-stepper-motor-drivers

Jumper these pins together on the smoothie board

  • EN2 to EN4
  • ST2 to ST4
  • DIR2 to DIR4
Then Set the current for each motor in the config
beta_current       2.0 - This is the Y axis M2
delta_current      2.0 - This is the hotend axis M4

Then remove the config lines shown below for Delta M4
I commented these lines out in the config

#delta_step_pin                              2.3              # Pin for delta stepper step signal
#delta_dir_pin                                0.22             # Pin for delta stepper direction, add '!' to reverse direction
#delta_en_pin                                0.21             # Pin for delta enable

Nothing happens when I issue any G-code command to the Y axis (M2)
G0 Y100 

John

unread,
Oct 23, 2019, 1:36:25 PM10/23/19
to OpenPnP
Hello Doug,


Could you try to upload your config (as config.txt) here so we can see the whole picture?


John

Doug Hoffman

unread,
Oct 23, 2019, 1:57:06 PM10/23/19
to OpenPnP
Thanks John,
The attached config is the one that was used when hotend1/delta/M4 was jumpered to Y axis/beta/M2
And the board wires were jumper-ed as described in the post above this one

I renamed it config_DoubleY.txt because my current config is not jumper-ed M2 to M4
I removed the jumpers so I could test all 5 axis individually

Note that M4 does not work at all when I send Gcodes to it
I never tested M4 by itself before I did the jumpers on the board
So the board may have had a bad M4 to start with?
config_DoubleY.txt

John

unread,
Oct 23, 2019, 3:48:42 PM10/23/19
to OpenPnP
Hello Doug,


In your config file i did not find anything that would be supicious. For first tests i would disable any endstop/limit handling to see motors rotating.
But when M4 did not want to run from the beginning then you could try to find the electrical issue by yourself (optical inspection with a loupe first, then with scope) or you get another board and try to repair the broken one later to move forward with your project more quickly.


I think that your motors are rated for >2A. So the small onboard drivers reaching their limits and i would recommend using external drivers at higher voltage (40-60V). Or you change your open loop steppers to something with closed loop so that you could achieve much higher rpm on your ball screws. Most closed loop solutions have an alarm output that could be used to prevent mechanical damage to the gantry.


John

John

unread,
Oct 23, 2019, 4:26:19 PM10/23/19
to OpenPnP
I forgot to tell that you should always use a text editor and save your smoothie config as plain ascii text file (without any encoding like UTF8 etc.).


John

Doug Hoffman

unread,
Oct 24, 2019, 5:28:43 AM10/24/19
to OpenPnP
Thanks John
My config saves fine

I have pretty much figured out that M4 stepper driver is bad
The M4 driver chip gets really hot and the motor makes a low pitched humming noise and will not respond to Gcode commands

M1, M2, M3 and M5 drivers all work perfectly

Arthur Wolf

unread,
Oct 24, 2019, 6:05:35 AM10/24/19
to ope...@googlegroups.com
Common misconception: "driver gets very hot" is very common and *very* normal, definitely wouldn't jump to "driver is bad". 95% of the time when I'm debugging an issue with somebody and one of the symptom is "but the drivers are super hot", it turns out to be perfectly benign. They turn off if they feel too hot, they are designed to run *very* hot, the motors too.
However if you can't get the driver to turn at all ( did you try other motors, did you try setting up another axis with those pins ? ), then it might be it died at some point ( we do full functional testing before shipping so this is very rare and usually related to installing the board )
Do you have an external driver at hand so you can make progress despite this issue ?

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.


--
勇気と気分

Doug Hoffman

unread,
Oct 24, 2019, 6:24:20 AM10/24/19
to OpenPnP
Thanks Art,
M4 chip is way hotter than the other 4.
I mean way way hotter :)
And if I hook a motor up to M4, it makes a weird humming noise and does not respond to Gcode at all

I have 5 motors here.
4 ball screws with nema 23 motors and a small nema 11 motor
All motors work on all Drivers except M4

I only have M5 left to jumper and test as a slave, but I have not done that.|

I have an external driver on hand but I have not tested it as a slave of M2
I think that is what you were suggesting?

Here's a shot of how I am testing until my 80/20 inc frame pieces arrive
There is a Windows 7 laptop off to the right that I am using via the browser to issue Gcode commands to the board

Img_1244.jpg




On Thursday, October 24, 2019 at 6:05:35 AM UTC-4, Arthur Wolf wrote:
Common misconception: "driver gets very hot" is very common and *very* normal, definitely wouldn't jump to "driver is bad". 95% of the time when I'm debugging an issue with somebody and one of the symptom is "but the drivers are super hot", it turns out to be perfectly benign. They turn off if they feel too hot, they are designed to run *very* hot, the motors too.
However if you can't get the driver to turn at all ( did you try other motors, did you try setting up another axis with those pins ? ), then it might be it died at some point ( we do full functional testing before shipping so this is very rare and usually related to installing the board )
Do you have an external driver at hand so you can make progress despite this issue ?

On Thu, Oct 24, 2019 at 11:30 AM Doug Hoffman <hoffm...@comporium.net> wrote:
Thanks John
My config saves fine

I have pretty much figured out that M4 stepper driver is bad
The M4 driver chip gets really hot and the motor makes a low pitched humming noise and will not respond to Gcode commands

M1, M2, M3 and M5 drivers all work perfectly


On Wednesday, October 23, 2019 at 4:26:19 PM UTC-4, John wrote:
I forgot to tell that you should always use a text editor and save your smoothie config as plain ascii text file (without any encoding like UTF8 etc.).


John

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.


--
勇気と気分

Arthur Wolf

unread,
Oct 24, 2019, 6:25:57 AM10/24/19
to ope...@googlegroups.com
On Thu, Oct 24, 2019 at 12:24 PM Doug Hoffman <hoffm...@comporium.net> wrote:
Thanks Art,
M4 chip is way hotter than the other 4.
I mean way way hotter :)
And if I hook a motor up to M4, it makes a weird humming noise and does not respond to Gcode at all

I have 5 motors here.
4 ball screws with nema 23 motors and a small nema 11 motor
All motors work on all Drivers except M4

I only have M5 left to jumper and test as a slave, but I have not done that.|

I have an external driver on hand but I have not tested it as a slave of M2
I think that is what you were suggesting?

yep, work around the M4 issue to get to a working machine

Here's a shot of how I am testing until my 80/20 inc frame pieces arrive
There is a Windows 7 laptop off to the right that I am using via the browser to issue Gcode commands to the board

Img_1244.jpg



On Thursday, October 24, 2019 at 6:05:35 AM UTC-4, Arthur Wolf wrote:
Common misconception: "driver gets very hot" is very common and *very* normal, definitely wouldn't jump to "driver is bad". 95% of the time when I'm debugging an issue with somebody and one of the symptom is "but the drivers are super hot", it turns out to be perfectly benign. They turn off if they feel too hot, they are designed to run *very* hot, the motors too.
However if you can't get the driver to turn at all ( did you try other motors, did you try setting up another axis with those pins ? ), then it might be it died at some point ( we do full functional testing before shipping so this is very rare and usually related to installing the board )
Do you have an external driver at hand so you can make progress despite this issue ?

On Thu, Oct 24, 2019 at 11:30 AM Doug Hoffman <hoffm...@comporium.net> wrote:
Thanks John
My config saves fine

I have pretty much figured out that M4 stepper driver is bad
The M4 driver chip gets really hot and the motor makes a low pitched humming noise and will not respond to Gcode commands

M1, M2, M3 and M5 drivers all work perfectly


On Wednesday, October 23, 2019 at 4:26:19 PM UTC-4, John wrote:
I forgot to tell that you should always use a text editor and save your smoothie config as plain ascii text file (without any encoding like UTF8 etc.).


John

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/b9340cad-5d7e-4603-a085-ad6ebb190481%40googlegroups.com.


--
勇気と気分

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/6ddb6cb9-a92f-4cca-bc3f-bd0d86be8f83%40googlegroups.com.


--
勇気と気分

Doug Hoffman

unread,
Oct 24, 2019, 6:26:39 AM10/24/19
to OpenPnP
And here is how the board was jumpered when I tested slaving M4 to M2
I have since removed the jumpers so I could test all 5 drivers individually



Img_1241.jpg

Doug Hoffman

unread,
Oct 24, 2019, 6:30:37 AM10/24/19
to OpenPnP
I have this external driver that I can use to test slaving on the smoothie
I set up a Mach3 test rig on the bench with a parallel port breakout board

Those external drivers are cheap on Amazon


Img_1240.jpg

Doug Hoffman

unread,
Oct 24, 2019, 6:44:34 AM10/24/19
to OpenPnP
So if I was to use an external driver, I could just hook it up to the pins on M2 like in the image below
The bottom image shows a single external drive, except I would be using M2's pins, correct?


ExternalDriver.png

Arthur Wolf

unread,
Oct 24, 2019, 6:46:02 AM10/24/19
to ope...@googlegroups.com
prettymuch

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/d31dbb99-3643-4ffd-806a-c33e6d3565f5%40googlegroups.com.


--
勇気と気分

Doug Hoffman

unread,
Oct 24, 2019, 6:50:35 AM10/24/19
to OpenPnP
Thanks
I was not sure if it would be better to have two identical external drivers or use the smoothie M2 driver with one external driver jumpered to it?
It probably does not matter, but I have to ask :)



On Thursday, October 24, 2019 at 6:46:02 AM UTC-4, Arthur Wolf wrote:
prettymuch

On Thu, Oct 24, 2019 at 12:44 PM Doug Hoffman <hoffm...@comporium.net> wrote:
So if I was to use an external driver, I could just hook it up to the pins on M2 like in the image below
The bottom image shows a single external drive, except I would be using M2's pins, correct?


ExternalDriver.png




On Thursday, October 24, 2019 at 6:30:37 AM UTC-4, Doug Hoffman wrote:
I have this external driver that I can use to test slaving on the smoothie
I set up a Mach3 test rig on the bench with a parallel port breakout board

Those external drivers are cheap on Amazon

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.


--
勇気と気分

Arthur Wolf

unread,
Oct 24, 2019, 6:59:43 AM10/24/19
to ope...@googlegroups.com
Shouldn't matter much

To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/6d4ed003-42b6-4ff1-b536-50c8520bac9c%40googlegroups.com.


--
勇気と気分

Doug Hoffman

unread,
Oct 24, 2019, 1:24:49 PM10/24/19
to OpenPnP
Mystery solved
M4 was dead on this smoothie board

I ended up using an external driver paralleled to the Y axis (M2) on the smoothie board
Got it all running perfectly
I shot a video of the twin Y axis in motion

Here’s the youtube video link of my build
Shouldn't matter much

Mike Menci

unread,
Oct 24, 2019, 3:55:50 PM10/24/19
to OpenPnP
Looking good but pitty your X does not have a pitch of 20mm or more
Mike

Doug Hoffman

unread,
Oct 24, 2019, 5:03:50 PM10/24/19
to OpenPnP
Sorry, don't understand what you are saying?

Tracker J

unread,
Oct 24, 2019, 11:25:28 PM10/24/19
to OpenPnP
He is saying that using a ballscrew with a bigger pitch of at least 20mm is better in terms of speed.
Even a 10 makes a difference.

Doug Hoffman

unread,
Oct 25, 2019, 6:58:21 AM10/25/19
to OpenPnP
It does not matter in my case
I cranked the speeds up in a test and it goes way faster than I need it to :)
The machine will be placing turret lugs into drilled holes while I do other things in the shop

It's a labor saving device, just like my CNC machine
The CNC machine drills all the holes in the boards while I do other things in the shop :)

I make over 50 types of boards, but I may only keep one or two boards of each type on the shelf in stock
So it's not like I am doing a run of 50 PCB boards :)

Accuracy is more important to me because the turret lugs have to be set down into a 3/32 inch diameter hole
In a quick test yesterday, with a G0 Y1 command
I got a movement so small I could not measure it 
It looked to be maybe 1/4 of a MM or so by my eye


Img_9724.jpg

Reply all
Reply to author
Forward
0 new messages