How johnbaumb/klipperfleet works
KlipperFleet is a Mainsail-integrated web app for configuring, building, and flashing firmware across a printer’s MCU fleet. Users edit and save firmware profiles, register and assign devices, then run individual or batch build/flash actions; batch flashing checks device state, sequences downstream nodes before bridges, and streams progress to the UI. The backend also manages fleet/profile backups, device discovery and status, and service coordination. The graph reflects README-documented capabilities where source excerpts were unavailable; unsampled subsystem links are limited to the API entry point and supported product behavior.
Main entry points: main.py HTTP API and workflows · flash_manager.py Discovery and flasher · build_manager.py Firmware builder · fleet_manager.py Fleet registry
Components 14
Web interface
- Configurator and dashboard
ui/index.html
API orchestration
- HTTP API and workflows
backend/main.py
Firmware workflow
- Kconfig profile engine
backend/kconfig_manager.py - Firmware builder
backend/build_manager.py - Discovery and flasher
backend/flash_manager.py - Katapult protocol
backend/katapult_protocol.py
Fleet and state
- Fleet registry
backend/fleet_manager.py - Fleet and profiles
- Build artifacts
Printer integrations
- Moonraker
- Klipper or Kalico
- Printer MCUs
- Printer services
Other components
- Printer operator
Connections 18
- Printer operator → Configurator and dashboard: uses
- Configurator and dashboard → HTTP API and workflows: calls API
- HTTP API and workflows → Kconfig profile engine: loads and saves
- HTTP API and workflows → Firmware builder: builds profiles
- HTTP API and workflows → Discovery and flasher: discovers and flashes
- HTTP API and workflows → Fleet registry: manages fleet
- Kconfig profile engine → Klipper or Kalico: parses Kconfig
- Firmware builder → Klipper or Kalico: runs make
- Firmware builder → Build artifacts: writes firmware
- HTTP API and workflows → Build artifacts: imports and exports backups
- Fleet registry → Fleet and profiles: reads and writes
- HTTP API and workflows → Moonraker: queries status
- Discovery and flasher → Moonraker: queries printer state
- Discovery and flasher → Printer MCUs: discovers and flashes
- Discovery and flasher → Katapult protocol: uses protocol
- Katapult protocol → Printer MCUs: sends bootloader commands
- HTTP API and workflows → Printer services: stops and starts
- HTTP API and workflows → Fleet registry: updates flash versions