Provide a Linux desktop controller configuration app with evdev input, uinput remapping, profiles, calibration, and reconnect recovery. Co-authored-by: Cursor <cursoragent@cursor.com>
32 lines
1.2 KiB
Markdown
32 lines
1.2 KiB
Markdown
# Development Roadmap
|
|
|
|
## Completed foundations
|
|
|
|
- Tauri + React/TypeScript desktop shell, themes, navigation, and accessibility
|
|
contrast mode.
|
|
- Versioned JSON profiles with built-in templates and import/export.
|
|
- Generic, non-copyrighted controller visualization.
|
|
- Real evdev controller enumeration/capability probing plus a safe simulated
|
|
fallback for development without hardware.
|
|
- Pure, tested stick/trigger response transformation math.
|
|
|
|
## Next engineering milestones
|
|
|
|
1. Connect the reader to the transform pipeline and a managed uinput virtual
|
|
controller with safe cleanup on disconnect/shutdown.
|
|
2. Finish advanced mappings (macros, turbo timing, shift layers, hold/toggle
|
|
semantics) in the output pipeline.
|
|
3. Complete calibration sampling and custom curve editing.
|
|
4. Add executable-based profile switching and the support-bundle exporter.
|
|
5. Validate hardware behavior across USB, Bluetooth, and receiver modes; build
|
|
distributable Linux packages.
|
|
|
|
## Safety principles
|
|
|
|
- No firmware changes.
|
|
- No undocumented vendor commands.
|
|
- No root application process.
|
|
- Never create a virtual output device unless requested and permission checks
|
|
pass.
|
|
- Release virtual controls on disconnect and application shutdown.
|