Update controller to GRBL 1.1?

Hi all!

I’m thinking about updating my Shapeoko 3 XXL from GRBL .9 to 1.1. I have plenty of experience with GRBL in the context of my laser cutter and my MPCNC so I’m not really using the Carbide software.

Is the update for the Carbide controller the same as any other Arduino based GRBL controller - ie load the Arduino IDE, configure, compile, and upload? I’d hate to brick the thing because it uses a different hex file or an odd com protocol.

Thanks all!


As far as I understand it, yes, the Carbide Controller is just like any other Arduino based GRBL controller. However, make sure you modify the source code to include the SHAPEOKO defaults, and not the GRBL defaults.

// Default settings. Used when resetting EEPROM. Change to desired name in defaults.h

1 Like

Thank you sir!

Where can I find the shapeoko defaults? Are you referring to the GRBL settings or the config.h settings?

Thanks again!

Ack! Missed the rest of your post. THANK YOU!!

My bad. I posted it without the example, and then edited it while you were responding to my original post. The code snippet I posted is made in the config.h.

There’s a button or something which has to be pressed or some such, but it’s a standard Arduino inside the Carbide Motion Machine Control Board, so it ought to work, but…

  • there are specific compile-time options which are required by Carbide Motion Machine Control Software
  • Carbide Motion has not yet been updated and released to support Grbl 1.1 (which is a big change and requires explicit support for all but the most basic of operations)
  • warranty support expects/demands a supported configuration, and 1.1 isn’t supported until it’s been officially pushed out by Carbide 3D with a tested set of applications to match.

but, most of that doesn’t apply if you’ve already re-flashed, and aren’t using CM, so we’ll pretend I didn’t write anything here — it should always be possible to re-flash, worst case is one has to use a second Arduino as a programmer, possibly over some special connector.

Perfect! You rock … thanks a million!

One caveat. I have only updated my board with a change to GRBL 0.9. At the time, there was only one Shapeoko 3 (No XL or XXL). I would assume that there are other #define’s for the other SO3 machines. Be sure to pick the correct one for your machine.

If you didn’t void the warranty, you don’t own it :slight_smile:

Thanks for the warning Will! I’ve already been running it pretty much exclusively with Chilipeppr or UGS depending on my mood anyway. Carbide Motion is cool software but I’ve been using the others for so long that it’s hard to change. and man the new features in 1.1 are worth it!

Just as a note - I’ve been digging and there aren’t any specific #defines for the different SO3 versions in defaults.h. But that’s just a matter of setting XYZ limits and making sure that homing is set up properly. It should be straightforward to do - I’ll let you guys know what happens.

Just a note — for the Nomad there are specific settings in the system for configuration which are specific to a particular unit — please check in with support before doing anything to a Nomad.

This is the latest 1.1 Hex that we’re been testing. We’re still working with Sonny on one more change we really want to get added in there before we release everything.

Just to be clear for all those who are not @rich.barlow:

This is not supported yet. This will not work with Carbide Motion yet. This will bring only sadness to your life. Don’t use it.

We do use a modified bootloader to make sure that users don’t accidentally reflash their machines so you’ll need to keep the Z limit switch closed while you’re reflashing the unit.

grbl.hex (87.2 KB)


Eh, for those without a z limit switch, which pins do we need to jump to fake it?

What version of Carbide Motion PCB do you have?

I do not know off hand, but it’s an early one. Before the new z plate, 9 mm belts, etc. Has the grounding issues that were talked about previously on the forums. Serial number is 06xx something if I recall.