Video summary
This Open Source Software Runs My Entire Print Farm!
Main summary
Key takeaways
Summary of Technological Concepts / Product Features (Print Farm Software)
Open-source “Print Farm Software” (Print Manager)
- The creator is releasing their own print farm management tool for free under an open-source license.
- A GitHub repository is provided for cloning.
- Cross-platform support is intended for:
- Mac
- Windows
- Likely Linux (noted as being npm-based)
Local-Network Architecture (No Cloud, No Login)
- The dashboard runs on a private local network.
- It explicitly avoids cloud components and user login.
- Machine status updates use polling:
- Machines are polled at a configured interval (example: every 15 seconds).
- Refresh is time-configured, not continuous.
Core Goal: “Printer Agnostic” Throughput Optimization
- Motivation: existing solutions didn’t match the creator’s requirements (e.g., Prusa Connect and other farm tools like Bambu/Bamboo).
- Design aims:
- Operate across different printer types (a “fleet” approach).
- Maximize throughput and overall efficiency.
- Maintain computer-side tracking of counts, while the operator handles interventions (e.g., filament changes, harvesting parts).
Dashboard Views and Workflows
- Utilization metrics
- Time-based metrics (example mentions “last 24 hours”).
- Based on machine availability and running state.
- Fleet status with color-coded states
- Green: print finished; machine needs harvesting/confirmation
- Blue: print in progress
- Orange: operator attention required (often filament out)
- Active projects
- Projects contain parts
- Parts have quantities
- Quantities are fulfilled using G-code dispatch to multiple printers
Human Confirmation Model for Print Success
- The system assumes success while printing, but does not fully confirm completion until an operator confirms.
- Operator controls include per-printer buttons:
- Green “ready/success” button:
- Logs the completed part
- Updates tracking counts
- Red “bad print” button:
- Triggers a failure workflow that can decommission the machine (or mark it handled via the failure/decommission flow)
- Green “ready/success” button:
Project + Part Detail System (G-code Mapping per Printer Type)
- Each part includes associated G-code files for different printer models (e.g., Core 1 and Mark 4S).
- Dispatch selects the correct G-code based on printer model/type.
- Scaling approach:
- Add new machines by providing the appropriate G-code mappings for that printer type.
Material/Color Targeting (Example: PLA + Gray)
- Jobs can be targeted by material and color (e.g., “PLA and gray”).
- Logic example:
- If color doesn’t matter, specify material and allow any color, distributing jobs across machines until the required quantity is reached.
Machine Grouping for Granular Targeting
- Printers can be assigned to groups (e.g., per shelf/row).
- This supports dispatch strategies that reflect physical organization and improves reporting clarity.
Plate / Parts-Per-Plate Tracking with Partial Failure Tolerance
- Supports configuration like “parts per plate” (example: 25).
- Handles partial failures while keeping counts correct.
- Example scenario:
- If 1 part fails, operator/logic can record 24 out of 25 successful parts.
- The system updates totals so the farm still reaches the target quantity.
- Example scenario:
Project Lifecycle States
- Projects can be:
- Draft
- Active
- Paused
- Completed
- Draft activation workflow:
- Copy/duplicate a project → it starts as draft, then becomes active.
- Automation behavior:
- When printers become idle after finishing, the operator can activate the next project to keep the farm running.
Operational Examples (Filament-Out and Recovery)
- Demonstrated filament-out handling on specific printer IDs:
- Operator unloads filament via the UI button
- Machine heats up
- Operator loads filament
- Operator confirms color if prompted
- Printer transitions states (example: yellow → blue) after refresh/polling
- Demonstrated readiness confirmation:
- Marking a printer ready triggers dispatch for the next job
- Example: confirming leads to a new chassis part job and dashboard updates
Event History + Job History for Diagnostics
- Tracks:
- Completed jobs and timestamps
- Failures
- Recommissioning events
- Network connection loss and recovery (noted especially for some Prusa machines)
Printer Registry / Connectors / Dispatch Settings (Integration Design)
- Printer registry import
- Initial setup uses a spreadsheet/CSV containing:
- printer name
- IP
- API key
- group
- type
- Initial setup uses a spreadsheet/CSV containing:
- Pluggable connector architecture
- Each printer class is handled by its own connector
- Examples mentioned:
- Prusa connector (uses Prusa API key)
- Elegoo STCP connector (for Centauri Carbon)
- Elegoo Centauri Carbon 2 connector using MQTT
- Klipper via Moonraker
- Connectors translate farm actions into printer-control protocols.
- Dispatch setting / concurrency control
- Example dispatch concurrency value: 5
- Purpose: avoid overwhelming network/computer/communication reliability
- Backup and redundancy
- Local backups exist; redundancy is planned later
- Polling interval configuration
- Polling interval is not user-configurable
- Example fixed interval: 15 seconds
Guides / Tutorial-Style Elements Present
- Step-by-step UI walkthrough:
- Dashboard → fleet status → project view → part details → printer readiness confirmation
- Demonstrations of real operational procedures:
- Filament-out workflow (unload → load → confirm → refresh → resume)
- Activating drafts and auto-feeding queued work to idle printers
- Installation guidance:
- Installation instructions are referenced on GitHub
- The video focuses more on workflow/UI than setup details
Main Speakers / Sources
- Primary source: the video creator/developer of the print farm software (developer name not clearly stated in subtitles).
- External referenced sources/communities:
- “Grant at 3D Musketeers” (previously discussed farm software)
- Sponsor/partner mentioned:
- PCBWay / PCB CNC / 3D printing, referenced as “powered by PCBWay” (not as the software source)