Month: May 2026

  • SpaghettiChef

    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.