Skip to content

Controls

The control plane the beamline runs on, and the seam CORA's edge conducts over. Control plane: EPICS / bluesky.

The trigger hardware and the drive-electronics boxes. The motion controllers are recorded as families only: the controller boxes (model, protocol, axis count, serial, firmware, IP) are NOT in public open source. FXI has no IOC-config repo (only fxi-profile-collection + fxi-workflows); NSLS-II's per-beamline IOC inventory (nsls2.ioc_deploy Ansible device roles plus a -epics-containers repo) is ops-private. Investigated and confirmed: these need FXI staff or inventory access (DRIVE-1).

Name Family PV Key specs Replaceable Status
SampleMotionController MotionController Drives the 18-IDB sample-side EpicsMotors (XF:18IDB-OP*). Box model/protocol/IP unknown; FXI's IOC inventory is ops-private, not in public open source (DRIVE-1). confirm
OpticsMotionController MotionController Drives the 18-IDA optics EpicsMotors (XF:18IDA-OP*). Box identity unknown; not in public open source (DRIVE-1). confirm
Zebra TimingController XF:18ID-ES:1{Dev:Zebra1}: trigger source: PSO
Zebra FPGA position-capture box (class FXIZebra / ZebraPositionCapture). It reads the sample rotary as encoder enc1 (enc2 = sx, enc3 = sy) and emits position-compare pulses: PC_PULSE -> TTL1 -> camera, TTL2 -> fast shutter. This is the NSLS-II analog of 2-BM's Aerotech PSO; the gating is hardware, armed and configured by CORA over the ControlPort. A second box (Zebra2) is referenced in source but only Zebra1 is instantiated (ZEBRA-1). The register-overflow constant ZEBRA_OVERFLOW is a known wrap hazard (see cautions.md).
confirm