First upload, 18 controller version
This commit is contained in:
31
README.md
Normal file
31
README.md
Normal file
@@ -0,0 +1,31 @@
|
||||
# Infinity Mirror Control
|
||||
|
||||
V1 desktop control app for a 3x6 Infinity Mirror tile grid with a strong preview, XML mapping editing, presets, and an extensible output layer.
|
||||
|
||||
## Launch
|
||||
|
||||
```powershell
|
||||
python -m app.main
|
||||
```
|
||||
|
||||
The app will try to open the bundled sample mapping from `sample_data/infinity_mirror_mapping_clean.xml` on first launch.
|
||||
|
||||
## Architecture
|
||||
|
||||
- `app/config`: XML parsing, validation, and config models
|
||||
- `app/core`: shared types, colors, presets, and the render controller
|
||||
- `app/patterns`: pattern definitions and registry
|
||||
- `app/output`: preview and hardware output backends
|
||||
- `app/ui`: Qt widgets, settings editor, preview, and main window
|
||||
|
||||
## Notes
|
||||
|
||||
- Live output is disabled by default for a safe startup state.
|
||||
- The Art-Net backend is prepared as an extension seam and can be expanded later without refactoring the UI or pattern engine.
|
||||
- Unit tests cover config parsing, round-tripping, and core pattern rendering without requiring Qt.
|
||||
- The app prefers `PySide6`, but falls back to `PyQt5` automatically when the local Qt6 runtime is broken or unavailable.
|
||||
|
||||
## WLED MM
|
||||
|
||||
Flashing:
|
||||
- powershell -ExecutionPolicy Bypass -File .\flash_rfp_s3.ps1 -ComPort COM5
|
||||
Reference in New Issue
Block a user