Re: INDI or ASCOM Alpaca?


Michael Fulbright <mike.fulbright@...>
 

If newer firmwares support a better command for longer pulse requests then clearly you'd want to use it no?  At the moment that isn't even an option as it isn't documented

Having to send a command twice because the protocol is poorly designed is unfortunate I understand for older mounts.  It is not optimal but what can you do?

I've already set things up so for pre-V level firmwares there is a minimal functional legacy INDI driver.  I have no intention of working on it.  It is out there for anyone who wants to contribute. 

I understand AP doesn't have this much flexibility although I believe APCC does set a "you have to be this tall to ride" threshold for firmware level as well.  Which only makes sense.

I think you've swerved a bit into a specific example away from the larger picture.

How do you tell with protocol 'G' if the mount has been unparked and initialized?

How do you tell which firmware level the mount has?

How do you set a meridian delay?

Etc.

I've been through all this with the helpful feedback with Howard as there are things you need to do with the mount you simply can't with the available documentation.

I gave my feedback as you requested Ray. 

I'd really be interested in what Astro-Physics has to say.

Michael

On 4/27/19 3:24 PM, 'Ray Gralak (Groups)' groups3@... [ap-gto] wrote:
 

Hi Michael,

> Case in point - sending a "pulse guide" to the mount.

Okay, I think I can provide insight into this.

> The 'G' level documentation says the command is ':Mnxxx#' where 'n' is the direction
> and 'xxx' is the duration in milleseconds.

But that's not even the least common denominator. Rev D had no 'xxx'! :-) There are still some control boxes with that version in use. What's a driver author to do about that? :-)

> For longer pulses you have to do a convoluted sequence for changing the mount move
> speed to guide, then initiate and time a mount move and then terminate the move.

Convoluted? Dictionary Definition: "Extremely complex and difficult to follow".

Here are the steps:

1. Set Guide Speed
2. Start move and timer
3. When timer event occurs, send "stop move" twice.

The above is what the ASCOM driver does for early mounts and long duration moves.

BTW, a "Stop move" is sent twice in case the first stop failed. Pretty simple fail safe, right? It's worked for many years in the ASCOM driver.

That said, the above logic requires very basic programming skills so I am not sure why you think it is "convoluted"? Besides Astro-Physics didn't even invent that protocol. It is the generic Meade protocol.

> To make it more fun there are apparently no return codes for any of the steps you have to do nor
> a way to verify the mount is at the guide speed before you move it.

That's why you always change the speed and start the move right after each other. Regarding "no responses", that's the Meade protocol. But it has worked fine for 20 years.

> So on the off chance the change rate command failed you might move the mount for
> 2500ms at slew speed, for example.

I've not seen evidence of that happening, but you could send the "change rate" command twice. Also, you can send the change rate command followed by the start move all in one string. This virtually guarantees that if the rate is not accepted neither will the start of the move.

> Hopefully there has been progress in the protocol design so you can do this with a saner
> atomic operation.

Even if there was a complete redesign of the command protocol you can't expect the thousands of existing mounts with older control boxes to all upgrade! So, you *still* have to make due with all versions of the protocol.

And even Rev D, with simple start/stop moves, can be made to autoguide well with just a few common sense rules when sending commands to the mount. Can someone break that? Sure, but if you are the only driver/software talking to the mount you have control over what is sent so that shouldn't happen.

-Ray Gralak
Author of APCC (Astro-Physics Command Center): http://www.astro-physics.com/index.htm?products/accessories/software/apcc/apcc
Author of PEMPro V3: https://www.ccdware.com
Author of Astro-Physics V2 ASCOM Driver: https://www.siriusimaging.com/apdriver

