Record initialHA after slew is complete. Without this, a premature meridian…
Concern Raised7c6e9e03a974

Authored by mutlaqja on Jan 5 2019, 6:22 AM.

Description

Record initialHA after slew is complete. Without this, a premature meridian flip can be issued when not required if the slew happens outside the Mount module

Details

wreissenberger raised a concern with this commit.Jan 5 2019, 7:58 PM
wreissenberger added a subscriber: wreissenberger.

The initialHA is set incorrect in case that the initial HA is east of meridian. See inline comments above.

/kstars/ekos/mount/mount.cpp
435–439

This has a side effect in case that ha is used later (for example when setting the initialHA)

492–495

Take value of sgn into account. If sgn == '-', then setInitialHA(-ha.Hours())

This commit now has outstanding concerns.Jan 5 2019, 7:58 PM
wreissenberger added inline comments.Jan 5 2019, 8:47 PM
/kstars/ekos/mount/mount.cpp
492–495

Additionally, currentTargetPosition needs to be set here as well. Otherwise, executeMeridianFlip() runs into a null pointer.

828–829

Not required here any more if set above.

Thanks for the notes. Can you submit a fix to these issues given the issues I raised before?

mutlaqja added inline comments.Jan 6 2019, 5:15 AM
/kstars/ekos/mount/mount.cpp
492–495

why? If initial HA is negative, should we record that?

828–829

so maybe currentTargetPosition should be named something else? lastTrackingPosition? or something of this sort?

OK, I already started to create the fix. But it is not that easy, unfortunately.

/kstars/ekos/mount/mount.cpp
828–829

Yes, makes sense.

Please visit https://phabricator.kde.org/D18020. This diff should fix the case.

Hint: the solution is not optimal, but it should work. I am planning a better solution that covers also the cases when no capturing is running. But this needs more rework.