Connect your first machine
This guide tells you what data NOPAL asks for each type of machine and where to find it.
Adding a machine requires the Administrator role. An operator can view and operate machines already registered, but not register them. See Users and roles.
Machines must be on the same local network as NOPAL. Machines are added under Settings → Devices. The sections for each family in the side menu remind you: "Add the printer from Settings → Devices."
Pick your case:
| I have… | Go to |
|---|---|
| A printer running Klipper and Moonraker | Klipper |
| A Marlin printer (USB or MKS WiFi board) | Marlin |
| A GRBL laser or CNC | Laser and CNC |
| A Bambu Lab | Bambu Lab |
| An Elegoo | Elegoo |
| A FlashForge | FlashForge |
Klipper
NOPAL looks for Moonraker on the same machine where NOPAL runs, on ports 7125, 7126 and 7127. If your Moonraker is on those ports, the printer appears on its own, with no manual registration.
If you use other ports, the server administrator must declare them in the NOPAL_KLIPPER_PORTS environment variable (a comma-separated list of ports) and restart NOPAL:
sudo systemctl edit nopal
Add in the editor:
[Service]
Environment=NOPAL_KLIPPER_PORTS=7130,7131
sudo systemctl restart nopal
Today NOPAL does not discover Klipper on other machines of the network: it looks for Moonraker on the server itself.
Marlin
Marlin connects over USB or WiFi (MKS WiFi modules).
Over USB
- Connect the printer to the machine where NOPAL runs.
- Under Settings → Devices, choose the detected USB port. If none appears you will see "No compatible ports detected."
- NOPAL tests the connection speed (baud rate) automatically and suggests a name from what the printer answers.
- Enter a name. Optionally pick a machine profile and, if it applies, the board variant and the number of extruders.
- Click Add printer.
Over WiFi (MKS)
- Under Settings → Devices, let NOPAL discover the module on the network, or use Add by IP.
- If you add it by IP, enter the TCP port. NOPAL connects to the board's G-code bridge, which uses port 8080 by default.
- Enter a name and confirm.
Laser and CNC
GRBL controllers, including ESP3D and FluidNC boards.
- Over USB: they appear under Detected USB ports (CH340, CP210x or ESP32 controllers plugged directly into the server). If there are none you will see "No laser controllers detected over USB."
- Over WiFi: NOPAL scans the local network. If your machine is on another subnet, use Search by IP and enter its address.
After detecting it, give it a name and register it. Each laser or CNC is independent: you can have several at once.
Bambu Lab
LAN mode only. Data needed:
| Data | Where to find it |
|---|---|
| IP | In your router or on the printer screen |
| Serial number | On the printer |
| Access code | On the printer screen: Settings → Network → LAN Mode |
| Name | Whatever you choose |
| Model | Optional |
NOPAL verifies the access code with a real connection (MQTT) before confirming the registration.
A Bambu Lab is only visible when it announces itself on the network, so the scan may not find it the first time. Repeat the scan or type its IP by hand.
Elegoo
Printers using the SDCP protocol (for example Centauri Carbon or the Neptune 4 series).
- Start the network scan. If it detects nothing you will see "No Elegoo printers detected on the network. Try scanning again."
- Data the registration asks for: IP, board identifier (
mainboard_id, which the scan detects), name and, optionally, model.