Introduction: Setup External Driver on Smoothieware Sbase 1.2 Controller Using E1 Pins!

About: I'm blogging about my projects before they make it to Once I've finished a subject on my blog, I'll put it together and post it on Instructables, so you can get a preview on my site.

Content of this Instructable:

  1. Proloque
    1. Driver Heatsink problems
    2. Defunct Y driver
  2. Setup Smoothieware to use E1 as our Y Axis
    1. Y driver - original
    2. Y driver - Using E01
    3. Complete driver pin-out diagram
  3. Setup External Motor Stepper Driver board with different driver.
    1. 5v and GND
    2. 12v/24v (vin) and GND
    3. ESDG wires
  4. Installing the new driver(s)
    1. Orientation depending on type.
    2. Measure vRef - Good practice


As some of you might now, I have recenty written a couple of Instructables on Configuring MKS Sbase v1.2 32-bit Controller basics and intro to Smoothieware and on Smoothieware Switch module for automatic fan control.

I have allways planned to use some TMC2100 (SilentStepSticks) as external drivers for my XY axis as the DRV8825 drivers doesn't agree with my motors for those axes - making lots of noise and an annoying whining noise a lot of time. Also gives a very noisy grinding noise.. feels like each tiny step is forced by a big motor and stop violently.. not good at all..

I've learned DRV8825 is bad for motors with considerably lower voltage rating than input voltage, which in my case is 24v, so it makes sense I'm having issues. I did have issues with these drivers when running 12v too though, but not as bad. Enough to have planned not to use them now though!

As luck would have it, I recieved a couple of the External motor stepper driver board panels by the time I had begun testing my printer.

Driver Heatsink problems

I had lots of problems with the Sbase 1.2 controller heatsink on the drivers.. it literally fell off. On both my controllers!

Turned out the small countersunk nut in the heatsink wasn't anchored in any ways, so while the 2 nuts pr. heatsink sat on the screw, which was meant to fix it in place, the heatsink itself was actually only kept in place by some thermal-paste... which wasn't up to the task of mechanically holding the heatsink in place, so it fell off.

My Controllers are mounted under the bottom of my Ultimaker 2 clones, with the heatsink having gravity against it.

I don't know if the heatsink was the cause or not, but my Y driver on one of the boards simply stopped working!

Defunct Y driver on one of my Sbase 1.2 controllers

Ok, bad luck, but no sweat, I had planned on using a different driver in any case, so I started setting up the External Motor Stepper Driver Board Panels (long name!).

Turned out to be more involved than I had thought, but it turned out fine. MKS has stepped up a bit on documentations, so they now have Photos of the wiring, if no explanation.

I simply just could not get it to Work using the external driver pins Jc_M3 for the Y driver. After testing a lot I concluded the entire Y part of the board simply just doesn't Work...

Wow, now that is bad luck!!

Step 1: Configure Smoothieware to Use E1 for Our Y-axis

Why configure Smoothieware to use E1 for our Y-axis on the External driver board?
While I could just use the motor directly on the pins for E1, I figured I might as well set it with my External Driver Board and use a different driver while at it, since the DRV8825 doesn't like my motors as I mentioned.

Regardless of wheter we use the E1 Cm_M3plug (main white plug) or the use E1 Jc_M5 pins for the External Stepper Motor Driver board, the process in the Smoothieware firmware is exactly the same.

Here we have the settings for my Y driver. I have commented all of it out and added Defective as a headline

Y driver - original

Note: I removed comments to make it more readable here

# Y - Jc_M3
# beta_step_pin                                2.1
# beta_dir_pin                                 0.11
# beta_en_pin                                  0.10
# beta_current                                 0.7
# beta_max_rate                                30000	

Y driver - using E01

Here we see the PIN settings.
You can put current at 0.0. Mine is just at default.

E01 - Jc_M5
# Stepper setup - backup for Y
beta_step_pin                                2.8
beta_dir_pin                                 2.13!
beta_en_pin                                  4.29
beta_current                                 0.5
beta_max_rate                                30000

Complete driver pin-out diagram

I created a complete driver pin-out diagram to make it easier to attach and configure other external drivers.

Step 2: Setup External Motor Stepper Driver Board With Different Driver.

Now we need to wire up our external driver.

This entails 3 sets of wires:

  • 5v and GND
  • 12v/24v (vin) and GND
  • ESTD wires

Note: I strongly recommend clearly marking your wires, so as not to short out something or otherwise plug them in improperly

5V and GND

We get this from one of our endstop plugs. This is for the driver itself. You can see a 5v and GND next to it on the Driver board.

12v/24v (VIN) and GND

We get this from our Powersupply. This is for the motor. You attach these to the VIN on the Driver board and the GND next to it.

En, Step, Dir and Gnd.

ESDG wires are simply connected to the Jc_M5 pins in one end and to our External Driver Stepper Board in the other end.

Note: Make certain to connect them in the right order!

Step 3: Installing the New Driver(s)

Nearly done now.


I've made a seperate step for this, as the orientation of the drivers are really important. You are going to fry the drivers if they are inserted incorrectly.

Also always have all power turned off, that includes any USB, whenever you handle the drivers - aside from adjusting the vref.

  • The A4988 is inserted with trimpot facing away from dipswitches.
  • The DRV8825 is inserted with trimpot facing towards the dipswitches.
  • SilentStepStick - TMC2100 is inserted with trimpot facing towards the dipswitches.

Measure vRef - good Practice

This is not about what value to set it at, but about a good practice to avoid accidents.

  • Use 2 clamps on your Multimeter.
  • Connect the black one to a GND on your printer. Easy to use is directly from PSU or from a GND from endstop pins.
  • Attach the red one to a small screw-driver fitting for your trimpot.
  • This way you have your hands free to actually adjust the trimpot and not having to hold multiple wires and worry about something slipping and making a short circuit somewhere.