
SpaghettiChef is a Java-based local runtime for monitoring and controlling 3D printers through a structured dashboard, REST API, persistence layer, and real serial communication.
It started with one USB-connected printer and is evolving into a local multi-printer control system with background monitoring, job execution, audit visibility, and real-printer diagnostics.
Why I built it
A 3D printer is not just a machine with a start button. Behind the scenes, there are serial commands, firmware responses, timeouts, SD-card transfers, failed uploads, and operator actions that should be traceable.
PrinterHub explores how this can be handled like a real system: monitored, persisted, observable, and controlled.
What it does
- Monitors real and simulated 3D printers.
- Reads printer state in the background without blocking the dashboard.
- Provides a local REST API and embedded dashboard.
- Stores printer configuration, events, jobs, and diagnostics in SQLite.
- Runs controlled actions such as temperature readout, homing, fan control, and SD-card print workflows.
- Tracks job history, execution steps, command responses, and failure details.
- Tests real Marlin-compatible serial communication, including guarded SD-card upload.
Real hardware, real problems
PrinterHub is tested against a physical Marlin-compatible 3D printer. That means the project does not only simulate the happy path. It deals with real serial behavior: slow transfers, resend requests, timeouts, checksum handling, and firmware-specific quirks.
Real printer / dashboard screenshot placeholder PrinterHub is developed against real printer communication, not only simulation.
Dashboard idea
The dashboard is built around two views: the printer farm as a whole, and the selected printer workspace. From there, the operator can inspect status, manage SD-card files, start controlled jobs, review history, and diagnose what happened.




Tech stack
Java 21, Maven, SQLite, REST API, embedded dashboard, serial communication, simulation modes, Jenkins CI, and Windows/Linux runtime administration scripts.
Project direction
The goal is to move from a single USB-connected printer toward a structured local printer runtime — and later toward multi-printer or multi-site orchestration.
SpaghettiChef is a practical system integration project: hardware communication, backend runtime design, persistence, dashboard UX, job execution, diagnostics, and DevOps in one project.

Leave a Reply