TL;DR: Mit Moonrakers Job-Queue und der Power-Komponente kannst du Druckaufträge in die Warteschlange legen – dein 3D-Drucker schaltet sich automatisch ein, heizt vor und startet den Druck. Kein manuelles Einschalten mehr nötig!

🤔 Das Problem: Drucker manuell einschalten nervt

Kennst du das? Du bereitest deinen Druck am Slicer vor, exportierst den G-Code, lädst ihn hoch – und dann musst du erst noch zum Drucker laufen, ihn einschalten und warten, bis er bereit ist. Wäre es nicht genial, wenn du einfach den Druck in eine Warteschlange legst und der Drucker sich automatisch einschaltet?

Genau das ermöglicht Moonraker mit seiner Job-Queue und der Power-Komponente. In diesem Artikel zeige ich dir, wie du das einrichtest.

📋 Voraussetzungen

  • Klipper als Firmware auf deinem 3D-Drucker
  • Moonraker als API-Server (wird z.B. mit MainsailOS oder FluiddPi mitgeliefert)
  • Eine smarte Steckdose (Tasmota, Shelly, TP-Link, etc.) oder ein steuerbares Relais
  • Netzwerkzugang zwischen Moonraker und der smarten Steckdose

🔌 Moonraker: Power-Komponente konfigurieren

Zuerst musst du Moonraker beibringen, deinen Drucker ein- und auszuschalten. Das geht über die [power]-Sektion in der moonraker.conf:

# moonraker.conf

[power printer]
type: tasmota
address: 192.168.1.100
# Alternativ für Shelly:
# type: shelly
# address: 192.168.1.101

# Drucker nicht ausschalten während eines Drucks
locked_while_printing: True

# Nach dem Einschalten kurz warten
restart_klipper_when_powered: True
restart_delay: 3

# Automatisch einschalten, wenn ein Druck gestartet wird
bound_services: klipper

Die wichtigsten Parameter im Überblick:

  • type: Der Typ deiner smarten Steckdose (tasmota, shelly, tplink_smartplug, homeassistant, http, etc.)
  • address: IP-Adresse der Steckdose
  • locked_while_printing: Verhindert versehentliches Ausschalten während eines Drucks
  • restart_klipper_when_powered: Startet den Klipper-Service automatisch nach dem Einschalten
  • bound_services: Bindet den Power-Status an Klipper
3D Drucker einschalten wenn Slicer geöffnet wird
Erfahre, wie du deinen 3D-Drucker automatisch einschalten kannst, wenn du deinen Slicer öffnest.

📥 Job-Queue konfigurieren

Jetzt kommt das Herzstück: Die Job-Queue. Sie erlaubt es dir, Druckaufträge in eine Warteschlange zu legen, die automatisch abgearbeitet wird – selbst wenn der Drucker gerade noch aus ist.

# moonraker.conf

[job_queue]
load_on_startup: True
automatic_transition: True

Mit load_on_startup: True wird die Warteschlange beim Start von Moonraker geladen. automatic_transition: True sorgt dafür, dass nach einem abgeschlossenen Druck automatisch der nächste Job gestartet wird.

⚙️ Klipper-Makro: Warten auf Bereitschaft

Wenn der Drucker sich einschaltet, braucht er einen Moment zum Hochfahren. Mit einem delayed_gcode-Makro in der printer.cfg stellst du sicher, dass alles bereit ist, bevor der Druck startet:

# printer.cfg

[delayed_gcode POWER_ON_WAIT]
initial_duration: 0
gcode:
    {% if printer.idle_timeout.state == "Idle" %}
        # Drucker ist hochgefahren und bereit
        M117 Drucker bereit - Druck wird gestartet
        RESPOND MSG="Drucker ist hochgefahren und bereit"
    {% else %}
        # Noch nicht bereit, erneut prüfen
        UPDATE_DELAYED_GCODE ID=POWER_ON_WAIT DURATION=5
    {% endif %}

[gcode_macro POWER_ON_PRINTER]
gcode:
    # Warten bis Klipper verbunden ist
    UPDATE_DELAYED_GCODE ID=POWER_ON_WAIT DURATION=10
    M117 Warte auf Druckerstart...

Dieses Makro prüft alle 5 Sekunden, ob der Drucker im Idle-Zustand ist, also bereit für einen neuen Druck.

🔄 Der Workflow: Vom Upload zum fertigen Druck

So sieht der komplette Ablauf aus:

  1. G-Code hochladen: Lade deinen G-Code über Mainsail, Fluidd oder die API hoch
  2. Job in die Queue: Füge den Druck zur Warteschlange hinzu
  3. Drucker schaltet sich ein: Moonraker erkennt den neuen Job und schaltet den Drucker über die Power-Komponente ein
  4. Klipper startet: Der Klipper-Service verbindet sich mit dem Drucker
  5. Druck startet automatisch: Sobald Klipper bereit ist, wird der erste Job aus der Queue gestartet
  6. Nächster Job: Nach Abschluss startet automatisch der nächste Job (wenn vorhanden)

🌐 Moonraker API: Jobs per API steuern

Du kannst die Job-Queue auch komplett über die Moonraker-API steuern. Das ist besonders nützlich für Automatisierungen:

# Datei hochladen
curl -X POST "http://<moonraker-ip>:7125/server/files/upload" \
  -F "file=@mein_druck.gcode"

# Job zur Queue hinzufügen
curl -X POST "http://<moonraker-ip>:7125/server/job_queue/job" \
  -H "Content-Type: application/json" \
  -d '{"filenames": ["mein_druck.gcode"]}'

# Queue starten
curl -X POST "http://<moonraker-ip>:7125/server/job_queue/start"

# Queue-Status abfragen
curl "http://<moonraker-ip>:7125/server/job_queue/status"

# Job aus der Queue entfernen
curl -X DELETE "http://<moonraker-ip>:7125/server/job_queue/job?job_ids=JOB_ID"

🏠 Integration mit Home Assistant (optional)

Wenn du Home Assistant nutzt, kannst du die Moonraker-Integration verwenden, um den Workflow noch weiter zu automatisieren. Zum Beispiel:

  • Benachrichtigungen: Push-Nachricht aufs Handy, wenn der Druck fertig ist
  • Automatisierungen: Drucker nach X Minuten Idle automatisch ausschalten
  • Dashboard: Druckstatus und Queue-Übersicht im Home Assistant Dashboard
  • Szenen: "Druckmodus" aktivieren – Licht an, Kamera an, Drucker an

Die Moonraker-Integration für Home Assistant findest du als HACS-Integration unter dem Namen Moonraker. Alternativ kannst du die Power-Komponente direkt als type: homeassistant konfigurieren, wenn dein Smart Plug bereits in Home Assistant eingebunden ist:

# moonraker.conf - Home Assistant als Power Device

[power printer]
type: homeassistant
address: 192.168.1.50
port: 8123
device: switch.3d_drucker
token: DEIN_LONG_LIVED_ACCESS_TOKEN
domain: switch
Home Assistant mit WebHooks automatisieren
Lerne, wie du Home Assistant mit WebHooks automatisieren kannst.

🎯 Fazit

Mit der Kombination aus Moonrakers Job-Queue und Power-Komponente wird dein 3D-Druck-Workflow deutlich komfortabler. Du lädst einfach deine G-Code-Dateien hoch, fügst sie zur Warteschlange hinzu – und der Rest passiert automatisch. Besonders praktisch ist das, wenn du mehrere Drucke nacheinander starten willst oder den Drucker aus der Ferne bedienen möchtest.

Die Einrichtung ist in wenigen Minuten erledigt und funktioniert mit praktisch jeder smarten Steckdose, die von Moonraker unterstützt wird.

Artikel teilen:Share article: