Files
scanengine-3/README.md
T
Thomas Ales [M S E] fc43fbe4b0 Initial commit: merge nuescan, pymso, pybbd202, and pypewpewhops into scanengine-3
- Merged four separate hardware control projects into unified platform
- Created unified requirements.txt with all dependencies
- Added comprehensive .gitignore
- Added project overview README

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-16 20:11:31 -06:00

58 lines
1.7 KiB
Markdown

# scanengine-3
A unified scanning and instrumentation control platform combining multiple hardware control modules.
## Overview
scanengine-3 merges four previously separate projects into a single, cohesive platform:
- **nuescan**: SRAS scan planning and control software with PyQt6 GUI
- **pymso**: Tektronix oscilloscope control and data acquisition
- **pybbd202**: Thorlabs BBD203/MLS203 motor controller driver
- **pypewpewhops**: Coherent HOPS laser control via I2C
## Project Structure
```
scanengine-3/
├── nuescan/ # Main scan control application with GUI
├── pymso/ # Oscilloscope control module
├── pybbd202/ # Stage controller driver
├── pypewpewhops/ # Laser control module
├── requirements.txt # Unified dependencies
└── README.md # This file
```
## Installation
1. Create a virtual environment:
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
2. Install dependencies:
```bash
pip install -r requirements.txt
```
## Dependencies
- **PyQt6**: GUI framework for nuescan
- **pyserial**: Serial communication for hardware interfaces
- **pyvisa/pyvisa-py**: VISA instrument control for oscilloscopes
- **pyftdi**: FTDI device support for laser and stage controllers
## Usage
Refer to the README files in each subdirectory for specific usage instructions:
- `nuescan/README.md` - Main application usage
- `pymso/` - Oscilloscope control examples
- `pybbd202/README.md` - Stage controller documentation
- `pypewpewhops/README.md` - Laser control documentation
## License
Each module retains its original license. See individual subdirectories for license information.