> -----Original Message-----
> From: ap-gto@... [mailto:ap-gto@...]
> Sent: Saturday, April 27, 2019 11:48 AM
> To: ap-gto@...
> Subject: Re: [ap-gto] INDI or ASCOM Alpaca?
>
>
>
> 1.
>
> I think this is just good practice to provide documentation for high end devices. This used to be the default but in
> recent years more and more rare.
>
> I imagine most developers would take their chances on having _any_ information compared to the decade+ old
> protocol documentation that currently exists.
>
> Well they would except the protocol documentation doesn't seem to even exist any more - the two links a web
> search turns up:
>
> http://astro-physics.com/tech_support/mounts/protocol-G.pdf
>
> http://astro-physics.com/tech_support/mounts/command_lang.htm
>
> both give 404 errors.
>
> Fortunately I have a copied safely stored away and the date of the document is "Text modified: 07-04-06".
>
> Case in point - sending a "pulse guide" to the mount.
>
> The 'G' level documentation says the command is ':Mnxxx#' where 'n' is the direction and 'xxx' is the duration in
> milleseconds.
>
> For longer pulses you have to do a convoluted sequence for changing the mount move speed to guide, then initiate
> and time a mount move and then terminate the move.
>
> To make it more fun there are apparently no return codes for any of the steps you have to do nor a way to verify the
> mount is at the guide speed before you move it
>
> So on the off chance the change rate command failed you might move the mount for 2500ms at slew speed, for
> example.
>
> Hopefully there has been progress in the protocol design so you can do this with a saner atomic operation.
>
> I found by experimenting my 'V' level CP4 will actually accept up to 9999ms for a guide request but since this is not
> documented I am not going to release code to the public with it coded that way.
>
> I could ask Howard and he could confirm it but that doesn't really help the AP community as now the info is available
> but obfuscated in source code somewhere.
>
> Having adequate and up to date documentation should be the minimum hurdle when producing high end equipment.
> I would venture most low end mounts have better documentation available. I know the Explore Scientific PMC-Eight
> INDI driver I helped with gives documentation for the entire (admitted very simple) protocol API to developers.
>
> I believe it would be possible to make parts of the protocol required for decent operation of the mount available
> without spilling the secret sauce or undermining sales of APCC.
>
> 2.
>
> Here we get into the 'non-Windows' crowd which is statistically a minority across the general public and therefore
> more difficult to make a business case for. I hear rumors that most institutional users of AP mounts are
> predominately non-Windows but I have seen no firm studies to show this. Clearly AP would benefit in knowing this
> info as it could be more relevant to them than say someone who writes general purpose software.
>
> What I think is important is to have a minimum level of support for alternative environments. As long as the
> information is available for tools to be constructed by motivated individuals or business interests to construct a
> solution I don't know that I would expect AP to do more in terms of writing software on these environments.
>
> 3.
>
> I would just be happy with running these apps on alternative OS/architectures. The Raspberry Pi is such an under-
> powered platform I wouldn't waste time trying to get stuff running on it.
>
> I really am not sure developing and writing software for anything other than Windows is a good business case for
> AP. I would never suggest it as unless institutional users are demanding it I don't know demand is great enough.
>
> I suspect there are a large number of technically talented people with AP mount that could make some impressive
> things happen if given enough information. AP just needs to stoke the fire slightly.
>
> 4-6.
>
> I don't really know how to respond about Alpaca because as far as I know it is all theoretical.
>
> I don't personally see myself ever having one machine talk to another at the device control level over a network. It
> is an interesting theoretical possibility with INDI but for imaging I've found it too hindered by network traffic that I just
> run all things locally on a computer dedicated to the mount/camera at the mount.
>
> If Alpaca means 'ASCOM-like' drivers can be written so the source is more cross-platform compatible (you can
> recompile it on another arch) then that sounds like a good step. My understanding is the 'COM' part of ASCOM has
> been a bit of an albatross for awhile now that made this not possible.
>
> Final Thoughts
>
> I will fully admit I'm an outlier for these things. I enjoy developing code for my astro equipment as much as I enjoy
> using the equipment. If the software I have doesn't do it how I'd like it done I change it or write new code to do it.
>
> For this to be possible I just need enough knowledge of what is under the hood so I can tinker.
>
> But I suspect what I want for different reasons would actually help a wide swath of AP users who just want to avoid
> Microsoft in any way possible. That is not just a 'PC/Mac' thing any more - people can have many legitimate
> reasons to not deal with a particular computer vendor these days. I prefer to not get into whether a particular
> solution is 'best' or 'right' - it all comes back to personal choice on the user side and is it a legitimate business case
> on the supplier side.
>
> At least if the documentation is up to snuff the user has a recourse for a solution even if the supplier cannot justify
> constructing the solution from a business viability viewpoint.
>
> I appreciate AP considering the use cases of all users - hopefully we can move towards wider support of some
> fashion.
>
> Michael Fulbright
>
>
> On 4/27/19 1:07 PM, 'Ray Gralak (Groups)' groups3@... [ap-gto] wrote:
>
>
>
>
> So what do people hope will see happen with increased support for Alpaca or INDI?
>
> For example:
>
> 1. Just document the specs and let the LINUX and Mac developers figure it out?
>
> (I think developers may be disappointed with this because most of the cool features in APCC require a lot of
> work that will not be included in command specs and many features don't use any of the undocumented commands)
>
> 2. More MAC and LINUX applications?
>
> 3. Ability to run APCC and other apps on a Raspberry Pi 3 or other small low power computer?
>
> 4. Have the ability from ASCOM applications on Windows to talk to standalone Alpaca devices?
>
> 5. Have the ability from ASCOM applications on Windows to talk to devices on other computers running
> LINUX or Mac/OSX?
>
> 6. Other things?
>
> -Ray Gralak
> Author of APCC (Astro-Physics Command Center): http://www.astro-
> physics.com/index.htm?products/accessories/software/apcc/apcc
> Author of PEMPro V3: https://www.ccdware.com
> Author of Astro-Physics V2 ASCOM Driver: https://www.siriusimaging.com/apdriver
>
> > -----Original Message-----
> > From: ap-gto@... [mailto:ap-gto@...]
> > Sent: Friday, April 26, 2019 8:02 PM
> > To: ap-gto@...
> > Subject: Re: [ap-gto] INDI or ASCOM Alpaca?
> >
> >
> >
> > I agree, Michael, if the mount commands are fully documented, A-P can devote their resources to whatever
> they
> > see fit, and if something new pops up or A-P's choice doesn't fit their needs, then people will be able to
> write the
> > software that does what they need. Making information like that available fosters an environment where
> people can
> > create new innovative solutions. That's good for AP and the users.
> >
> > thomas
> >
> > On 4/27/2019 12:52 AM, Michael Fulbright mike.fulbright@... [ap-gto] wrote:
> >
> >
> >
> >
> > If sources are available for the Alpaca driver it would be a possible option.
> >
> > Alternately I would just prefer adequate documentation to allow users to implement solutions to meet their
> > use cases.
> >
> > Is Alpaca even something that is realistic in the next year or two?
> >
> > Michael Fulbright
> >
> >
> >
> >
> > On 4/26/19 8:38 PM, 'Ray Gralak (Groups)' groups3@... [ap-gto] wrote:
> >
> >
> >
> >
> > Hello all,
> >
> > Of those users wishing for a non-Windows support for your mount, which platform would you prefer
> > Astro-Physics to devote resources?
> >
> > INDI or ASCOM Alpaca?
> >
> > INDI has been around for some time and runs on LINUX and MAC OSX and Windows. ASCOM
> > Alpaca is still in the early stages of development. There are no significant applications that work on LINUX
> or MACs,
> > and there may not be for some time.
> >
> > However, ASCOM Alpaca is modular as opposed to INDI's monolithic design. Once drivers are
> > available Alpaca devices can be standalone (over the network or wifi) or on another computer. I believe
> INDI only
> > works on the computer it is running unless the device has a network interface.
> >
> > There may be other advantages or disadvantages to INDI or ASCOM Alpaca. Please contribute your
> > knowledge or preferences if you are interested in this topic.
> >
> > -Ray Gralak
> > Author of APCC (Astro-Physics Command Center): http://www.astro-
> > physics.com/index.htm?products/accessories/software/apcc/apcc
> > Author of PEMPro V3: https://www.ccdware.com
> > Author of Astro-Physics V2 ASCOM Driver: https://www.siriusimaging.com/apdriver
> >
> >
> >
> >
> >
> >
>
>
>
>
>


Join main@ap-gto.groups.io to automatically receive all group messages.