GRBL CNC controller Leave a comment


The controller has an Atmega 328p microcontroller, with GRBL 1.1 pre-loaded, to interpret g-code

It can be connected with USB to Windows or OSX computers, and to the computer it looks like an Arduino nano. Arduino drivers work, as well as the “easel local” driver as developed by Inventables (that allows you to use it with the easy to use cloud software “easel“).

The button on the top is an emergency button: pressing it down will stop the power to the motors and it will remain in this pressed down position. Turning it slightly will allow to pop it up again – but it will not remember its last position where it got pressed down so you will have to home the machine again if the emergency button was pressed during an operation.

The three white buttons on the front are from left to right:

  • pause
  • resume
  • stop



The connector layout on the backside:


The four connectors on the top row, are from left to right:

  • X axis motor
  • Y1 motor
  • Y2 motor
  • Z axis motor

The connectors on the bottow row are from left to right:

  • The limit switch connector (x limit switch 2-wire cable, y limit switch 2-wire cable, z limit switch 2-wire cable, probe 2-wire cable)
  • The auxiliary devices connector (mist 2-wire cable, flood 2-wire cable, spindle PWM signal / spindle 0-10V signal / ground)

For instance, if you want to control a 220V spindle with the controller, then have a solid state relay connected to the spindle PWM signal and the ground:

Also make sure that you have set in easel (or other software that you use) that you use “automatic” spindle control, or at least that the software is supposed to send a spindle on/off command. With PWM – this can also be done by entering a high enough value – for instance 12000 will basically result in the solid state relay behaving as on/off:

3.Motor cables

We ship the motor cables in two color conventions:

  • Red & Green (these are a pair) and Blue & Yellow (these are a pair) ; or
  • Red & White (these are a pair) and Black & Green (these are a pair) 

There is no particular order to screw the cables into a connector, but you need to respect the pairs. For instance, blue and yellow always need to be next to each other.

If you want to change the direction of a motor, it’s simple: just change the order of one pair. So if you change the red and green to green and red, then the direction of the motor will be inversed.

4.Software and GRBL settings

The controller works with a number of softwares; for instance:

Universal Gcode Sender:


Lightburn (for lasering):

Your computer may require a driver to use the controller:

  • If you work with the online easel software, then it will also prompt you to install a driver. It may thereafter also prompt you to do “Machine setup” as well, which is fine if you use the controller with an x carve style CNC – if not, then it may alter some settings that are crucial for your machine and then you may need to change them thereafter again: you can do this under “Machine” => “Advanced” => “Machine inspector”
  • You may also benefit from downloading the Arduino software, especially if your computer would otherwise not readily communicate with the controller (this is the case with windows in most cases)

Here you find information on the GRBL settings; should you wish or need to change them:

5.Torque settings

Next to each potentiometer for each axis, you will find an area to place a multimeter probe (TP1, TP2 and TP3) if you connect the positive probe to such an area, and connect the ground to the TP4 area, then you can have a readout in voltage round 1V.

By turning the potentiometer, you can increase or decrease the voltage readout and it will also dictate the amp output per driver: you need to multiply by 2.13 to know how much it will output in amp.

The potentiometer’s arrow is actually visible if you look very very well: it uses two dots – and the 2.6 to 2.8 amps output to reach max motor torque can be reached by turning that arrow in the 1h50 position (thus turning it an eight of a circle towards the side of the DIP switches)

So setting it around 1.3V should give the max motor torque.

6.DIP settings

The dip switch will dictate the number of microsteps.

The controller supports up to 1/16 microstepping. Not using microstepping will give the highest torque (100% motor torque), but will not give a lot of accuracy. So therefore, to improve accuracy, at the cost of reducing your motor torque, one can use microstepping:

off-on-off-on will give 1/2 microstepping (against 70% torque)

on-off-off-on will give 1/4 microstepping (against 38% torque)

on-off-on-on will give 1/8 microstepping (against 20% torque)

If you use GT2 belts:

  • then the 1/2 microstepping will offer an accuracy of 0.1mm (you can set that in $12 in grbl)
  • the 1/4 microstepping will offer an accuracy of 0.05mm
  • the 1/8 microstepping will offer an accuracy of 0.025mm

It will also dictate the $100 and $101 required parameter in grbl

  • for the 1/2 microstepping you need to set these at 10 steps/mm
  • for the 1/4 microstepping you need to set these at 20 steps/mm
  • for the 1/8 microstepping you need to set these at 40 steps/mm 


7.More information

Our GRBL CNC controller is inspired by the “x controller” from Inventables – you will find more information on their assembly page.

Our controller behaves the same way and is electrically equivalent.

8.Open source

Our controller has been produced from drawings from Inventables and Bart Dring, that are available under the Creative Commons Share Alike 3.0:

Except for the mainboard, where the schematics of the original were slightly modified in order to use a plug-in Atmega 328p (a nano board) instead of a soldered Atmega 328p and to add optical signal filtering to the limit switch signals and the probe signal. According the the Creative Commons Share Alike 3.0 license, these adaptations are shared again here:


Suggest Edit

Leave a Reply

Your email address will not be published. Required fields are marked *


Translate »

COVID19 notice: backlog has been worked through and all parts back in stock Read our new COVID19 message Dismiss