Files
Infinity_Vis_Rust/README.md

2.5 KiB

Infinity Vis Rust

Production-oriented greenfield architecture for a low-latency LED control system that targets:

  • 6 ESP32-N16R8 nodes
  • 3 physical LED outputs per node
  • 106 LEDs per output
  • 18 logical panels and 1908 LEDs total

The repository is intentionally structured around hard separation of concerns:

  • crates/infinity_config: versioned project configuration and validation
  • crates/infinity_protocol: shared control and realtime protocol model
  • crates/infinity_host: host-side core library, simulation engine, scene/preset API, and CLI
  • crates/infinity_host_ui: native Rust desktop engineering GUI for mapping, diagnostics, and admin
  • firmware/esp32_node: ESP-IDF firmware skeleton with explicit driver abstraction
  • docs/: architecture, protocol, validation, deployment, testing, and acceptance artifacts
  • config/: example configuration files

Current software priority:

  • stable host-core first
  • shared host API for every surface
  • simulation and mock-first creative workflow
  • web UI as the primary creative surface
  • engineering GUI for technical operation
  • grandMA planned later as an external show-control adapter, not as the system core

The current baseline is intentionally strict about unresolved hardware facts. UART 6, UART 5, and UART 4 are treated as unvalidated labels until the real electrical meaning is confirmed.

Quick Start

  1. Install a current Rust toolchain.
  2. Review the open validation checklist in docs/validation_open_points.md.
  3. Start from config/project.example.toml.
  4. Inspect the software-first host snapshot with cargo run -p infinity_host -- snapshot --config config/project.example.toml.
  5. Start the versioned host API plus creative web UI with cargo run -p infinity_host_api -- --config config/project.example.toml --bind 127.0.0.1:9001 --runtime-state data/runtime_state.json.
  6. Open http://127.0.0.1:9001/ for the creative surface.
  7. Start the engineering GUI with cargo run -p infinity_host_ui.
  8. Use the host CLI to validate the project config before attempting activation.

Docs