Skip to content

Code refactoring unifying capture initialization for new sequences and continuing of sequences

The capture module had two entry points for doing pre-capture checks: one when a new sequence is started and one for continuing to capture within a sequence. This creates several problems and unexpected behaviour. For example, focusing and dithering did only work for continuing a sequence.

With this diff, both starting a new sequence and continuing a sequence runs through the same check before starting to capture a new frame.

All changes are related to light frames only, capturing darks, bias and flat frames is (hopefully) untouched.

TEST PLAN This change touches the core of light frames capturing and requires intense testing. The tricky thing here is that the capture module handles by far more than pure frame capturing: it interacts with guiding and focusing, it starts dithering and interaction with the meridian flip, capturing may be started standalone or from the scheduler. At least the following needs to be tested:

General setup: mount is tracking, execute all tests for multiple Lum and 1xLRGB to ensure, that both in-sequence and new sequence.

Scenario 1: standalone capturing, no meridian flip

simple capture sequence with filter changes abort capturing capture with guiding and dithering capture with guiding, star lost --> capture should abort after timeout capture with focusing capture with focusing, no stars found during focusing --> capture should abort after timeout Scenario 2: standalone capturing, mount crossing the meridian

all tests of scenario 1 capture with aligning capture with aligning, no stars found during aligning --> capture should abort abort capture during meridian flip waiting --> meridian flip should start after capture aborted abort guiding during meridian flip waiting --> guiding should be restarted after meridian flip Scenario 3: capturing from a schedule

all tests of scenario 1, check for restart attempts when problems occured all tests of scenario 2, check for restart attempts when problems occured

Edited by Wolfgang Reissenberger

Merge request reports

Loading