Based on OpenScan3
- Update initial setup procedure
- Basic FastAPI application structure setup (already done in app-main.py)
- Configure settings for different hardware setups (greenshield, blackshield, grblHAL)
- Set up error handling and logging system
- Implement Network security
- Use virtual environment
- Integrate ramdisk for faster temporary file handling
- Add hotspot mode
- Add wifi configuration & testing
- Add test for internet connectivity
- Review and update camera controllers (gphoto2, v4l2, picamera2)
- Implement unified camera interface
- Implement camera settings management
- Integrate Focus control system:
- Integrate software controlled focus
- Add mechanic focus through third motor
- Migrate motor controllers from old system (directly through GPIO)
- Add Motor controller through GRBLhal
- Integrate optional endstops
- Implement motor movement coordination
- Add tests for users
- Migrate Light controller (directly through GPIO)
- Add Light controller through GRBLhal
- Add tests for users
- Add fan controller (directly through GPIO)
- Add Fan controller through GRBLhal
- Add Temperature dependent fan control
- Add auto-exposure detection based on histogram
- Add auto-crop detection routine
- Add auto-depth detection
- Add Evaluation of object preparation (feature detection)
- Add scan templates/presets
- Migrate scanning process controller
- Implement proper scan state management
- Add scan progress tracking
- Add resume from failure point
- Implement pause/resume functionality
- Migrate different scanning patterns (Grid, Fibonacci, Spiral, Archimedes)
- Implement path optimization
- Add path visualization support
- Implement project creation and management
- Implement proper file structure for projects
- Add External drive for saving
- Add network drive for saving
- Add project metadata handling
- Add download project
- Add delete project
- Add delete all projects
- Add merge projects
- Add scan meta data (positions, focus, resolution, timestamps)
- Migrate cloud upload functionality
- Implement secure authentication
- Add progress tracking for uploads
- Implement download functionality
- Metashape
- Reality Capture
- 3DF Zephyr
- Meshroom
- Migrate system status monitoring
- Implement proper shutdown/reboot handlers
- Add system health checks
- Add system statistics
- Add Diskspace monitoring
- Add Diskspace warnings
- Implement update service
- Implement update versioning
- Add Change Log
- Add Server message service
- Add Samba client
- Add SSH on/off
- Set up unit testing infrastructure
- Add integration tests
- Implement hardware simulation for testing
- Add CI/CD pipeline
- API documentation
- System architecture documentation
- Hardware setup documentation
- User guide