Move focuser back to initial position when interrupted by a meridian flip
When a meridian flip is executed while focusing is running, focusing is aborted. But instead of moving back to the initial position, the focuser remains at that position where it was when the meridian flip aborted focusing.
To fix this, it was necessary to modify the state handling of the focuser. With this change, the state FOCUS_ABORTED
and FOCUS_FAILED
are separated. When the aborted state is reached, all focusing actions are stopped. In the failed case, the focuser is moved to its initial position and focusing is retried several times.
An interrupt by a meridian flip is special event similar to aborting, but with the exception that the focuser is moved to its initial position. As soon as the meridian flip is completed, its re-calibration actions will restart focusing.