Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

celestron-aux: initial support for slew limits #874

Merged
merged 1 commit into from
Dec 26, 2023

Conversation

ijessen
Copy link
Contributor

@ijessen ijessen commented Dec 21, 2023

The Evolution mount seems to be pretty robust to crashes (ask me how I know)- that said, it would be better not to tempt fate.

This PR implements initial slew limits. It's sufficient to prevent tracking, an incautious goto, or a manual slew from causing too much havoc. That said, it doesn't promise to prevent you from doing something stupid. For example, if the mount is already beyond a limit and you (or an automation script) command it to move even further into the no-go zone, it will (at least briefly) until the next polling period. A more robust solution that prevents all motion further into a no-go zone would be better, but this is enough to start.

Limits are set as angles relative to the index (i.e. startup position if no HC connected).

@knro
Copy link
Collaborator

knro commented Dec 24, 2023

Thank you, how would this affect the mount in different configurations?

  1. Alt-Az
  2. Alt-Az on an equatorial wedge
  3. GEM

@ijessen ijessen force-pushed the celestron-aux-limits branch from a816f1f to 6dafa66 Compare December 26, 2023 01:17
@ijessen
Copy link
Contributor Author

ijessen commented Dec 26, 2023

Conceptually, mount type shouldn't matter - axis limits are axis limits, regardless of the orientation of the axis. I purposely stayed away from relying on alignment for this. It's based solely on angle (i.e. encoder value).

I don't have access to a GEM mount, but have tested with az/alt and wedge.

Because Celestron encoder values are not absolute and can be (and are) reset, it's important to pay attention to component startup order and/or ensure the mount is appropriately leveled and north-aligned at start up.

Limits should be set with a reasonable buffer to any danger area. The limit is only checked on the polling rate (1 Hz by default) so there can be significant (few degrees) encroachment into the no-go zone if the scope is slewing at full speed.

@knro
Copy link
Collaborator

knro commented Dec 26, 2023

Great, thanks. Perhaps also add this to saveConfigItems(..) as well?

@ijessen
Copy link
Contributor Author

ijessen commented Dec 26, 2023

Great, thanks. Perhaps also add this to saveConfigItems(..) as well?

I did! But it was a force push after I had already opened the PR so if you weren't reviewing on GH maybe you need to pull again?

@knro
Copy link
Collaborator

knro commented Dec 26, 2023

I'll merge this and you can submit another PR for the saveConfigItems

@knro knro merged commit 4ddc7a0 into indilib:master Dec 26, 2023
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants