Mid-Print Controls
O.D.I.N. provides mid-print controls on printer cards and in the printer detail panel. All controls require operator or admin role.
Overview
Controls appear on each printer card while a job is active:
- Pause and resume buttons
- Cancel/stop button
- Speed slider (Bambu only, shown during active print)
- The floating red Emergency Stop button is always visible in the bottom-right corner
Control Reference
Pause / Resume
Pause the active print and resume it when ready.
POST /api/printers/{id}/pause
POST /api/printers/{id}/resume
Supported on: Bambu, Moonraker/Klipper, PrusaLink, Elegoo
Cancel / Stop
Cancels the active print job. The printer aborts printing and resets.
POST /api/printers/{id}/stop
On Moonraker printers, this sends cancel_print. On all other protocols, it sends stop_print.
Speed Adjustment (Bambu Only)
Change the print speed mid-print using a slider (25%–200%). The current speed percentage is shown next to the slider.
POST /api/printers/{id}/speed
Body: {"speed_percent": 150}
Fan Speed Control (Bambu Only)
Set part cooling, auxiliary, and chamber fan speeds (0–255) independently.
POST /api/printers/{id}/fan
Body: {"fan_type": "part_cooling", "speed": 200}
Fan type options: part_cooling, auxiliary, chamber
Skip Objects (Bambu Only)
Exclude specific objects from printing mid-job. Useful when one object in a multi-part plate has failed but the rest are still viable.
- On the printer card, click Skip Objects
- Select the failed objects from the checklist
- Click Skip — O.D.I.N. sends the exclusion command via MQTT
POST /api/printers/{id}/skip-objects
Body: {"object_ids": [0, 2]}
Plate Cleared Confirmation
After a job completes, O.D.I.N. waits for plate cleared confirmation before dispatching the next queued job. This prevents starting a new print on a build plate that still has parts on it.
POST /api/printers/{id}/plate-cleared
The Plate Cleared button appears on the printer card after a job completes. Click it to unblock the queue.
Emergency Stop
The floating red button in the bottom-right corner sends a stop command to all connected printers simultaneously. It is visible on every page.
POST /api/printers/all/stop (internal — sent to all active printers)
Emergency stop sends a stop command to each printer in sequence. If a printer is unreachable or mid-command, its stop may not execute. Always verify physically that all printers have stopped, especially for hardware safety situations.
Protocol Support Matrix
| Control | Bambu | Moonraker | PrusaLink | Elegoo |
|---|---|---|---|---|
| Pause | Yes | Yes | Yes | Yes |
| Resume | Yes | Yes | Yes | Yes |
| Cancel/Stop | Yes | Yes | Yes | Yes |
| Speed Adjustment | Yes | No | No | No |
| Fan Speed Control | Yes | No | No | No |
| Skip Objects | Yes | No | No | No |
| Plate Cleared | Yes | Yes | Yes | Yes |
See Also
- Adding Printers — printer protocol configuration
- Job Scheduler — queue management and plate cleared workflow
- Vigil AI Detection — auto-pause on failure detection