This is grbl for the Lasersaur. Grbl is a g-code-centric CNC controller and Lasersaur is an open source laser cutter. This fork implements grbl on the Stellaris Launchpad using USB.
C C++
Pull request Compare This branch is 56 commits ahead, 2 commits behind stefanix:master.
Latest commit 1b91cd3 Mar 10, 2016 @art103 Make bidirectional rastering optional and off by default.
To enable, set R to the number of us to fire early (prevents offset rasters due to laser turn on delay).
Permalink
Failed to load latest commit information.
driverlib Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
inc Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
usblib Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
.cproject Fix stack corruption issue with latest Tiva-C library. Mar 28, 2015
.gitignore merged master Jan 31, 2011
.project Update project files for standard Eclipse / CDT. Jun 19, 2013
LM4F.ld Fix stack corruption issue with latest Tiva-C library. Mar 28, 2015
README.md Update readme with development setup and explanation of board differe… Mar 29, 2015
config.h Make bidirectional rastering optional and off by default. Mar 10, 2016
gcode.c Make bidirectional rastering optional and off by default. Mar 10, 2016
gcode.h Merge support for CW and CCW arcs (G02, G03) from grbl master. Aug 11, 2013
glcdfont.h Add support for a Nokia 5110 LCD (PCD8544) Jun 26, 2013
joystick.c Detect and adjust for boards that have a higher resolution stepper dr… Jul 9, 2015
joystick.h Don't let the Joystick set the origin whilst the laser is being contr… Jul 2, 2013
lasaur_grbl.inf Add Windows .inf file for this firmware. Jun 21, 2013
launchpad_pinout.ods Configure the interrupt priorities to give the best chance of perform… Jun 28, 2013
lcd.c Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
lcd.h Add support for a Nokia 5110 LCD (PCD8544) Jun 26, 2013
main.c Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
motion_control.c Merge support for CW and CCW arcs (G02, G03) from grbl master. Aug 11, 2013
motion_control.h Merge support for CW and CCW arcs (G02, G03) from grbl master. Aug 11, 2013
newlib_stubs.c Fix stack corruption issue with latest Tiva-C library. Mar 28, 2015
planner.c Make bidirectional rastering optional and off by default. Mar 10, 2016
planner.h Make bidirectional rastering optional and off by default. Mar 10, 2016
raster.py Possibly not as elegant a solution for rastering, but this works at 1… May 11, 2013
sense_control.c Make the homing cycle time out after 3s. Jul 22, 2015
sense_control.h Make the homing cycle time out after 3s. Jul 22, 2015
serial.c Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
serial.h Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
startup.c Fix stack corruption issue with latest Tiva-C library. Mar 28, 2015
stepper.c Make the homing cycle time out after 3s. Jul 22, 2015
stepper.h Make the homing cycle time out after 3s. Jul 22, 2015
tasks.c Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
tasks.h Add support for a Z Motor (as opposed to stepper) Jun 26, 2013
temperature.c Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
temperature.h Lots of tweaks. May 9, 2013
usb_serial_structs.c Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015
usb_serial_structs.h Update LaunchPad code base to support both Stellaris and Tiva boards. Mar 26, 2015

README.md

Lasersaur - Open Source Laser cutter

This is a port of the Lasersaur firmware to run on a K40-III 40W Chinese Laser. It runs on a Cortex-M4 and takes g-code files to control the stepper motors, laser pulse and aux outputs.

DISCLAIMER: Please be aware that operating a DIY laser cutter can be dangerous and requires full awareness of the risks involved. You build the machine and you will have to make sure it is safe. The instructions of the Lasersaur project and related software come without any warranty or guarantees whatsoever. All information is provided as-is and without claims to mechanical or electrical fitness, safety, or usefulness. You are fully responsible for doing your own evaluations and making sure your system does not burn, blind, or electrocute people.

Grbl - An embedded g-code interpreter and motion-controller for the Arduino/AVR328 microcontroller

For more information on Grbl

Development Environment

Once these components are installed in Eclipse:

  • Import...
  • General -> Existing Projects into Workspace
  • Point it to the LasaurGrbl.git clone

Stellaris vs. Tiva-C

TI seem to have had a re-shuffle internally. For us, this means a little confusion with the part numbers. The TI Stellaris board is now obsolete. The LM4F120 previously used has been renamed as TM4C1233H6PM. The replacement board is called Tiva-C and uses a TM4C123GH6PM (note the missing 3). From what I can see the boards are the same other than a silk screen and the MCU.

The code base now supports both boards via build settings in Eclipse.

  • Right click on the project
  • Build Configurations -> Set Active -> Select LM4F120 or TM4C123G.