LR4 Lasertree K60 60W Mount “Frickin Laser Beams”

Organizing my thoughts on what I’ve learned on tool controls and axis implementation.

  • Autospin T1 on X axis, Tool 0
  • LT 60W on A axis, Tool 10
  • Custom startup Gcode in Lightburn needs to first park Tool 0 at X axis machine home and turn off spindle before moving A axis and starting laser
    • :white_check_mark: M6 ; M5 ; $HX ; M3 S0 ; T10 M6
  • Custom finishing Gcode after laser cutting/engraving
    • :white_check_mark: M5 ; $HAZ ; G0 Y1500 ; M2
  • Lightburn cannot remap X axis to A, need workaround
    • Text edit, X → A (tedious, not my style)
    • :white_check_mark: Make custom GRBL device profile (preferred, not sure if possible?)
      • See below for process
    • Use multiple configs (easier to implement, design limiting)
  • MillMage will need inverse startup/finish commands
    • T10 M6 ; M5 ; $HAZ ; T0 M6
    • M5 ; $HXZ ; G0 Y1500 ; M2
  • Need to design custom macros for aligning X and A axis
    • Set bit and laser to same Z cutting point
      • :white_check_mark: Define Y offset between laser crosshatch/laser point/spindle bit point (38mm per manufacturer)
      • T0 M6 ; G0 X500 → Z down tap spoil board → Z up to G0 X0
      • T10 M6 ; G0 A500 → Z down laser pulse → Z up to G0 A1376
    • Park X button, Park A button
    • Probe spindle and pause to set laser depth
  • Items to consider
    • Bit and laser alignment in Z may not always be set, need to ensure bit doesn’t crash when moving for laser
    • A axis is never confused with X axis in gcode
    • Laser safety, maintain cleanliness of lens/unit
    • Would it be easier to just build another table?
      • Would it be as fun?

Edit (Misc):

  • Need to add the following to enable/disable laser mode for M3/M4 to act properly in GRBL:
    • To Enable: Send Grbl a $32=1 command.
    • To Disable: Send Grbl a $32=0 command

Edit 2 (Lightburn custom Gcode device):

  • Create custom G-Code device in Lightburn
    • Create new device → Create Manually → Custom GCode
    • Setup CNC as normal, rename with A Axis and Save
  • Edit Gcode commands
    • Open Device settings
    • Enable DTR mode per FluidNC
    • Edit startup and shutdown scripts from above and test
    • Edit Rapid Move and Cut Move, replace G0 [X]{x} → G0 [A]{x} ; [A]{rot} → [B]{rot} (to prevent code confusion)