Sorry, we don't support your browser.  Install a modern browser

Power-Aware Job Scheduling / Phase Load Balancing#773

Current Situation

As print farms grow beyond a few printers, electrical load distribution becomes increasingly important. Many farms distribute printers across different circuits or phases (L1, L2, L3) to avoid excessive peak loads caused by bed heating, chamber heating, or multiple simultaneous print starts.

Currently, SimplePrint schedules jobs based on printer availability but does not consider electrical load balancing.

Proposed Solution

Introduce optional “Power Groups” that can be assigned to printers.

Example:

Printers 1-10 → Power Group L1
Printers 11-20 → Power Group L2
Printers 21-30 → Power Group L3

When assigning a new print job, the scheduler would evaluate both printer availability and current power group utilization.

Possible scheduling rules:

Maximum power consumption per group
Maximum number of simultaneous print starts per group
Maximum number of active printers per group

If a group exceeds its configured threshold, the next job would be assigned to an available printer in another group or remain queued until capacity becomes available.

Live Energy Monitoring (Optional)

For advanced setups, SimplePrint could optionally use live power data from:

Shelly Pro 3EM
Home Assistant
MQTT
Future energy monitoring integrations

Example:

A Shelly Pro 3EM reports:

L1 = 3.8 kW
L2 = 1.2 kW
L3 = 1.0 kW

Instead of starting the next job on a printer assigned to L1, SimplePrint would automatically prioritize an available printer on L2 or L3.

Benefits

Prevents phase overloads.
Reduces power spikes during simultaneous heating cycles.
Improves electrical load balancing.
Allows larger print farms to scale more safely.
Integrates naturally with modern energy monitoring solutions.
Particularly useful for commercial farms operating dozens of printers.

Why Shelly Pro 3EM?

The Shelly Pro 3EM is already widely used in workshops, maker spaces, and print farms. It provides real-time phase-level energy monitoring without requiring Home Assistant and would therefore be a practical standalone solution for many users.

4 hours ago

Will Staggered Start not do? :) https://simplyprint.io/features/staggered-start

4 hours ago

I think Staggered Start solves a different problem.

Staggered Start helps avoid simultaneous heating spikes when multiple printers start at the same time, which is definitely useful.

What I am thinking about is more of a load-aware scheduler for larger print farms.

For example, in a farm with 30-50 printers distributed across L1, L2 and L3, the goal would not only be to delay starts but also to actively distribute new jobs towards the least loaded power group.

Example:

  • L1 currently has 15 active printers
  • L2 has 10 active printers
  • L3 has 8 active printers

Instead of assigning the next queued job to the first available printer, the scheduler could prefer a printer in the least loaded group.

This could be based on:

  • Printer groups
  • Active printer count
  • Estimated power consumption
  • Live data from Shelly Pro 3EM, Home Assistant or MQTT

So the idea is less about start delays and more about long-term power/load balancing across larger farms.

4 hours ago

Gotcha. Thanks for the suggestion!

4 hours ago