re "Only Start if Guide Deviation <" feature
Wolfgang Reissenberger
sterne-jaeger at openfuture.de
Fri Aug 19 19:51:13 BST 2022
Voilà: https://invent.kde.org/education/kstars/-/issues/209 <https://invent.kde.org/education/kstars/-/issues/209>
@Alfred, Hy: feel free to comment.
Cheers
Wolfgang
> Am 19.08.2022 um 20:39 schrieb Wolfgang Reissenberger <sterne-jaeger at openfuture.de>:
>
> Albert, Hy,
> I took a first look at the checks for initial guide deviation. The outcome is the following:
>
> 1. Good news: IPState Capture::checkLightFramePendingTasks() is used before each frame capture start.
>
> 2. Bad news: even for the first capture in a sequence the check is for the initial guiding deviation is not always executed, for all other frames in a sequence it is never executed. The problem is this check step in checkLightFramesPendingTasks():
> // step 6: check guide deviation for non meridian flip stages if the initial guide limit is set.
> // Wait until the guide deviation is reported to be below the limit (@see setGuideDeviation(double, double)).
> if (m_State == CAPTURE_PROGRESS && m_GuideState == GUIDE_GUIDING && m_LimitsUI->startGuiderDriftS->isChecked())
> return IPS_BUSY;
>
> m_State == CAPTURE_CHANGING_FILTER for the first capture and m_State == CAPTURE_IMAGE_RECEIVED for subsequent frames.
>
> I’ll write a bug report.
>
> Cheers
> Wolfgang
>
> —
> Wolfgang Reissenberger
>
> www.sterne-jaeger.de <http://www.sterne-jaeger.de/>
> TSA-120 + FSQ-85 + epsilon-160 | Avalon Linear + M-zero | ASI 1600mm pro + 6200mm pro
>
>> Am 19.08.2022 um 03:07 schrieb Hy Murveit <murveit at gmail.com <mailto:murveit at gmail.com>>:
>>
>> Wolfgang,
>>
>> I don't think Alfred has it quite right, but here's my shot at what might be wrong.
>>
>> In order for the pre-capture guide check to be enforced, prepareActions[ACTION_GUIDER_DRIFT] needs to be set to false.
>> As far as I can tell, during capture execution it is only set to false in SequenceJobState::prepareLightFrameCapture in sequencejobstate.cpp line 50
>> I believe that prepareLightFrameCapture is only called at the start of a job, and not before each capture, since:
>> it is only called by SequenceJob::prepareCapture()
>> which is called only by Capture::preparePreCaptureActions()
>> which is called by both Capture::scriptFinished (I'm ignoring that, doesn't seem relevant) and Capture::prepareActiveJobStage2()
>> which is called by both Capture::scriptFinished (I'm ignoring that, doesn't seem relevant) and Capture::prepareActiveJobStage1()
>> which is only called by Capture::prepareJob
>> and from its title, prepareJob() sounds like it is only called at the start of a job, not each individual capture.
>>
>> Perhaps the bug is that there should be an else at this line:
>> https://invent.kde.org/education/kstars/-/blob/master/kstars/ekos/capture/sequencejobstate.cpp#L722 <https://invent.kde.org/education/kstars/-/blob/master/kstars/ekos/capture/sequencejobstate.cpp#L722>
>> e.g.
>> else prepareActions[ACTION_GUIDER_DRIFT] = false;
>>
>> Hy
>>
>> On Thu, Aug 18, 2022 at 3:32 PM amiga2000c at gmx.de <mailto:amiga2000c at gmx.de> <amiga2000c at gmx.de <mailto:amiga2000c at gmx.de>> wrote:
>>
>> Despite the fact that I have absolutely no clue about C++, I had a look
>> at the code. I think the relevant piece is "capture.cpp".
>>
>> A passage where 10 checks are being performed (6039-6121) before
>> "everything is ready for capturing light frames" cought my attention.
>>
>>
>> Step 6 is check guide deviation. Assuming guiding was suspended and the
>> last measured guiding deviation was below the limit, this check is passed.
>> Step 10 is check if guiding was suspended. If so, it is restarted and
>> according to the comment it is assumed that "everything is ready for
>> capturing light frames" then.
>>
>> IMO this is not the case. After resuming guiding, the "check guide
>> deviation" test must be initiated again and only if it is passed,
>> "everything is ready for capturing light frames", indeed.
>>
>> --
>>
>> In case what I wrote is complete rubbish, please excuse my clueless
>> comment and ignore it.
>>
>> Regards
>> Alfred
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kstars-devel/attachments/20220819/aa2da882/attachment-0001.htm>
More information about the Kstars-devel
mailing list