# stormfunk/voron-2.4-cyber-brain- architecture

> Architecture diagram of the GitHub repository stormfunk/voron-2.4-cyber-brain-, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/stormfunk/voron-2.4-cyber-brain-
- Repository: https://github.com/stormfunk/voron-2.4-cyber-brain-

## Overview

This repository is primarily a Voron 2.4 Klipper configuration, with a substantial Grasshopper-based pen-plotting workspace alongside it. The printer workflow configures the machine, runs print-start preparation and adaptive meshing, then executes a print under remote monitoring. The plotter workflow imports or generates artwork, maps it to physical pen coordinates, previews the plan, and emits G-code. Printer capabilities are taken from the README; plotter wiring is limited to component comments and sampled source, so uncertain links are omitted.

Main entry points: [`printer.cfg`](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/printer.cfg) (Printer Config), [`plotter/software/plotter.gh`](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/plotter.gh) (Grasshopper Workspace), [`MACROs/print_start.cfg`](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/MACROs/print_start.cfg) (Print Start), [`plotter/software/nodes/place_component.py`](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/place_component.py) (Pen Placement)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_printer["Printer Runtime"]
  node_printercfg["Printer Config<br/>[printer.cfg]"]
  node_led["LED Effects<br/>[daylight_led.cfg]"]
  node_timelapse["Timelapse<br/>[timelapse.cfg]"]
  node_moonraker["Moonraker API<br/>[moonraker.conf]"]
  node_mainsail["Mainsail UI<br/>[mainsail.cfg]"]
  node_screen["Touch UI<br/>[KlipperScreen.conf]"]
  node_mobile["Mobile Integration<br/>[mobileraker.conf]"]
  node_webcam["Webcam Service<br/>[crowsnest.conf]"]
end

subgraph group_printops["Print Operations"]
  node_macros["Printer Macros<br/>[macros.cfg]"]
  node_start["Print Start<br/>[print_start.cfg]"]
  node_kamp["Adaptive Meshing"]
end

subgraph group_plotart["Plotter Artwork"]
  node_grasshopper["Grasshopper Workspace<br/>[plotter.gh]"]
  node_svg["SVG Import<br/>[svg_component.py]"]
  node_imageart["Image Processing"]
  node_font["Stroke Font<br/>[strokefont.py]"]
end

subgraph group_plotrun["Plotter Execution"]
  node_papercam["Paper Registration"]
  node_placement["Pen Placement<br/>[place_component.py]"]
  node_preview["Plan Preview"]
  node_gcode["G-code Emission<br/>[gcode_component.py]"]
  node_penmacros["Plotter Macros"]
  node_plotter{{"Plotter Hardware"}}
end

node_operator(("Operator"))
node_plotuser(("Plotter Designer"))

node_operator -->|"controls remotely"| node_mainsail
node_operator -->|"controls locally"| node_screen
node_mainsail -->|"uses API"| node_moonraker
node_mobile -.->|"integrates with"| node_moonraker
node_printercfg -->|"includes"| node_macros
node_macros -->|"invokes"| node_start
node_start -->|"runs adaptive mesh"| node_kamp
node_start -->|"prepares machine"| node_printercfg
node_printercfg -->|"configures lighting"| node_led
node_printercfg -->|"configures capture"| node_timelapse
node_webcam -.->|"streams video"| node_operator
node_plotuser -->|"designs plot"| node_grasshopper
node_grasshopper -->|"hosts component"| node_svg
node_grasshopper -->|"hosts components"| node_imageart
node_grasshopper -->|"uses glyphs"| node_font
node_papercam -->|"provides registration"| node_placement
node_placement -->|"supplies pen-space plan"| node_preview
node_placement -->|"supplies placed geometry"| node_gcode
node_preview -->|"shows plan"| node_plotuser
node_gcode -->|"emits plot commands"| node_penmacros
node_penmacros -->|"drives"| node_plotter

