Bravura - Military-Grade Edition
Solutions for common issues, error messages, and technical problems
---
```bash
python --version
# Should show Python 3.7.0 or higher
```
```python
import tkinter as tk
print("tkinter is available!")
```
```bash
cd "Bravura"
python quick_test.py
```
```bash
python final_validation.py
# Should show 6/6 tests passed
```
If any of these fail, see the specific sections below.
---
Symptoms:
Solutions:
```bash
ls -la # Linux/macOS
dir # Windows
# Should see gui_main.py in the current directory
```
```bash
cd "Bravura"
python demo_commercial.py
```
```python
import sys
sys.path.insert(0, "/path/to/Bravura")
from bravura import get_audio_analyzer_framework
AppClass = get_audio_analyzer_framework()
app = AppClass()
```
Symptoms:
Solutions:
Ubuntu/Debian:
sudo apt-get update
sudo apt-get install python3-tk
CentOS/RHEL/Fedora:
sudo yum install tkinter
# OR for newer versions:
sudo dnf install python3-tkinter
macOS (if using Homebrew Python):
brew install python-tk
Windows:
Symptoms:
Solutions:
```bash
chmod +x quick_test.py # Linux/macOS
```
- Right-click Command Prompt
- Choose "Run as administrator"
- Temporarily disable real-time protection
- Add toolkit folder to antivirus exclusions
---
Symptoms:
Solutions:
```python
# Add to your app initialization
try:
from ctypes import windll
windll.shcore.SetProcessDpiAwareness(1)
except:
pass
```
```python
app = AnalysisGUIFramework()
app.root.geometry("1200x800") # Width x Height
app.run()
```
```python
app.root.tk.call('tk', 'scaling', 2.0) # 2x scaling
```
- Right-click Python.exe
- Properties โ Compatibility
- Check "Override high DPI scaling behavior"
- Set to "Application"
Symptoms:
Solutions:
```bash
# Delete config file to reset
rm gui_config.json # Linux/macOS
del gui_config.json # Windows
# Then restart the application
```
```python
app.theme_manager.apply_theme("dark")
app.root.update_idletasks()
```
```python
# Remove any custom tkinter styling that might interfere
# Avoid using .configure() directly on themed widgets
```
Symptoms:
Solutions:
```bash
pip install pygame
```
```python
app.glowing_progress_bar.set_animation_speed(1.0) # Normal speed
```
```python
app.glowing_progress_bar.enable_rainbow_mode()
```
- Close other applications
- Check CPU/GPU usage
- Ensure adequate system resources
---
Symptoms:
Solutions:
```bash
# For NVIDIA GPUs
pip install GPUtil
# For system monitoring
pip install psutil
```
```bash
python validate_gpu.py
# Check output for specific issues
```
```python
from gpu_utils import detect_gpus
result = detect_gpus()
print(f"Detection result: {result}")
```
Windows:
```bash
# Test WMIC access
wmic path win32_VideoController get Name
```
Linux:
```bash
# Test lspci access
lspci | grep -i vga
lspci | grep -i display
```
macOS:
```bash
# Test system_profiler access
system_profiler SPDisplaysDataType
```
Symptoms:
Solutions:
- Download from nvidia.com
- Install latest drivers for your card
- Restart system after installation
```bash
pip install GPUtil
```
```bash
nvidia-smi
# Should show GPU information
```
```bash
nvcc --version
# If not found, CUDA toolkit may be needed
```
---
Symptoms:
Solutions:
```python
# Modify gui_config.json
{
"gpu": {
"auto_detect": false
}
}
```
```python
app = AnalysisGUIFramework(show_loading=True)
```
```python
# Set a specific theme instead of auto-detection
app.theme_manager.apply_theme("dark")
```
Symptoms:
Solutions:
```python
# Reduce log buffer size if needed
app.logger = TkTextRingLogger(app.log_text, max_chars=10000)
```
```python
import psutil
process = psutil.Process()
print(f"Memory usage: {process.memory_info().rss / 1024 / 1024:.1f} MB")
```
```python
app.log_text.delete(1.0, "end")
```
Symptoms:
Solutions:
```python
def my_task(emit, cancel):
for i in range(100):
if cancel.is_set():
return
# Do work here
emit("PROGRESS", percent=i)
app.worker.run(my_task, on_message=app._on_worker_message)
```
```python
# Avoid long operations on main thread
# Use time.sleep() in worker threads only
```
```python
# Messages should be handled quickly
def _on_worker_message(self, msg):
# Quick UI updates only
if msg.kind == "PROGRESS":
self._update_progress_with_eta(msg.payload["percent"])
```
---
Symptoms:
Solutions:
```bash
# Backup and delete config file
cp gui_config.json gui_config.json.backup
rm gui_config.json
# Application will create new default config
```
```python
import json
with open("gui_config.json", "r") as f:
try:
config = json.load(f)
print("Configuration is valid")
except json.JSONDecodeError as e:
print(f"JSON error: {e}")
```
```json
{
"theme": {
"default_theme": "dark"
},
"window": {
"stay_on_top": false
},
"progress": {
"rainbow_mode": true,
"animation_speed": 1.0
},
"gpu": {
"auto_detect": true
}
}
```
Symptoms:
Solutions:
```bash
ls -la gui_config.json # Check permissions
chmod 644 gui_config.json # Fix if needed
```
```bash
# Ensure user has write access to toolkit directory
```
```python
# Modify config path if needed
config_path = os.path.expanduser("~/analysis_gui_config.json")
```
---
Symptoms:
Solutions:
```python
print(f"Worker running: {app.worker.is_running()}")
```
```python
app.worker.cancel()
time.sleep(0.1) # Brief delay
# Then start new job
```
```python
app.worker = Worker(app.root)
```
Symptoms:
Solutions:
```python
# Always use emit() from worker threads
def my_job(emit, cancel):
emit("LOG", text="Message from worker") # Correct
# app._log_message("Direct call") # Wrong!
```
```python
# Use root.after() for delayed UI updates
app.root.after(100, lambda: app.status_var.set("Updated"))
```
```bash
python validate_wiring.py
# Should show "Thread Safety: PASS"
```
---
Add debug logging to track down issues:
import logging
logging.basicConfig(level=logging.DEBUG)
app = AnalysisGUIFramework()
app._log_message("Debug logging enabled")
app.run()
For comprehensive system check:
python final_validation.py
Expected output:
๐ฏ Overall: 6/6 tests passed
๐ MILITARY-GRADE VALIDATION SUCCESSFUL!
import platform
import sys
print(f"Python: {sys.version}")
print(f"Platform: {platform.platform()}")
print(f"Architecture: {platform.architecture()}")
import psutil
import time
def profile_memory():
process = psutil.Process()
memory_mb = process.memory_info().rss / 1024 / 1024
print(f"Memory usage: {memory_mb:.1f} MB")
# Call periodically to monitor
---
Contact support if you experience:
When contacting support, please provide:
```bash
python --version
python -c "import platform; print(platform.platform())"
```
```bash
cat VERSION.txt # Linux/macOS
type VERSION.txt # Windows
```
- Complete error text
- Stack traces if available
- Steps to reproduce
```bash
cat gui_config.json # Linux/macOS
type gui_config.json # Windows
```
For critical production issues (Enterprise customers):
---
If all else fails, perform a complete reset:
```bash
cp my_custom_app.py my_custom_app.py.backup
```
```bash
rm gui_config.json
rm -rf __pycache__ # Linux/macOS
rmdir /s __pycache__ # Windows
```
```bash
python quick_test.py
```
```bash
cp my_custom_app.py.backup my_custom_app.py
```
If configuration becomes corrupted:
# Create minimal working config
import json
config = {
"theme": {"default_theme": "dark"},
"window": {"stay_on_top": False},
"progress": {"rainbow_mode": True, "animation_speed": 1.0},
"gpu": {"auto_detect": True}
}
with open("gui_config.json", "w") as f:
json.dump(config, f, indent=2)
---
Last Updated: September 12, 2025
Version: 2.0.0 Military-Grade Edition
Next Review: October 12, 2025
This troubleshooting guide is continuously updated based on user reports and common issues. Report new problems to support@wigleystudios.com