Local-first 3D print farm manager

One dashboard for every printer you own.

PrintLan runs your whole mixed farm — Bambu Lab, Snapmaker, Qidi and any Klipper machine — entirely on your own PC and local network, and keeps it printing overnight with a queue runner that holds plates, checks filament, routes jobs and fans kit jobs out across machines. No cloud, no accounts, no per-printer fees — plus quotes, inventory, money reports and the real cost of every print.

  • 100% local — your data never leaves your PC
  • Works with the internet unplugged
  • No subscription, ever
PrintLan's fleet wall: ten printers — Bambu A1 and X1, Qidi Max 4 and Plus 4, Snapmaker U1 — each showing live nozzle and bed temperatures, progress, layer counts, pause and cancel controls, loaded filament colors with the active toolhead marked, and service-hour meters.
The real fleet wall — captured mid-production on the 14-printer farm it was built in (offline machines hidden)
0printers running customer orders on the farm it was built in
0brands on one wall — Bambu, Qidi & Snapmaker, plus any Klipper machine
0cloud servers involved — it runs on your PC, over your LAN
0for a power-cycled printer to find its way home — any brand

The fleet wall

Every printer. One wall. Zero browser tabs.

Live nozzle and bed temperatures, progress, layer counts, fan and speed levels, the running job's name — and per-tool filament swatches showing exactly which colors are loaded where. Printing machines sort to the top; printers group by model.

Live everything, per machine

Thermals, progress, layer counts, fan and speed levels — plus true lifetime hour meters read from each machine's own counters, so hours and maintenance are real from day one. A 50-printer farm updates in about one printer's time.

Multi-tool & multi-slot aware

On toolchangers the card shows which head is extruding right now; on Qidi's 4-lane filament box it reads the machine's own slot tracking — the ACTIVE marker is the printer's truth, not a guess.

A real live console

One click from any card: camera, thermals, presets, jog and home, and a raw G-code console for full single-machine control when you want it.

Honest states, always

If PrintLan doesn't know, it says offline — it never invents a status. One slow answer never flips a printer red; debounced, self-healing connections.

The killer feature

Send jobs the smart way

Send any sliced file to any printer and PrintLan makes it print right — matching is material-first, color second: a black PLA file can never auto-map onto a black PETG spool. You can change the color freely, never the material by accident. Wrong machines are flagged before anything moves, every guard can be rehearsed with zero risk, and a final Close enough check has the last word before anything reaches the machine.

FILE WANTS

  • White
  • Black
  • Red
  • Amber

SLOTS LOADED

  • T1 · Black
  • T2 · White
  • T3 · Amber
  • T4 · Red

Swap spools without re-slicing — the file's color order is rewritten in the G-code so white, black, red and amber land on whichever slots actually hold them. Colors remap freely; material never — PLA stays on PLA.

PrintLan's send dialog analyzing a G-code file: file stats, the four PLA filaments with their gram weights, a machine picker, and tool mapping auto-matched to the printer's loaded spools before printing starts.
The real send dialog — the file's filaments, auto-matched to the spools that are actually loaded, with upload progress while it starts

The material safeguard

Slot matching is material-first, color second: a file sliced for PLA can only land on PLA slots. Slots holding the wrong material are shown but disabled — you change the color freely, never the material by accident — and a machine with no matching material says so plainly instead of guessing.

Automatic tool remapping

The G-code's color order is rewritten on the fly to match the spools that are actually loaded. AMS mapping for Bambu gets a slot-by-slot color check before anything is sent.

Wrong-machine guards

A file sliced for a 4-head machine won't silently go to a single-extruder printer. Profile and tool-count mismatches are flagged — and overridable only deliberately.

Per-machine prep options

Bed leveling, flow calibration, timelapse — sent the way each manufacturer's firmware actually expects. We read Snapmaker's open-source firmware to get these right.

Dry-run mode

Rehearse the entire send — guards, mapping, prep — without starting anything. Test a new file on a farm mid-production with zero risk.

Modern archives, native

Bambu and Qidi .gcode.3mf multi-plate projects are handled natively — the correct plate is chosen automatically, metadata and thumbnails included.

