-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Is your feature request related to a problem?
Currently, Real-Sim FIXS requires users to manually edit config.yaml files and run batch scripts from the command line. This creates a steep learning curve for non-developer users who want to set up and run simulations but are not comfortable with configuration files and terminal commands.
Describe the solution you'd like
Develop a simple graphical user interface (GUI) that allows users to:
- Configure simulation parameters (traffic simulator selection, IP/ports, sync modes, etc.)
- Select and manage test scenarios
- Start/stop simulations with visual feedback
- View basic simulation status and logs
- Save/load configuration files without manual YAML editing
The GUI should abstract away technical complexity while still providing access to key configuration options from config.yaml (SimulationSetup, ApplicationSetup, XilSetup, VirtualEnvironmentSetup sections).
Describe alternatives you've considered
- Web-based dashboard: Would require additional server component
- Configuration wizard scripts: Still command-line based, doesn't solve usability issue
- Documentation improvements: Helps but doesn't eliminate technical barrier
Environment (if feature is environment-specific)
- Python version: >= 3.8 (consistent with existing realsimdev conda environment)
- Platform: Windows (primary platform for Real-Sim FIXS)
Additional context
The GUI could be built using Python frameworks like:
- tkinter (built-in, lightweight)
- PyQt/PySide (more feature-rich)
- Dear PyGui (modern, GPU-accelerated)
Key integration points:
- Read/write config.yaml files using existing yaml-cpp or Python's PyYAML
- Launch executables (TrafficLayer.exe, controller apps) as subprocesses
- Monitor log files (TrafficLayer.err, DriverModelError.txt, etc.)
- Provide templates for common scenarios based on existing tests/ directory examples