camera-interface¶
camerad is a detector controller server. It owns the connection to a detector controller, exposes
every detector function as a line-oriented ASCII command over TCP, and writes acquired frames to FITS
files and to shared memory.
It supports two controller families, selected at build time with -DCONTROLLER=:
archonSTA/Archon controllers, reached over TCP. This is the path most actively developed, and the only one with an emulator.
astrocamAstronomical Research Cameras (“Leach”) controllers, reached over a PCIe driver. Requires ARC API 3.6 and the Arc66PCIe driver.
A detector-specific instrument module is layered on top of the controller, also selected at build
time, with -DINSTRUMENT=. The instrument supplies the exposure modes, extra commands and FITS
keywords that a particular camera needs.
Clients can drive the server three ways: the text protocol over a socket, the camerad-socksend
command line tool, or the camera_interface Python module, which skips the server process entirely
and owns the camera in-process.
Start here¶
Build the software, run the server, and take a first exposure against the emulator.
Every command the server accepts, the ports it listens on, and what it returns.
Every key the .cfg file honours, including frame outputs and exposure time.
How the server, interface, controller and exposure modes fit together.