Dark Library didn't have ISO and Gain controls, and these are needed when recording dark frames. There are added in this MR.
768dee8...
by
Wolfgang Reissenberger <email address hidden>
Bugfix for PHD2 guiding - restart guiding after lost star
Restarting guiding after a lost star event can lead to the situation that `Guide` switches to the calibration state while the `PHD2` remains in the stopped stage. If in this case guiding needs to be stopped again (e.g. there is no guiding star visible), `PHD2` does not send an abort event and `Guide` remains in the calibration state.
This is fixed by this change. Additionally, a dedicated dithering state is introduced for `PHD2` to separate calibration from dithering.
98ef723...
by
Wolfgang Reissenberger <email address hidden>
Capture state machine | introducing device adaptor
Next step extracting state handling from `Capture` into a dedicated state machine. In this step devices are managed by a dedicated device adaptor (successor of the command processor). With this refactoring it is no longer necessary to route device events from `Capture` through `SequenceJob` to the state machine, the device adaptor sends the events directly to the state machine.
Additionally, this change contains a bug fix for temperature handling.
b640574...
by
Wolfgang Reissenberger <email address hidden>
Bugfix for aborted jobs handling in the scheduler
This is a bug fix for the aborted job handling of the scheduler. Instead of waiting for the configured amount of time before restarting an aborted job, jobs start immediately.
This is due to a concurrency issue. Failure of alignment etc. is communicated in a separate thread as event to the scheduler. When the scheduler is running, it has a timer the triggers scheduler iterations. In order to communicate the delay, it is necessary to stop the scheduler loop, set the delay as timeout and restart the scheduler loop.
To test it, take a simple schedule where alignment is necessary and set the capture time in alignment to 0.1 sec so that alignment fails. Start the scheduler and check what happens if the scheduler aborts the job due to alignment failure.
Without this fix, if "Immediate" is selected, the aborted job immediately starts and not after the configured delay of typical 2min. In the case of "Queue", the scheduler shuts down the observatory.