> On May 22, 2024, at 14:50, Brad Templeton <
bra...@gmail.com> wrote:
>
> You may misunderstand, because I agree with this. The mounts should know how to seek along an indirect path to avoid blocked areas. Perhaps someday they will. But today, I believe many don't. (Could be wrong, haven't tried enough of them.) I also agree this is a layer violation, that it belongs in the mount. But facts on the ground are that it's not in some mounts and won't be soon. (I would be interested in which mounts do handle this correctly.) Some mounts view the limits as a way to say, "If the user mistakenly drives the mount into this area, protect them from their error causing a leg strike by halting all movement." They think the user has made a mistake trying to seek from one side of the Zenith to the other, and they have done their job stopping the user. The smarter thing is to correct the mistake and take an indirect path. But sadly, they are not that smart, and that leaves the being smart to the smarter higher level layers, or that it be nowhere.
I don't misunderstand you at all. In fact I've seen this movie *plenty* of times before. User wants something improved or fixed in a hardware product or its driver and, instead of engaging the vendor who is responsible for the product, the user instead petitions the people who seem most or immediately accessible, even if those people have nothing to do with the issue at hand or addressing it at their app's higher level in the stack would be inappropriate, if not extremely cumbersome or even impossible.
The problem here isn't that PHD2 is doing something wrong - it is in fact correctly doing everything it needs to do to perform a function that requires mount movement - a most pedestrian of operations that is slewing to a coordinate. The problem, as you descried it, is that the mount is violating the slew or tracking limits you have set up in it. The problem must be addressed at its source; not worked around in a blind and ham-fisted fashion higher up in the stack. OnStep must be made to honor these limits during slews and move the axes in the ways needed to avoid them. It should also promptly throw an error if the destination coordinate is within an off-limits area. Or, perhaps it can already do that, but an inadequate configuration prevents it.
I monitor the OnStep Groups.IO forum and I have not seen a post from a person of your name there concerning this topic, or any other topic, unless you happen to be posting there under a different email address and name. Even if that were the case, I can't seem to find a recent thread regarding this issue. So, I have to ask, have you /really/ asked the OnStep maintainers and its community about the issue of slews violating limits? Is your conclusion that nothing could ever be done for OnStep really born out of interactions with the OnStep maintainers? Have you made sure that your issue with limit violations isn't the result of a misconfiguration in the OnStep ASCOM driver or firmware? The OnStep ASCOM driver and the OnStepX firmware is also open source and available on github[1][2]. I do not see any issues posted there concerning this problem limit violations during slews.
> I mean, I can work around this. I can think about whether it might happen, and manually slew a path around the zenith with multiple targets. A computer can do that better and faster, but I could pull it off. The only reason I bring this up in PHD2 is it's the only tool I use that as part of regular use, wants to deliberately seek close to the meridian, which it thinks is the best place to calibrate. Most other tools spend their effort trying to avoid the meridian. That's probably why the mounts don't feel motivated to be smart about this. Their users are not trying to seek from things near the north meridian (where you are in the home position, or after a NINA 3 point polar align, or looking at targets in Ursa Major in galaxy season) to the south meridian for calibration. So this problem hasn't come up much, only for people who start their night calibrating PHD2.
The movement of the mount axes during a slew is not controlled in any way by user-facing apps such as PHD2. PHD2 gives the mount driver an RA+Declination coordinate to point at, and it's the mount's job to manage how it physically maneuvers the axes in order to point at the requested coordinate. If the mount, via its ASCOM driver or management UI, permits you to program in slew or tracking limits and it is not honoring them, that is a concern that must be addressed in by whoever is in charge of maintaining the mount driver and its management functions.
Additionally, there is no feature in the ASCOM mount/telescope API that even allows a driver to convey any limits to an up-stack app such as PHD2. So the argument that PHD2 should try to divine some way to maneuver around the limits doesn't hold water because there is no programmatic way it could make itself aware of any limits in the first place.
You really need to take this issue to the OnStep forum. The problem you describe can involve *any* user-facing ASCOM client app, and I doubt your plan includes going around to each. and. every. imaging and planetarium app out there to petition them to conjure up some way to do execute slews that magically avoid limits they are unable to know that even exist.
[1]
https://github.com/hjd1964/OnStep
[2]
https://github.com/hjd1964/OnStepX