GRBL has been optimized for Ardunio’s ATmega328p. So most configurations out there will use the Arduino Uno and a CNC shield. I decide to go with the Sainsmart RYC-GRBL-V2 hoping it would work out of the box.
The reason why this is a long post is because it didn’t work out of the box.
To get it up and running these are the list of things I changed to get it working.
-
Adjusted stepper current
-
Adjusted stepper speed to keep it from skipping
-
Setup limits to X and Y axis
-
Changed GRBL firmware to set negative home, after zeroed
-
Negative Homing
- https://github.com/grbl/grbl/wiki/Frequently-Asked-Questions#why-is-grbl-in-all-negative-coordinates-after-homing-or-it-so-annoying-and-not-what-im-used-to
- had to set a var in the config.h file and recompiled
HOMING_FORCE_SET_ORIGIN
uncommented out in code, allow for machine to zero, zero when homed- this is not default, because of the legacy of CNC machines. GRBL wanted to keep it consistent
- https://github.com/grbl/grbl/wiki/Frequently-Asked-Questions#why-is-grbl-in-all-negative-coordinates-after-homing-or-it-so-annoying-and-not-what-im-used-to
-
Set “Min” spindle speed to get corners to cut through
-
Weak power control
-
Homing Switches
- Had to invert $5
-
Motor speed - in mm/min not mm/s
- setting the motors speed limit on Lightburn, watch for mm/min vs mm/s
-
Change laser enable pin to Z+ (limit switch in code)
- change in source to take on the Z+ as the pin
-
Min “Spindle” speed - 25 - allow to cut through corners
- or else, the corners wont be cuts
- ideally, we want to to set this value to be minimum as possible to reduce burn in the corners
- or else, the corners wont be cuts
-
Weak power control
- S-power setting in Lightburn gets changed to 2000, twice that of the
$30 value in GRBL of 1000
- This 2000 is doubled of the 1000 value, which is the limit set in the config.h file
- S-power setting in Lightburn gets changed to 2000, twice that of the
$30 value in GRBL of 1000
NOTES: #
About the firmware GRBL 1.1 #
- Laser Mode
- https://github.com/gnea/grbl/wiki/Grbl-v1.1-Laser-Mode
- enabling it will require you to send Grbl
$32=1
command
- enabling it will require you to send Grbl
- https://github.com/gnea/grbl/wiki/Grbl-v1.1-Laser-Mode
Good overall tutorial here #
http://www.oak600.com/2018/03/19/upgrading-a-k40-laser-cutter-part-1-control-board-upgrade/ Has all the settings..
need to enable laser pin #
- inverting the pwm signal with hardware https://github.com/gnea/grbl/issues/22
Flashing #
- use Arduino IDE, and UNO board (indeed has a ATmega328p)
- success from user in Amazon review
Worked on #
-
Negative Homing
- https://github.com/grbl/grbl/wiki/Frequently-Asked-Questions#why-is-grbl-in-all-negative-coordinates-after-homing-or-it-so-annoying-and-not-what-im-used-to
- had to set a var in the config.h file and recompiled
HOMING_FORCE_SET_ORIGIN
uncommented out in code, allow for machine to zero, zero when homed- this is not default, because of the legacy of CNC machines. GRBL wanted to keep it consistent
-
Homing Switches
- Had to invert $5
-
Motor speed - in mm/min not mm/s
- setting the motors speed limit on Lightburn, watch for mm/min vs mm/s
-
Change laser enable pin to Z+ (limit switch in code)
- change in source to take on the Z+ as the pin
-
Min “Spindle” speed - 25 - allow to cut through corners
- or else, the corners wont be cuts
- ideally, we want to to set this value to be minimum as possible to reduce burn in the corners
-
Weak power control
- S-power setting in Lightburn gets changed to 2000, twice that of the $30 value in GRBL of 1000
- This 2000 is doubled of the 1000 value, which is the limit set in the config.h file
FINAL CONFIGURATION #
$0=10
$1=25
$2=0
$3=2
$4=0
$5=1
$6=0
$10=1
$11=0.010
$12=0.002
$13=0
$20=0
$21=1
$22=1
$23=3
$24=25.000
$25=1000.000
$26=250
$27=1.000
$30=1000
$31=50
$32=1
$100=158.000
$101=158.000
$102=158.000
$110=3000.000
$111=3000.000
$112=3000.000
$120=300.000
$121=300.000
$122=200.000
$130=300.000
$131=200.000
$132=200.000