Skip to content

fix: size eight-chip profile and waveform capacity - #61

Merged
kgofron merged 1 commit into
areaDetector:masterfrom
kgofron:fix/8chip-profile-capacity
Sep 29, 2026
Merged

kgofron merged 1 commit into
areaDetector:masterfrom
kgofron:fix/8chip-profile-capacity

Conversation

@kgofron

@kgofron kgofron commented Sep 29, 2026

Copy link
Copy Markdown
Member

Summary

  • Raise the TPX3 NDStats profile capacity from 512×512 to 1024×512.
  • Prevent the eight-chip horizontal cursor profile from truncating at pixel 512.
  • Set MASK_BPC_NELEMENTS=524288 to reserve complete 1024×512 record capacity for mask/BPC, PixelConfig-difference, and image-accumulation waveforms.
  • Remove the unused TPX3 NELMT startup setting.
  • Document the distinction between waveform capacity and qualified eight-chip mask/calibration support.
  • Document the existing rectangular-geometry limitation for the 4×2 layout.

No driver source, PV names, IOC databases, NDArray addresses, or Phoebus screens are changed.

Runtime qualification

SNS Phoebus testing with the 1024×512 two-quad detector passed:

  • full-width horizontal profile through pixel 1023;
  • 1024×512 accumulated, current-frame, and last-N image displays;
  • preview-histogram accumulation and autoscaling.

Eight-chip mask/BPC qualification remains pending:

  • the available quad BPC contains 262144 bytes rather than the required 524288;
  • rowsCols() currently derives a 128-pixel chip for the 4×2 layout, causing RefreshPixelConfig to expect 16384 rather than 65536 bytes per chip.

Rectangular mask geometry and deterministic two-quad calibration composition will be handled separately.

Validation

  • 346/346 deterministic C++ tests passed.
  • 3/3 dependency-report tests passed.
  • 11 implemented coordinate-map cases passed; five planned physical SpIDR 2×4 cases remain deferred.
  • 47/47 Phoebus BOB files parsed successfully as XML.
  • REUSE validation passed for 379/379 files.
  • git diff --check passed.

Hosted CI should confirm the default, AddressSanitizer, and UndefinedBehaviorSanitizer jobs.

@kgofron
kgofron merged commit 3cfe43a into areaDetector:master Sep 29, 2026
3 checks passed
@kgofron
kgofron deleted the fix/8chip-profile-capacity branch September 29, 2026 14:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant