Hi All, I am creating a custom setup from a donor K40.

Hi All, I am creating a custom setup from a donor K40. The plan is to integrate the laser to my router which has a much larger bed. I’ve got an MKS Sbase running GRBL-LPC sending steps to a the driver board for the router. It’s mostly working. what I am struggling with is getting the homing to behave in the same fashion as the router.

The issue is that my x y z share the same pin and need to be homed separately instead of the default sequence which homes the Z and then x & y simultaneously. From what I understand this behavior can be modified in the Config.h and I would need to create my own firmware.bin.

I did see some instructions on this but it’s really beyond my comfort level since I do not want to brick the Sbase. Would someone here be able to produce a firmware.bin for the Sbase that homes individually and or allows individual axis homing such as $hx, $hy etc.


Unfortunately individual axis homing is not supported in grbl, but it’s easy to config the homing sequence (sample included in config.h).
I can compile a special version for you. Where do you have your homing switches and where do you like to have home 0,0,0 (typical for router is x+, y+, z+).

My gosh that would be super helpful. From my searching I was able to learn how to edit the config.h and cpu_map.h and flash an Arduino Mega. It seems to work but as I understand I will be limited in raster speeds.

There seems to be really only two parameters I need customized for a MKS - Sbase grbl-lpc version.

First is to have the homing sequence do each axis separately in config.h

#define HOMING_CYCLE_0 (1<<Z_AXIS)
#define HOMING_CYCLE_1 (1<<X_AXIS)
#define HOMING_CYCLE_2 (1<<Y_AXIS)

Second and not crucial, is to have the limit pins for X Y Z and A all be the same.

#define X_LIMIT_BIT 0
#define Y_LIMIT_BIT 0
#define Z_LIMIT_BIT 0
#define A_LIMIT_BIT 0

home for my router is X-, Y-, and Z+ at the moment. Which parameter is this?

Alternatively, if you can point me to some other resource on a howto guide on compiling and flash GRBL-lpc I would like to take a stab at it. I am sure there will be further tweaks I need in the future. I did find the below


I got as far as the “make” command before it gave me an “Error 2” regarding coolant_control.c (this was without me modding grbl, just practice for compiling and creating firmware.bin)

Thank you for your offer and your work on this fork, I look forward to it.

Hi +Claudio Prezz was wondering if your offer to compile a special version is still on the table?

It souds like it would be better when you could compile your own firmware. The build notes on the git http://README.md should be working fine. When you run make, it should produce a bunch of messages (including warnings), but at the end you should get a firmware.bin file.

I have added a special machine type for you, so you can have your own machine defaults (see #define DEFAULTS_JONAS in config.h and section #ifdef DEFAULTS_JONAS at the end of defaults.h).
Do a “git pull” of my repo to update your version.

@cprezzi Thank you. I am struggling a bit with the last “make” step. I have followed the http://readme.me instructions as well as a guide I have found here:


It seems to fail in regards to coolant_control file Error 2.

any insight is greatly appreciated. Thank you.