NSLS2 / NSLS2/hex-ob

Frame averaging: device-side squashing has an upstream dependency

Open
#13 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
2
Avg merge
4m
Merged PRs (30d)
3

Description

The frame-averaging leg (the plans/tomography/*_average.py plan family, device-side squashing on the kinetix object, and eventually the Perkin Elmer detector object, which glues continuous acquisition + squashing) all sit on exposure averaging/summing at the device-library layer.

That capability is being added upstream in the ophyd-async pull request numbered 1329 (process plugin to apply averaging + adjust exposures per collection). State as of 2026-08-12: open since mid-July, maintainer review feedback not yet addressed, CI red.

Until that lands, the averaging plans here can only average at the plan level (multiple exposures as separate frames), not on the device — worth knowing when comparing against the legacy pyepics behavior. Finishing the upstream work unblocks the kinetix squashing and the Perkin Elmer object.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ophyd-async pull request 1329, including its review and CI status, to understand the upstream averaging and exposure-adjustment dependency. Then inspect the plans/tomography/*_average.py plan family and the kinetix and Perkin Elmer detector work; the dependency is complete when device-side averaging supports those components.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.