- Migrated from websockets to aiohttp for unified HTTP/WebSocket server
- Added REST endpoints: /api/pattern, /api/parameters, /api/state, /api/tempo/reset
- Implemented color palette API with 8-slot system and selected colors
- First selected color (index 0) is used as primary RGB for patterns
- All operations now available via simple HTTP requests (no WebSocket needed)
- Added comprehensive documentation: FRONTEND_API.md, COLOR_PALETTE_API.md
- Added test scripts: test_rest_api.sh, test_color_patterns.py
- Updated test/test_control_server.py for new /ws WebSocket path
- Configuration persistence via lighting_config.json
- Pattern parameters (n1-n4, brightness, delay) controllable via API
- WebSocket still available at /ws for legacy support
- Add CONTROL_SERVER_HOST environment variable (default: 0.0.0.0)
- Server now binds to all interfaces by default for external access
- Update .env and .env.example with new host configuration
- Allows UI clients to connect from other machines on the network
- Add python-dotenv support to control_server.py and sound.py
- Load TRANSPORT from environment variable (default: spi)
- Load AUDIO_INPUT_DEVICE from environment variable (default: 7)
- Load all port configurations from environment variables
- Update .env.example with comprehensive configuration options
- Create .env file with sensible defaults for Pi
- Transport, sound device, and network settings now configurable via .env
- Set CONTROL_SERVER_URI to ws://10.42.0.1:8765 (wlan0 IP)
- Better default for remote connections from desktop
- Add comments for localhost and custom IP options
- Update test_control_server.py to use python-dotenv
- Read CONTROL_SERVER_URI from environment variable
- Create .env.example with configuration examples
- Test scripts now respect .env configuration for WebSocket URI