printhive/lib
dlawler489 93130967af Connect to a Bambu Lab printer, read-only
Settings → Printer takes the printer's address, serial number and access code
(the code stored as a secret, like the other tokens). "Save & test connection"
connects to the printer's own MQTT broker on port 8883, subscribes to its
reports, asks once for a full report, and listens for a few seconds — then
says what it heard: its state, and the filament in each AMS slot or on the
external spool holder, with how much is left where the printer knows.

Nothing sent to the printer changes what it is doing; the only thing published
is the request for a full report. If the printer is in cloud mode and treats
even that as a write, the test says it received nothing rather than failing
silently. The access code never leaves the server.

Adds mqtt as a runtime dependency — server.js now loads it at startup, so the
lockfile has to travel with this change.

Not verified against a real printer yet: the printer's ports answer on the
network, but no connection has been made with its credentials.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 20:15:15 +10:00
..
importers Don't retry MakerWorld's anti-bot refusal 2026-09-16 12:53:36 +10:00
ai.js Sturdier AI replies: format example, more retries, and errors that show the reply 2026-09-15 20:26:42 +10:00
aiRuns.js Name every model an AI run failed on, and let a finished run retry them 2026-09-16 14:08:08 +10:00
archives.js Browse archives, preview companion files, and view FBX/STEP/3DM/OBJ+MTL 2026-09-15 07:36:47 +10:00
archiveWorker.js Browse archives, preview companion files, and view FBX/STEP/3DM/OBJ+MTL 2026-09-15 07:36:47 +10:00
auth.js Open models in your slicer and drag files out 2026-09-15 09:15:37 +10:00
autotag.js AI tags and descriptions, search by meaning, and automatic tags 2026-09-15 11:12:58 +10:00
collectionWatch.js Let a watch download files as models arrive 2026-09-16 19:18:55 +10:00
converter.js Track the filament you have, and what each model asks for 2026-09-17 11:18:54 +10:00
db.js Stop tagging deadlocking, and retry a transaction that loses one 2026-09-16 14:56:28 +10:00
duplicates.js Add duplicate finder, trash, notes, and library search/filters 2026-09-14 23:06:09 +10:00
embeddingModel.js AI tags and descriptions, search by meaning, and automatic tags 2026-09-15 11:12:58 +10:00
embeddings.js AI tags and descriptions, search by meaning, and automatic tags 2026-09-15 11:12:58 +10:00
filaments.js Fill "any colour" slots last, not first 2026-09-17 13:27:58 +10:00
fileProcessor.js Browse archives, preview companion files, and view FBX/STEP/3DM/OBJ+MTL 2026-09-15 07:36:47 +10:00
fingerprint.js Track the filament you have, and what each model asks for 2026-09-17 11:18:54 +10:00
flaresolverr.js Give downloads a deadline instead of hanging for ever 2026-09-16 17:50:48 +10:00
handoff.js Open models in your slicer and drag files out 2026-09-15 09:15:37 +10:00
licenses.js Add per-license commercial-use rules (settings + auto-register) 2026-06-23 10:20:28 +10:00
mailer.js Add email/password auth + SMTP password resets 2026-06-22 22:33:11 +10:00
printer.js Connect to a Bambu Lab printer, read-only 2026-09-17 20:15:15 +10:00
python.js Stream-parse 3MF files so Bambu projects don't exhaust memory 2026-09-15 07:02:00 +10:00
store.js Let the required colours be edited on the model page 2026-09-17 13:15:48 +10:00
thumbnails.js Make thumbnails on the server in the background 2026-09-15 07:54:26 +10:00