Configuring Smoothieware for the X5S & MKS SBase

My primary objective with the X5S was to get something that printed fast. With all that build volume and the i3 likely getting repurposed to something like a 0.25/0.3 nozzle eventually I want the X5S to be able to pump out large parts in something approaching a sensible timeframe. Considering the stock board is a pretty basic 8 bit device (essentially a Melzi) I wanted to also upgrade the board to something that would allow faster speeds, and be easier to add bed levelling (and dual extrusion, and LED control and all kinds of other stuff thats on my list) to at a later date.

Looking at the list of available boards, I was initially going to go with the Duet Wifi. This seems to be an awesome board, but at more or less the same price as the printer seems somewhat excessive. As I wasn’t in a particular rush to get it I ordered the MKS SBase and MKS TFT32 directly from the makerbase store on Aliexpress. I wasn’t hugely happy with the use of DRV8825 drivers as I’d heard bad things about the noise, but given i still have the ability to use external drivers if needed I thought it was worth a shot given the price.

The board arrived reasonably promptly (about 2 weeks, which is not bad from China) so it beat the printer here. Once I had everything up and running (Tronxy X5S – Unboxing, Upgrading the TronXY X5S Hotend,) I went straight to using the MKS Board rather than the stock one.

Installing smoothieware for the first time was surprisingly easy (as someone who suffered through getting marlin working on a friend’s RAMPS setup I was stunned).

I don’t propose to do a full writeup as the smoothie wiki is pretty straightforward, but instead cover some of the stuff specific to this printer that needed doing.

First, and most obvious, is to take the default setup and turn all the CoreXY bits on, this includes setting the arm solution and homing strategy so the boards knows what it’s controlling.

Once that was done I hooked everything up and fired up pronterface to test everything was working (or at least to check something happened!).

Turned out my axis were inverted, (so +x was actually resulting in -x) which made for quite a noisy homing process.

Fortunately this is super easy to fix in the configuration, I simply reversed the direction of my ‘beta’ stepper. Reversing both gives the same behaivour due to the way corexy kinematics work.

Once I was satisfied everything was working something like sensibly I powered the whole thing down and went about setting some of the more detailed things up.

My configuration (which doesn’t include the stock panel, more on that later) is here:

Key settings that needed changing:

Motor Settings:

The kit ships with motors rated at 1.7A. I’m running my XY motors at 1.5A, my Z (which are connected in parallel @ 2A (so 1A each). I’m running a (clone) titan extruder with a pancake stepper so the current on that is considerably lower @ 0.7A.

My steps per mm also needed changing. I have my board set to 32* microstepping, so X*Y steps are 160 with GT2 belt & 20 teeth pulleys ((200steps*32microsteps)/(20teeth*2mm pitch)).

The Z axis uses a T8 leadscrew, which has a pitch of 2mm, but because it is 4 start moves 8mm per rotation. So the formula is 200*32/8 = 800

Travel Settings:

I wanted to play around with what types of speeds the printer can realistically do, so I’ve upped the max speeds for each of the axis up by a factor of 2 from the defaults. Realistically I’m not going to get it running at 250mm/s, but the default 150 was enough to limit where I want to get at least the travel speeds to.

For now that’s all I needed to change to get it running with pronterface. It’s going to be hooked up to my Raspberry Pi for day to day control going forward.

Update – 2/11/17 – for my most recent changes to this config see my post on LCD here:RepRap Discount GLCD & MKS SBase


6 thoughts on “Configuring Smoothieware for the X5S & MKS SBase

  1. I am having problems with updating a config, with either my own edits or your file. I should be able to download and paste your file over mine? or is your file an addition to the example config file? Thanks.


    1. The one in this article is the full file I used then. I’ve since added to it for things like z probing. What problems are you having? I seem to recall reading smoothie is sensitive to encoding, so you might want to check that. Particularly if you’re using a Mac.


  2. Thanks for the write up and especially for the config file for the Tronxy X5S, it is much appreciated. I have problems with the Z-axis homing. It works for the X and Y, but when I try to home the Z- axis no matter where the plate is, it goes all the way down, and keeps trying to go down until I turn off the machine. Thanks in advance for any help you may have.


    1. If you used that config exactly then I’d guess your motor direction is opposite to mine. You want to invert gamma_dir_pin by adding an ! After the number.


  3. I tried removing the “!”, that didn’t fix it, so I reversed the z-axis motor wiring which fixed it, then I saw your reply. I should’ve waited for the reply, much easier to add another “!”. Regardless, thanks-again for the Tronxy X5S write ups, they have been very helpful.


    1. Glad to hear you got it working. Because of the way steppers are wired you’d need to swap the (IIRC) middle 2 cables but not the outside ones to reverse the direction.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s