08db94bb6bba2e55b0d19dfa3889bf7fadf523a2
VersaGUI
Windows-Tray-App zur Konfiguration des VersaPad v2. Geschrieben in C# mit WinForms.
Diese GUI und das benachbarte Repository ../VersaMCU sind die gemeinsam
gepflegten Referenzen für Protokoll und Datenlayout. Andere GUI-Ports gehören
nicht zum aktuellen Scope.
Voraussetzungen
- Windows 10/11
- .NET SDK
- geflashte
VersaMCU-Firmware - Board per USB als CDC-Device verbunden
Starten
dotnet run --project src/VersaGUI.csproj
Was die App macht
- erkennt das Board automatisch per VID/PID
- oeffnet den CDC-COM-Port mit aktivem DTR
- liest beim Verbinden zuerst die Config und danach die Makros
- validiert Chunkzahl, eindeutige Indizes, Vollständigkeit, CRC und Feldwerte
- zeigt MX-Buttons und Encoder-Aktionen an
- schreibt Config und Makros getrennt, aber in einem UI-Vorgang auf das Board
Aktueller Datenstand
DeviceConfig
- Magic
0x56503203 - Version
3 740Byte- 3 Profile
- globale Helligkeit
- per-LED-Helligkeit
MacroTable
- 32 Slots
- 8 Steps pro Slot
512Byte
Uebertragungsformat
Es wird dasselbe 8-Byte-Protokoll wie in der Firmware verwendet.
Aktuelle Chunk-Zahlen:
- Config:
124 - Makros:
86
Speicherablauf:
CONFIG_BEGIN
CONFIG_DATA x124
CONFIG_COMMIT
wait for ACK/NACK
MACRO_BEGIN
MACRO_DATA x86
MACRO_COMMIT
wait for ACK/NACK
GUI-Funktionen
- HID-Key-Zuweisung inklusive Modifier
- Consumer-Keys
- Host-Commands
- Makros mit bis zu 8 Steps
- Profilwechsel als ActionType
- LED-Farbe, Animation und Periode pro MX-Button
- JSON Import/Export
Projektstruktur
VersaGUI/
|-- AGENTS.md
|-- doc/
|-- tests/VersaGUI.ContractTests/
`-- src/
|-- Program.cs
|-- TrayApp.cs
|-- SerialManager.cs
|-- DeviceConfig.cs
|-- ConfigForm.cs
|-- ActionDialog.cs
|-- ConfigJson.cs
`-- Protocol.cs
Build und Vertragsprüfungen
dotnet build src/VersaGUI.csproj --no-restore
dotnet run --project tests/VersaGUI.ContractTests/VersaGUI.ContractTests.csproj
Grenzen / Status
- die App ist Windows-only
- Host-Command-Events enthalten Command-ID, Key-/Encoder-ID und Richtung; ein sicheres Mapping auf konkrete Desktop-Aktionen ist noch nicht implementiert
Einstieg für Coding-LLMs
Repository-Anweisungen, gemeinsame Binärverträge und Verifikation stehen in
AGENTS.md.
Weiterfuehrende Doku
Description
Releases
1
Erster lauffähiger Entwurf
Latest
Languages
C#
100%