Skip to main content

Adding Printers

O.D.I.N. supports four printer protocols. Each protocol has its own discovery and connection method. Once connected, printers report telemetry in real time and accept remote control commands.

Navigate to Settings > Printers > Add Printer and select your printer type.

Bambu Lab

Supported models: X1C, P1S, P1P, A1, A1 Mini, H2D

FieldWhere to Find It
IP AddressPrinter LCD: Settings > Network
Access CodePrinter LCD: Settings > Network > Access Code
Serial NumberPrinter LCD: Settings > Device Info

O.D.I.N. connects via MQTT to receive telemetry (temperatures, print progress, AMS status, HMS errors). The access code authenticates the MQTT connection directly with the printer.

tip

The access code changes if you re-bind the printer to Bambu Cloud. Update it in O.D.I.N. if you re-bind.

H2D Dual-Nozzle Support

The Bambu Lab H2D is automatically detected as a dual-nozzle printer. O.D.I.N. displays:

  • Independent temperature readings for both nozzles
  • Dual AMS unit status and filament mappings
  • Per-nozzle active/standby state during prints

No additional configuration is required — dual-nozzle capabilities are enabled based on the printer's reported model.

Klipper / Moonraker

FieldDefault
IP Address
Port7125

O.D.I.N. connects to the Moonraker API via REST polling at 3-second intervals. Moonraker must be accessible from the O.D.I.N. container's network.

Supported operations:

  • Real-time status (temperatures, progress, state)
  • Start, pause, resume, cancel prints
  • Send arbitrary GCode commands
  • Upload files to the printer
info

Ensure Moonraker's [authorization] section allows connections from the O.D.I.N. container IP, or configure trusted clients appropriately.

# moonraker.conf — example trusted client entry
[authorization]
trusted_clients:
192.168.1.0/24
FieldWhere to Find It
IP AddressPrinter LCD: Settings > Network
API KeyPrinter LCD: Settings > Network > PrusaLink > API Key

O.D.I.N. connects via HTTP polling using the PrusaLink REST API. The API key is passed as a header for authentication.

caution

PrusaLink firmware versions vary. Ensure your printer is running a recent firmware that exposes the full PrusaLink API. Older firmware may report limited telemetry.

Elegoo

FieldWhere to Find It
IP AddressPrinter touchscreen: Settings > Network

O.D.I.N. communicates using the SDCP (Smart Device Communication Protocol) for status monitoring and printer control.

Printer Settings

After adding a printer, configure these optional settings:

  • Name — Display name shown across the dashboard and reports.
  • Organization / Group — Assign the printer to an organization for multi-tenant management. This controls which users can see and operate the printer based on their group membership.
  • Smart Plug — Configure a smart plug (IP and type) to enable remote power control. Useful for power cycling unresponsive printers or enforcing quiet hours.

Troubleshooting

SymptomLikely Cause
Printer shows "Offline" immediatelyIP address unreachable from container. Check Docker network and firewall rules.
Bambu printer connects but shows no dataAccess code is wrong or was recently changed. Re-enter it.
Moonraker printer times outPort is wrong or Moonraker authorization is blocking the connection.
PrusaLink shows partial dataFirmware is outdated. Update to the latest PrusaLink-compatible firmware.