---
title: "LightBurn G-Code Console Commands, Explained Simply"
description: "LightBurn's console is a direct line to your GRBL controller: $$ lists settings, $H homes, $X unlocks, $G shows active modes. Here is the working command set."
url: https://gcodepractice.com/journal/lightburn-g-code-console-commands-explained/
canonical: https://gcodepractice.com/journal/lightburn-g-code-console-commands-explained/
author: "Lawrence Arya"
authorUrl: https://www.linkedin.com/in/vibecoding/
published: 2026-06-04
updated: 2026-06-04
category: "Code reference"
tags: ["lightburn", "console", "grbl", "laser"]
lang: en
---

# LightBurn G-Code Console Commands, Explained Simply

> **TL;DR** LightBurn's console passes typed commands straight to the controller, usually GRBL, so the useful vocabulary is GRBL's: $$ lists settings, $H homes, $X clears an alarm lock, $G shows the active modal state, $# shows offsets, and plain G-code lines like G0 moves or G90/G91 work directly. M3 test fires demand real caution. The console is where laser problems get diagnosed in seconds instead of forum threads.

The console tab in [LightBurn](https://docs.lightburnsoftware.com/) looks like a chat window and works like a serial terminal: every line you type goes straight to the controller, and every reply comes straight back. On the GRBL boards that run most hobby lasers, that makes the console a diagnostic port, and the vocabulary worth learning is [GRBL's own](https://github.com/gnea/grbl/wiki/Grbl-v1.1-Interface), not anything LightBurn invented.

## Which commands earn their keep?

A dozen lines cover nearly every console session:

| Command | What it does | When you use it |
| --- | --- | --- |
| `$$` | Lists all machine settings | Checking or recording configuration |
| `$H` | Runs the homing cycle | After power-up or an alarm |
| `$X` | Clears an alarm lock | Unlocking before re-homing |
| `$G` | Prints active modal state | Is it in `G91`? Laser mode on? |
| `$#` | Shows stored offsets | Where work zero actually is |
| `?` | Status report | Position and state mid-job |
| `G0 X10 Y10` | Jog move | Positioning by keyboard |
| `G90` / `G91` | Absolute / relative | Before typed moves |
| `M5` | Beam off | The line to know cold |

The two halves of the table are worth separating mentally: `$` commands are GRBL **system** commands, handled outside the G-code parser, while the bottom rows are ordinary G-code executed exactly as a file would, per the [configuration documentation](https://github.com/gnea/grbl/wiki/Grbl-v1.1-Configuration).

## What is the console actually for?

Diagnosis, mostly. When a job halts with a cryptic message, the console shows the raw `error:N` or `ALARM:N` that the UI may soften, and the decoding ritual, `$X` to unlock, `$H` to re-home, then finding the cause, is the [GRBL alarm 1 vs error 1](/journal/grbl-alarm-1-g-code-error-explained/) procedure typed by hand. When motion behaves oddly, `$G` answers the modal questions in one line: positioning mode, units, and whether laser mode has `M4` behaving dynamically, the power story from [M3 vs M4 on a laser cutter](/journal/m3-vs-m4-for-cnc-laser-cutter/). When the machine forgets where it lives, `$#` and `?` show the offsets and position the firmware believes. Each is a ten-second answer to questions that otherwise become forum threads.

## What deserves real caution?

Test firing. `M3 S20` in the console turns the beam on and leaves it on until `M5`, which makes it genuinely useful for focusing and alignment and genuinely dangerous as a casual habit: lowest workable power, beam on scrap, glasses on, `M5` ready. Settings writes deserve respect too: `$32=1` enabling laser mode is routine, but `$` settings change machine behavior permanently, so record `$$` output before changing anything, and change one value at a time. The console forgives reads; it remembers writes.

A concrete session from the everyday pile: a diode laser stopped mid-engrave with `ALARM:1`. Console: `$X`, `$H`, `$#` showed work zero where it should be, `$G` showed `G91` still active from an earlier typed jog, which explained the move that ran into the limit. One `G90`, and the re-run finished clean. Four commands, ninety seconds, no thread posted.

## How does this fit the bigger learning picture?

The console is the most honest G-code teacher a laser owner has, because it strips away every layer between you and the controller: what you type is what runs. The vocabulary is small, the GRBL system set plus the everyday motion and power codes, and once it is reflex, the console stops being the place you paste mystery commands from forums and becomes the place you ask the machine direct questions. Drilling that vocabulary to reflex is what the [G-code practice hub](/g-code-practice/) covers in spare minutes.

## Bottom line

LightBurn's console speaks GRBL: `$$`, `$H`, `$X`, `$G`, `$#`, and `?` for the system half, plain G-code for the motion half, and `M5` as the line you never hesitate on. Learn the dozen working commands, treat test fires as live-fire, record settings before writing them, and the console turns from intimidating to indispensable.

## Sources

- [LightBurn documentation](https://docs.lightburnsoftware.com/)
- [GRBL v1.1 Interface (commands, messages)](https://github.com/gnea/grbl/wiki/Grbl-v1.1-Interface)
- [GRBL v1.1 Configuration ($ settings)](https://github.com/gnea/grbl/wiki/Grbl-v1.1-Configuration)

## Frequently asked questions

### What are the most useful LightBurn console commands?
The GRBL set plus plain G-code: `$$` settings, `$H` home, `$X` unlock, `$G` modal state, `$#` offsets, `?` status, and typed `G0` jogs with `G90`/`G91`. About a dozen lines cover most sessions.

### Why does the LightBurn console show GRBL messages?
The console is a pass-through: you are talking to the controller, and on GRBL machines the replies, `ok`, `error:N`, `ALARM:N`, are GRBL's own vocabulary.

### Is it safe to type M3 in the LightBurn console?
Treat it as live-fire: lowest workable power, beam on scrap, eye protection, and `M5` ready. Outside dynamic mode the beam stays on until told otherwise.

### What is the best way to learn the codes behind the LightBurn console?
Drill the small GRBL-relevant set with active recall. A free app like G-Code Sprint quizzes the everyday codes and repeats whichever ones you miss, so console sessions stop being copy-paste rituals.

*G-Code Sprint is a study and practice tool only. Always follow your instructor, employer, machine manual, and shop safety procedures.*

---

Source: https://gcodepractice.com/journal/lightburn-g-code-console-commands-explained/
Author: Lawrence Arya — https://www.linkedin.com/in/vibecoding/
