# Teaching example library

Run from the OBS checkout with normal student Python; OBS remains in its own
visible console. The same files are staged under the compiled distribution's
isolated `student_python` directory. No package build or installation is needed.

For each command-line example, `--help` prints parameters without a connection.
Common flags are `--port`, `--userid` and `--camera`. Numeric units are explicit:
RA hours, declination degrees, sky offsets arcseconds, focus device steps,
exposure/cadence seconds, detector temperatures Celsius, and raw image values ADU.

All examples except inspect_observatory perform real equipment operations when
connected to real OBS. Replace illustrative coordinates, filters, temperatures,
positions and pixel coordinates for your experiment. Statistics/photometry examples
need NumPy and astropy.io.fits in student Python. CSV outputs go to the current
working directory unless `--output` is specified, and overwrite that named CSV.
These examples collect and explain diagnostics; they do not impose quality gates.

| Example | Purpose |
| --- | --- |
| [inspect_observatory](./inspect_observatory.md) | Read telemetry and discover equipment |
| [single_exposure](./single_exposure.md) | Acquire a first target |
| [colour_sequence](./colour_sequence.md) | Observe through multiple filters |
| [variable_star_series](./variable_star_series.md) | Measure a time series |
| [target_list](./target_list.md) | Observe an explicit CSV target list |
| [exposure_ladder](./exposure_ladder.md) | Explore signal and saturation |
| [dark_current_study](./dark_current_study.md) | Study dark signal at a selected temperature |
| [photon_transfer_curve](./photon_transfer_curve.md) | Estimate conversion gain from image pairs |
| [focus_curve](./focus_curve.md) | Sample image width against focus position |
| [adaptive_flats](./adaptive_flats.md) | Use measurements to choose the next exposure |
| [dithered_sequence](./dithered_sequence.md) | Acquire a cross-shaped dither sequence |
| [native_capture](./native_capture.md) | Capture video, planets or paired speckle |
| [rotator_flats](./rotator_flats.md) | Acquire the original rotator calibration sequence |

See the [API reference](../api.md) for processing acknowledgements, error/result
recovery, explicit image analysis, native capture semantics, and capability gaps.

