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:
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
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