Slot check, plain language

"Slot 3 is loaded with blue but the file wants white." Send anyway is always your choice — the guard tells you exactly what's off before you make it.

Multi-send

Tick two machines or ten — review each one's slot mapping side by side and send to all, with a per-machine "send anyway" for deliberate color calls. Multi-machine sends carry each machine's own mapping, and direct prints can be tagged to an order at send time.

PrintLan's multi-send review: the same sliced file ticked to several machines at once, each with its own slot mapping listed side by side, and started confirmations counted 2 of 2 as the sends go out.
Multi-send — one job to several machines at once, every machine reviewed with its own mapping before the sends go out
PrintLan's Close enough pre-send check: the file's colors compared against the slots actually loaded on the machine, flagging anything that isn't an exact match before the print is allowed to start.
Close enough — the final color check with the last word before a file goes to the machine

Overnight automation

Your farm prints while you sleep

Schedule jobs with start times and due dates; PrintLan dispatches them across the fleet and re-queues every copy of a batch automatically. When a machine finishes, the runner waits — tap "Plate cleared" (from the card or your phone's Discord ping) and production continues.

  • Plate hold: "Print done, plate holds parts. Queue waits." — nothing starts on top of finished parts
  • Filament pre-flight: a job's grams are checked against what's actually loaded — a job that would run dry never starts (your hand-entered "verified grams" beat a machine's bogus 0 g reading)
  • Stall watchdog: a printer that stops making progress raises an alarm instead of silently burning the night
  • Smart routing: machines group into model pools; idle siblings pull work from busy ones; a preferred location steers the pick — routing never starves a printer
  • Deadline feasibility: before you promise a date — "fits", "needs ~N machines running non-stop", or "even the whole fleet can't make it"
  • The run sheet: per-machine loading plans — which roll into which slot, in what print order, with roll carry-over between plates; a roll too small for a plate stays sealed

Kit & batch jobs

One customer job. Many plates. Many machines.

A 10-piece kit = 8 plates across 5 files: add a whole folder of sliced plates as lines in one click, pick a smart machine per plate — or let PrintLan choose by what's actually loaded — and the plates fan out in parallel. A live "plates done" chip tracks the job, and kit jobs only close when you close them: the software counts, it never decides a kit is done.

PrintLan's kit mode on an order dialog: one line per sliced plate file with copies per line, each pinned to the model it was sliced for, live per-line status — printing, waiting, done — and an 'add a whole folder as lines' picker.
Kit mode — the runner prints the plates automatically; rows without a file become manual checklists you tick by hand
The PrintLan dashboard showing the welcome-back card: '2 finished while you were away', each print one tap from claimed to its order, filed to stock, or kept — with machines that finished on their own confirming their finish.
The welcome-back report — everything that finished while you were away, each print one tap from order, stock, scrap or "mine"

Self-healing network

Printers that reconnect themselves

Click Scan and PrintLan finds every printer on the network — including Bambus, which don't advertise like the others — identifies their models automatically, and adds a whole shelf of machines in a couple of clicks.

The party trick, now for every brand: printers get new IP addresses when they power-cycle. PrintLan notices the machine went missing, scans the network, recognizes it — Bambus by the serial number embedded in their security certificate, Klipper machines by MAC address — re-points it and reconnects automatically, usually within a couple of minutes. A manual reconcile now button is there for the impatient.

  • Bambu: serial-from-certificate matching — you never type a serial
  • Klipper: recognized by MAC address and re-found anywhere on the subnet
  • Reboots, Wi-Fi drops, changed addresses — machines reconnect on their own
  • Unreachable machines are checked less often — a dead printer never slows the live ones
PrintLan's Scan network dialog: eleven devices discovered on the local network with brand and model badges — Bambu and Klipper — quick-add buttons, green 'added' confirmations and an 'Add all 3 new' action.
One click of Scan — eleven devices found, models detected automatically, three new machines ready to add

Cameras for every brand

Watch the whole farm — no cloud in the middle

Every printer's camera in the same dashboard: Bambu X1-series live streams, A1/P1 chamber cameras (we implemented Bambu's undocumented camera protocol directly — no ffmpeg needed on A1/P1), Snapmaker and Qidi webcams.

The camera wall in PrintLan: ten live printer feeds — Bambu, Qidi and Snapmaker cameras — each tile labeled with the printer's name and printing status, streaming over the local network.
The camera wall — ten live feeds over LAN, one shared stream per printer. Streams only run while you're looking.

Streams only when you look

Cameras stream only while you're watching, and one polite shared stream per printer means adding viewers never multiplies the load on weak printer electronics.

Honest offline tiles

A dead camera shows an honest "camera offline" tile instead of spinning forever. PrintLan keeps Snapmaker U1 camera sessions alive automatically — a stock-firmware quirk nobody else handles.

One footnote, no fine print

X1-series cameras need ffmpeg installed once — one winget command, and the app tells you exactly which. A1/P1 cameras and all Klipper-brand cameras need nothing extra.

PrintLan's plate view of a live Qidi Plus 4 print: a map of 25 numbered objects on the bed with a per-object list, each row showing a Waiting status and a Skip button so a failing part can be excluded mid-print while the rest finish.
Plate view on a live Qidi Plus 4 — 25 objects on one bed. Skip the failing one; the rest finish.

Mid-print control

Catch problems at the plate, not at the trash bin

Pause, resume or cancel from any card or the console. A true emergency stop — hold-to-confirm, so it can't fire by accident.

  • Live plate view: every object on the bed as a map — exclude a failing object and let the rest finish
  • Per-heater targets with PLA / PETG / ABS presets
  • Jog, home, speed and fan controls
  • Filament-runout detection with alarms

The business layer

A print log that runs your business

Other tools watch printers. PrintLan tracks the shop: every print is logged automatically with duration, grams, estimated vs actual time, status — and cost in real dollars. Even prints started at the printer, or ones that ran while your PC was asleep, are recovered from the printers' own job history.

Print log & costs

CSV export
PrintLan's print log: success rate, print count, filament used, machine hours and spend for the last 30 days, a month-by-month ledger showing runs, done, failed, cancelled, filament, hours and cost, plus per-printer time-accuracy and failure hot-spot tables.
The ledger view — success rate, filament, machine hours, spend, month by month
PrintLan's print log rows with photo timelines: each run keeps snapshots from first layer, 25, 50, 75 percent and print end, shown as a strip of thumbnails beside the printer, duration, grams, cost and status — with Good and Reject buttons on every row.
Snapshot timelines — every run keeps its photos: first layer, 25/50/75% and end, with Good/Reject on the row
PrintLan's failure and time-accuracy tables: printer time accuracy with honest sample sizes like 9 of 28, and failure hot spots listing the files and machines that fail the most with per-printer success rates.
Time accuracy & failure hot spots — estimates that learn from real prints, with sample sizes shown honestly
  • Filter by month, several months or the whole year — with your Good/Reject verdict on every run
  • One-click CSV export — your print costs, organized for taxes
  • The welcome-back report: come back to one card — everything that finished while you were away, each print one tap from claimed to its order, filed to stock, or scrapped
  • Honest corrections — settle a run the firmware called cancelled with a "✓ it printed fine", so the log reconciles instead of lying
  • Photos captured automatically at first layer, 25/50/75% and end — click any run and see exactly what happened
  • Direct-to-order tagging: runs link to the customer job they belong to, even one-off reprints
  • Estimates that learn: per printer and per material, from the machine's own measured print time — with the accuracy table showing its sample size, not a mystery number

Quotes that price like a shop

CRM
PrintLan's new-quote dialog with its built-in cost calculator: line items with quantities, one-click prefills for common parts like phone stands and enclosures, material weight and filament price per kilogram, print time and machine rate, post-processing minutes, labor, waste percentage, setup fee, profit margin and tax.
The real quote calculator — material, machine time, labor, waste, setup and margin, priced per part
  • Customers with full order & quote history
  • One-click quote-to-order, printable documents with your business info
  • Order deadlines sorted by urgency
  • The job drawer: click any job for its whole story — plates, every print run with its photos, real vs estimated time, the "charged vs cost" line — plus re-open, edit, and "…and N more like this" to pull in untagged prints
  • Customer packs: one click exports a zip of every evidence photo for an order plus a spec sheet — send the customer proof, not promises

Maintenance that schedules itself

True hours
  • Per-model service catalogs built from the manufacturers' own manuals — tasks trigger on hours or calendar days, whichever comes first
  • Every card shows its next task: "next: Z lead screws — clean + grease — in 130 h"
  • Guided service checklists with model-specific safety warnings — never grease the carbon rods, torque to spec
  • Hour meters are read from the printers' true lifetime counters — they survive power-offs
  • Overdue machines raise alarms
  • Add your own custom tasks per model — hour- or day-based, right in Settings

Money reports — profit, activity & the scrap pile

CSV export
PrintLan's activity view: a bar chart of prints per month with green done and red failed, a by-month ledger with runs, done, failed, cancelled, filament, hours and spend, plus printer time accuracy and failure hot spots with per-printer success rates.
Activity — prints per month (green done, red failed), the month ledger and failure hot spots with success rates
PrintLan's utilization view: a by-printer table for the previous 30 days showing runs, done, failed, hours, filament, spend and an orange utilization bar comparing each machine's share of the busiest machine's print hours, with a problem-files line above.
Utilization — what each machine ran: hours, filament, spend and share of the busiest machine's hours
Honest waste math: a print cancelled at 90% isn't 100% waste — filament is prorated by how far the print actually got, and PC-away interrupts are reported separately, not counted as waste.
  • Profit by order, by customer and by month — internal cost vs revenue with margin
  • Click any number, see the runs behind it: machine and customer rows unfold into their exact scrap and production runs — one definition of scrap everywhere, every table labeled with its date window
  • Activity: prints per month with done vs failed, plus failure hot spots and per-printer success rates
  • Utilization: what each machine ran — hours, filament, spend, and share of the busiest machine's hours
  • The scrap-pile report: the real dollar cost of failed prints, per printer, per file, per month
  • Per-printer revenue attribution and a worst-runs drill-down for the expensive lessons
  • Stock production shown on its own line; everything exports to CSV for taxes

Inventory — supplies, spools and finished goods

OCR import
PrintLan's filament inventory table: each spool listed with its color chip, brand and name, PLA material tag, remaining grams with a progress bar, and cost per spool.
The filament tab — every spool's color, remaining grams and cost at a glance
PrintLan's bulk-add dialog: a pasted Amazon order parsed into four spool rows with brand, material, detected color, grams and cost — ready to import with one click.
Bulk add: a pasted Amazon order becomes importable spool rows — colors detected, everything editable
PrintLan's slot view of a printer's filament box: each slot showing the roll that's loaded with its color and remaining grams, and load or unload events asking for a one-tap confirm so the slot tracking stays true.
Load/unload tracking — pull a roll or add one, confirm it in one tap, and the slot truth stays honest
  • Three tabs: Supplies (nozzles, plates — what you buy), Finished goods (what you sell) and Filament (what you print with)
  • Finished goods: pieces per plate — a plate of 20 bees is 20 sellable pieces — sale price each, and a live shelf-value strip (on hand, worth, cost, margin)
  • Cost to make fills itself in from the print's real tracked filament + machine time, divided by piece count — batch calculator in the edit dialog for your own numbers
  • Finished-parts intake: unclaimed prints wait on a list — send each to an order, to stock, to scrap, or keep it; batch sweeps clear a whole shelf
  • Filament: bulk-import by pasting an Amazon order or dropping screenshots of it (Windows built-in OCR), colors detected from the product photos
  • Finished prints deduct grams from the right spool automatically — per tool, per color — and if a deduction was missed while the PC was away, the next reconciliation tops it up; low-stock alerts before you run dry mid-order
  • The shopping list: a group-level "have / need" per brand + material + color — 3 kg of a color counts every roll on the shelf and in the machines, so one stale 66 g partial never shames you into a second kilo
  • Load/unload confirms: swap a roll and PrintLan asks for a one-tap confirm, so "what's in which slot" stays true — including tool changes mid-farm

Alerts that actually reach you

Printer offline, firmware error codes decoded to plain meaning, structured machine exceptions, filament runout, stalls, missed prints, maintenance due — and machines paused too long get re-warned at 15 min, 30 min, then hourly. Pushed to your own Discord or self-hosted ntfy server. No cloud middleman.

Failed prints attach the evidence: the push carries the failure photo — "Print FAILED on Qidi Max 4 — order #104 at 43%, ran 96 min", picture included — so 2 AM failures are a glance, not a mystery. And the feed respects your attention: a printer flapping offline all night is one incident row with a hit counter, not forty alarms, with category chips (machines / print / spools / system) to keep it scannable.

Built farm-first

The boring engineering is the feature

Every detail below exists because a 14-printer farm with customer orders — including overnight batches and multi-machine kit jobs — demanded it.

Files library with a brain

Upload files or link folders — they index themselves: slice into the folder and the file appears ready to print within a minute, metadata, colors and thumbnail included. Search by color, duplicate detection, collections, and an "On printers" view with pull-back — download the G-codes sitting on any machine. And before anything ships, Close enough — a final checker with the last word before a file goes to the machine.

PrintLan's Files library: a grid of sliced files with thumbnails, filament color swatches, sizes and LINKED badges; the sidebar offers Favorites, Ready to print, Duplicates and On-active-orders views, collections, linked folders like Downloads and Gcodes-after-slicing, plus On printers and Storage sections.
The Files library — every slice with thumbnail, colors and size; folders index themselves

Parallel polling

24 parallel workers — a 50-printer farm updates in about one printer's time.

Shared camera hubs

One stream per printer, fanned out to every viewer — weak boards are never hammered.

Offline re-probe scheduling

Dead machines are checked less often, so they never slow the live ones.

Honest states

Debounced status — one slow answer never flips a printer to "offline". If it doesn't know, it says so.

Under the hood

Direct machine protocols. No middleman.

PrintLan speaks to printers the way their own studio software does — Moonraker/Klipper HTTP APIs for Klipper machines, Bambu's local MQTT control channel, FTPS file transfer, RTSP and camera protocols for Bambus, SSDP + mDNS + network scanning for discovery. Field-verified against real printers, down to reading the printer model from the filename a slicer embeds in the G-code.

We reverse-engineer what vendors won't document — Bambu's A1/P1 camera protocol, their incremental status telemetry, the exact print-start payload their own studio sends, Snapmaker's firmware-gated calibration flags, and Qidi's filament-box state (which feeder slot is live lives in the firmware's saved variables — so "which slot is printing" is the machine's own truth). When a vendor changes something, PrintLan adapts — updates have shipped the same day.

  • Local-first storage: an SQLite database and your own folders
  • Backups are a zip you keep — automatic weekly, with a pre-upgrade snapshot. Restore is copying files back.
  • A watchdog process owns the app itself: if the server crashes or the PC reboots, PrintLan comes back on its own — and reconciles what the machines did in the meantime
  • Scales by architecture, not hardware — no server required

speaks natively

  • Moonraker / KlipperHTTP API · Klipper machines
  • Bambu MQTTlocal control channel
  • FTPSfile transfer
  • RTSP + chamber TLScameras
  • SSDP · mDNS · scandiscovery
  • SQLiteyour data, your files

"The same protocol layer Bambu Studio itself uses — reimplemented for the whole farm, and hardened on a live one."

Why PrintLan

Other tools watch your printers.
PrintLan runs your shop.

Offline, on your hardware, for every brand you own — with the business math included.

Capability PrintLan Cloud dashboards Vendor apps Per-printer web UIs DIY spreadsheets
Runs entirely on your PC — no cloud✓✗partly✓✓
No subscription, no account✓✗✓✓✓
Works during an internet outage✓✗partly✓✓
Mixed brands on one wall✓some brands✗✗manual
Customers, quotes & orders✓✗✗✗you build it
Real cost-per-print & tax export✓limited✗✗you build it
Failure photos & time learning✓✗✗✗✗
Material-safe dispatch — PLA never lands on PETG✓✗own brand✗✗
Overnight queue runner — plate holds, stall watchdog✓✗✗✗✗
Kit jobs fanned out across machines — closed by a human✓✗✗✗✗
Maintenance schedules from true lifetime hours✓✗✗✗✗
Profit & scrap-pile reports✓✗✗✗you build it
Self-healing for every brand (serial + MAC)✓✗✗✗✗

vs vendor apps — Bambu Handy/Studio, the Snapmaker toolchain and QIDI Studio each see only their own brand, and none has the business layer.

vs per-printer UIs — Mainsail and Fluidd are one-printer dashboards; PrintLan is the shop dashboard above them, with full single-machine control still a click away.

vs DIY — you'd spend months building material-safe dispatch, automatic filament deduction with self-heal, failure timelines, time learning, run-sheet spool planning and serial self-healing — and they're already hardened on a live farm.

Setup & requirements

From zero to fleet in an afternoon

One double-click to start — start.bat installs its own dependencies on first run. Honest requirements, no asterisks.

  1. 01

    Double-click to start

    A Windows 10/11 PC on the same network as the printers. First run installs everything it needs. Opens in Chrome, Edge or Firefox.

  2. 02

    Click Scan

    PrintLan finds every printer on the network and identifies the models automatically. Klipper machines (Snapmaker U1, Qidi, Voron…) need nothing special — optional API key supported. A whole shelf of machines joins in a couple of clicks.

  3. 03

    Bambus: one-time touchscreen setup

    Bambu's firmware requires you to opt in to local control, per printer:

    1. Settings → LAN-Only Mode: ON
    2. Settings → Developer Mode: ON (X1 and newer A1/P1 firmware)
    3. Note the LAN access code it shows — that's the printer's password
    4. A1/P1 cameras: enable the Video Stream toggle (firmware 1.05+)

    PrintLan reads the serial automatically from the printer's security certificate (you never type it), verifies the access code for you, and warns clearly if Developer Mode is off — a printer that uploads but never starts is the classic symptom, and the fix is the toggle above.

  4. 04

    Qidi (Plus 4 / Max 4)

    Works out of the box too — including per-slot tracking of the Qidi filament box (which feeder is live, straight from the machine's own state) and true lifetime hour meters.

Requirements

Windows 10/11 PC · printers and PC on the same local network — that's how it stays cloud-free.

Honest edges

Printers on a different subnet than your PC will show offline — a network fact, not a bug. Your PC is the brain today, so it stays on; a Raspberry Pi appliance is on the roadmap.

The one trade-off

LAN-Only Mode is Bambu's own cloud opt-out: with it on, Bambu's cloud apps (like Bambu Handy) can no longer reach that printer. That's the point — everything local, PrintLan included, keeps working.

Roadmap

Shipping fast, in public

Shipped recently

  • Kit & batch jobs: folder-as-plates, parallel fan-out across machines, material-safe machine picks — kits close when a human closes them
  • The material safeguard: material-first slot matching on every send path
  • The welcome-back report, the run sheet, money drill-downs and deadline feasibility
  • Failure alerts with the photo attached (Discord/ntfy) · customer packs · the job drawer
  • Queue runner: scheduled starts, batch quantities, plate holds, stall watchdog, filament pre-flight, model pools + smart routing
  • Money reports: profit by order/customer/month, scrap-pile with honest waste math, CSV export
  • Maintenance catalogs with true lifetime hour meters, guided checklists and custom tasks
  • Finished-goods inventory: pieces per plate, shelf value, automatic cost-to-make; shopping list; finished-parts intake
  • Live cameras for every brand · multi-send with per-machine mapping
  • Self-healing for every brand — Bambu serial + Klipper MAC

In progress · next

  • Raspberry Pi appliance — always-on monitoring that survives the PC being away (in active development)
  • Capture-at-slice — attach your own photos to files when you slice them
  • Plate auto-dispatch — the runner learns multi-plate jobs end to end
  • Fleet analytics round two — trends for utilization, cost per printer and scrap over time

On the horizon

  • Smart plugs with real energy measurement → true $/hour
  • Etsy / Shopify order import
  • Community-firmware camera support (WebRTC live views)

Deliberately not planned: no cloud, no accounts, no telemetry. That's the product.

FAQ

Straight answers

No. It works with the internet unplugged — it only needs your local network. The only thing that can ever leave your network is an alert you explicitly enable (Discord or ntfy push); control and data never do.

Yes — A1, P1 and X1 series. You enable LAN-Only Mode and Developer Mode once on each printer's touchscreen (Bambu requires this for any third-party control), and PrintLan handles the rest, including auto-detecting serials and self-healing IP changes.

It guards against that: profile, tool-count, color and slot checks run before anything is sent — and material is never auto-changed. A PLA job can't silently land on a PETG spool, even in the same color; you can always override the color deliberately, but moving the material needs a human and a physical spool swap. Single sends and multi-machine sends alike — and you can rehearse the whole send in dry-run mode first.

That's what the queue runner is for: scheduled jobs, batch quantities with automatic re-queuing, plate holds until you clear them, a filament pre-flight check, and a stall watchdog that raises an alarm instead of failing silently. When you come back, the welcome-back report lists everything that finished while you were away.

The machine finishes on its own. When PrintLan returns, it recovers the print from the printer's own job history — duration, outcome, cost — settles it against the order, and flags anything it couldn't verify for a one-tap decision. Machines that confirm their own finishes (Bambu) are trusted automatically; the log never invents an outcome.

Yes — kit jobs. Add a folder of sliced plates as lines in one click, fan them out across machines in parallel (each plate lands on a machine whose loaded material and colors fit), watch the live plates-done count, and close the job yourself when the assembly is done — the software counts, it never decides a kit is finished.

Yes — filament spools deduct grams automatically as prints finish, and finished goods track pieces per plate, sale price, cost to make (from the print's real tracked filament and machine time) and total shelf value.

It stays in files on your PC — an SQLite database and your own folders. Backups are a zip you keep. Delete them and it's gone; nobody else ever had a copy.

Today, yes — PrintLan is the brain. An always-on Raspberry Pi appliance is on the roadmap. And prints that ran while the PC was off are recovered into the log automatically when it returns.

Really. The current production install runs Bambu X1Cs and A1s, Qidi Plus 4s and a Max 4, and six Snapmaker U1s side by side — 14 machines, including unattended overnight batches and multi-machine kit jobs.

Closed machines that aren't Bambu and don't run Klipper — for example Creality's older stock firmware, or a Prusa without Moonraker. If it's a Bambu Lab printer or Klipper-based (Snapmaker, Qidi, Voron, RatRig, Prusa with Moonraker…), PrintLan runs it.

Pricing isn't announced yet. The promise: one low, flat price for your whole shop — the same whether PrintLan connects 5 printers or 50. Never per-printer, never a subscription: the software runs on your hardware, so more machines cost it nothing. Join the list to hear it first.

Early access

Run your shop on your own terms

PrintLan is in daily production on a real 14-printer mixed farm — overnight batches and multi-machine kit jobs included — and we're opening it to a small group of print-farm operators. Every answer below goes straight to the roadmap — it decides what gets built next.

  • What you get: a build for your own fleet, a direct line to us, and your asks on the roadmap
  • What we ask: honest feedback — what works, what breaks, what's missing
  • What you'll need: a Windows 10/11 PC that stays on, printers on the same network, and day-to-day printer experience — early access includes one-time machine-side setup (like Bambu's LAN-Only Mode)
  • The deal: one low, flat price for the whole shop when it launches — same for 5 printers or 50, never per-printer

Prefer chat? Ask on Discord or email us.

Request early access

What brands are they? (check all that apply)
Are your printers on the same network (LAN) as the PC that would run PrintLan?

PrintLan is local-only by design, so printers and PC need to share your LAN.

What do you use to manage prints today? (optional — check all)
What matters most to you? (pick up to 3)
If we gave you the software, would you give honest feedback on how it's working for you?

Early access is built for people who run their printers day-to-day — feedback from real production is what shapes this tool.

One-time printer-side setup (like Bambu's LAN-Only Mode) — how comfortable are you with that?

no spam · no account · your answers go straight to us