Connecting machines
A machine in GRBL Server is a laser controller you've added to the server. Each machine has a name, a connection (USB / Serial, or WiFi / Ethernet), a firmware (GRBL, or GRBL-ESP32 / FluidNC), a port or address (a COM port for USB machines, an IP address for networked ones), a description, a work area and, optionally, its maximum power.
This page shows you how to add machines over each connection, what the work area and maximum power mean, how to read the connection status, and how to move a machine by hand.
Connections & firmware
Adding a machine comes down to two choices: how it's connected and what firmware it runs. You pick the connection first, and GRBL Server then offers only the firmware that works over it.
| Connection | Used for | Firmware | Port or address |
|---|---|---|---|
| USB / Serial | Controllers plugged into the host by USB — most diode lasers. | GRBL | The COM port — COM3, COM4, … |
| WiFi / Ethernet (WebSocket) | Controllers on your network, such as FluidNC, GRBL-ESP32 and ESP3D boards. | GRBL-ESP32 (WebUI / FluidNC) — the default — or GRBL | The controller's IP address — 192.168.1.50 |
Adding a USB machine
- Plug the controller into the host computer by USB and switch it on.
- If the board uses a CH-340 USB-to-serial chip — most inexpensive GRBL boards do — and Windows hasn't loaded a driver for it, download and install the CH-340 driver from the chip maker's official driver page first. Without the driver the board won't show up as a COM port.
- Open Machines (under Setup in the sidebar) and click Add machine.
- How is it connected? Set Connection to
USB / Serial. Firmware isGRBL. - Connection settings. Set the Baud rate the controller talks at — most GRBL boards use
115200, so change it only if yours is set differently. Each machine stores its own baud rate. - Find your machine. Click Search for machines and GRBL Server lists every board it finds on the host's USB ports (machines you've already added are left out). If yours isn't listed, type its COM port (e.g.
COM3) into Port or address and click Look it up. - Tick each board you want to add. The Port or address and Serial no. / MAC are filled in for you.
- Give each one a short, descriptive name (e.g.
laser_A) — it's what shows up in jobs and workflows — and a description if you like (e.g. "10 W diode · plywood + acrylic"). - Click Add selected machines. GRBL Server connects to each board, reads its work area from the controller, and adds it to the Machines page.
Adding a Wi-Fi / Ethernet machine
Most network GRBL controllers are built around the ESP32 chip, which can run as either a Wi-Fi access point or as a client on an existing network. For GRBL Server to find and talk to the machine, the controller must be in STA mode (Station mode) and joined to the same local network as the host computer. Controllers on Ethernet just need to be plugged into the same network.
Switching the controller to STA mode
The exact procedure depends on which firmware your controller runs (FluidNC, GRBL_ESP32, vendor-specific builds), but the shape is the same:
- Power on the controller and connect to its AP-mode Wi-Fi from a laptop or phone (it usually appears as something like
GRBL_ESP32-XXXXorFluidNC). - Open the controller's web UI (typically
http://192.168.4.1). - Find the Wi-Fi / network settings page.
- Change the mode from AP to STA (or "Station", "Client", depending on the firmware).
- Enter the SSID and password of your workshop Wi-Fi.
- Save and reboot the controller. It should now join your network and get an IP from your router.
Check your router's client list (or use a Wi-Fi scanner app) to find the IP it received. A DHCP reservation in the router keeps it stable — although GRBL Server follows a machine to a new address on its own (see Connection status).
Adding the controller to GRBL Server
- Confirm the controller is reachable from the host: open
cmd.exeand runping <controller-ip>. If ping fails, fix that first — the controller is still in AP mode, on a different network, or blocked by client isolation on the router. - On the Machines page, click Add machine.
- How is it connected? Set Connection to
WiFi / Ethernet (WebSocket). Firmware defaults toGRBL-ESP32 (WebUI / FluidNC); pick plainGRBLonly if your board runs stock GRBL behind a WebSocket bridge. - Connection settings. The WebSocket port defaults to
81— FluidNC, GRBL-ESP32 and ESP3D boards use port 81 unless you changed it. - Find your machine. Click Search for machines and GRBL Server sweeps your local network for controllers, listing each with its IP address and MAC. The search takes a few seconds. If yours isn't listed, type its IP address into Port or address and click Look it up.
- Tick each controller you want to add, give it a name and description, then click Add selected machines. GRBL Server connects, reads the work area, and adds it.
Network search settings
The network search — and the WebSocket connection itself — is driven by a few values under Settings → WiFi / Ethernet. The defaults suit most home and workshop networks; change them when your setup differs. Edits apply to the next search, connection or job, so there's no need to restart.
| Setting | Default | What it does |
|---|---|---|
| subnet | 192.168.1.0/24 |
The address range the search sweeps, in CIDR notation. Set it to match your network — 192.168.0.0/24, 10.0.0.0/24, and so on. |
| port | 81 |
The WebSocket port GRBL Server uses to find and talk to controllers. Must match the port your firmware serves WebSocket on. |
| connect timeout | 2 |
Seconds to wait for each address to answer before moving on. Raise it on slow or congested networks; lower it for a quicker search. |
| max concurrent | 200 |
How many addresses are probed at the same time. Lower it if a large search strains the host or the network. |
Machine settings
Click Settings on a machine's card to open the Machine settings dialog. Its name, description, port or address, work area and maximum power are edited together there, and what you type is checked before it's saved. Changes apply to new jobs; a job already running isn't affected.
| Setting | What it means |
|---|---|
| Port or address | The USB port (such as COM4) or network address (such as 192.168.1.50). Checking the connection finds the machine again if it moves. |
| Work area | Width (X), Depth (Y) and Height (Z) in mm — how far the head can travel on each axis. It's read from the machine when you add it ($130–$132 on GRBL). Jobs are placed and previewed inside it, and grids, nesting and crops use it as their outer bound. |
| Max power (S value) | The S value your machine treats as full power ($30 on GRBL). Engraving profiles set power from 0 to 1000 and every job is rescaled to this range, so the same profile burns correctly on a machine set to S1000 or S255. Leave it empty for the default (1000). |
Connection status
Each card says whether the machine is connected right now. GRBL Server checks every machine once in the background shortly after it starts, and again each time the Machines page opens; Check again re-runs the check for one machine. A machine that's already running a job is left undisturbed.
| Status | What it means |
|---|---|
| Connected | The machine answered, and it's the same hardware you added — matched by its USB serial number or its MAC address. |
| Not connected | GRBL Server can't reach the machine right now. Make sure it's switched on and connected, then check again. |
| Another device answered | Something answered at the saved port or address, but it isn't this machine — on a network this usually means the IP now belongs to a different controller, or the board was replaced. |
Machine controls
Control on a machine's card opens the machine controls. The same controls appear in the Job Station and on workflow runs in Activity, always naming the machine and whether it's connected, with Reconnect beside it.
- Move the head — arrows labelled with their axis (X+, Y−, Z+), a Distance per click from 0.1 to 100 mm, and a Speed in mm/min. Both are remembered.
- Machine commands — Home (run the homing cycle), Unlock (clear an alarm), Status (ask for state and position) and Show settings (list the firmware settings), each with the command it sends underneath.
- Console — what you send and what the machine answers. Type a command and press Enter; ↑ / ↓ go back through earlier commands, and Clear empties it. Commands that may move or stop the machine ask first.
Removing a machine
Remove machine is in the card's menu and asks first. Its jobs stay on the Jobs page, but they can't run until you add the machine again.