click node_printercfg "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/printer.cfg"
click node_macros "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/MACROs/macros.cfg"
click node_start "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/MACROs/print_start.cfg"
click node_kamp "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/KAMP"
click node_led "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/daylight_led.cfg"
click node_timelapse "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/timelapse.cfg"
click node_moonraker "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/moonraker.conf"
click node_mainsail "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/mainsail.cfg"
click node_screen "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/KlipperScreen.conf"
click node_mobile "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/mobileraker.conf"
click node_webcam "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/crowsnest.conf"
click node_grasshopper "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/plotter.gh"
click node_svg "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/svg_component.py"
click node_imageart "https://github.com/stormfunk/voron-2.4-cyber-brain-/tree/main/plotter/software/nodes"
click node_font "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/strokefont.py"
click node_papercam "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/papercam_component.py"
click node_placement "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/place_component.py"
click node_preview "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/preview_component.py"
click node_gcode "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/gcode_component.py"
click node_penmacros "https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/pen_commit_macros.cfg"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_printercfg,node_led,node_timelapse,node_moonraker,node_mainsail,node_screen,node_mobile,node_webcam toneBlue
class node_macros,node_start,node_kamp toneAmber
class node_grasshopper,node_svg,node_imageart,node_font toneMint
class node_papercam,node_placement,node_preview,node_gcode,node_penmacros,node_plotter toneRose
class node_operator,node_plotuser toneIndigo
```

## Components

### Printer Runtime

- [Printer Config](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/printer.cfg): `printer.cfg`
- [LED Effects](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/daylight_led.cfg): `daylight_led.cfg`
- [Timelapse](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/timelapse.cfg): `timelapse.cfg`
- [Moonraker API](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/moonraker.conf): `moonraker.conf`
- [Mainsail UI](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/mainsail.cfg): `mainsail.cfg`
- [Touch UI](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/KlipperScreen.conf): `KlipperScreen.conf`
- [Mobile Integration](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/mobileraker.conf): `mobileraker.conf`
- [Webcam Service](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/crowsnest.conf): `crowsnest.conf`

### Print Operations

- [Printer Macros](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/MACROs/macros.cfg): `MACROs/macros.cfg`
- [Print Start](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/MACROs/print_start.cfg): `MACROs/print_start.cfg`
- [Adaptive Meshing](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/KAMP): `KAMP`

### Plotter Artwork

- [Grasshopper Workspace](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/plotter.gh): `plotter/software/plotter.gh`
- [SVG Import](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/svg_component.py): `plotter/software/nodes/svg_component.py`
- [Image Processing](https://github.com/stormfunk/voron-2.4-cyber-brain-/tree/main/plotter/software/nodes): `plotter/software/nodes`
- [Stroke Font](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/strokefont.py): `plotter/software/strokefont.py`

### Plotter Execution

- [Paper Registration](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/papercam_component.py): `plotter/software/nodes/papercam_component.py`
- [Pen Placement](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/place_component.py): `plotter/software/nodes/place_component.py`
- [Plan Preview](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/preview_component.py): `plotter/software/nodes/preview_component.py`
- [G-code Emission](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/nodes/gcode_component.py): `plotter/software/nodes/gcode_component.py`
- [Plotter Macros](https://github.com/stormfunk/voron-2.4-cyber-brain-/blob/main/plotter/software/pen_commit_macros.cfg): `plotter/software/pen_commit_macros.cfg`
- **Plotter Hardware**

### Other components

- **Operator**
- **Plotter Designer**

## Connections

- Operator → Mainsail UI: controls remotely
- Operator → Touch UI: controls locally
- Mainsail UI → Moonraker API: uses API
- Mobile Integration → Moonraker API: integrates with
- Printer Config → Printer Macros: includes
- Printer Macros → Print Start: invokes
- Print Start → Adaptive Meshing: runs adaptive mesh
- Print Start → Printer Config: prepares machine
- Printer Config → LED Effects: configures lighting
- Printer Config → Timelapse: configures capture
- Webcam Service → Operator: streams video
- Plotter Designer → Grasshopper Workspace: designs plot
- Grasshopper Workspace → SVG Import: hosts component
- Grasshopper Workspace → Image Processing: hosts components
- Grasshopper Workspace → Stroke Font: uses glyphs
- Paper Registration → Pen Placement: provides registration
- Pen Placement → Plan Preview: supplies pen-space plan
- Pen Placement → G-code Emission: supplies placed geometry
- Plan Preview → Plotter Designer: shows plan
- G-code Emission → Plotter Macros: emits plot commands
- Plotter Macros → Plotter Hardware: drives
