×

INDI Library v2.0.6 is Released (02 Feb 2024)

Bi-monthly release with minor bug fixes and improvements

PyIndi - How to perform an async slew

  • Posts: 102
  • Thank you received: 13
Dear all,

Since a few month now, I am slowly, developping a virtual observatory with Py-Indi and other python opensource software, and I am really enjoying this. Especially the "mock" features of indi, ie, ccd/telescope/filterwheel, .. simulator, that allows me to do a lot of tests.

I am trying to setup the mount control class using following guidelines:
indilib.org/develop/developer-manual/101...s.html#h3-telescopes

My "workflow" for slewing to a target is the following:
setSwitch('ON_COORD_SET', 'TRACK') #to set the behaviour after slewing to target to track with sidereal speed. Synchronous call
Then
self.setNumber('EQUATORIAL_EOD_COORD', {'RA': coord.ra.hour, 'DEC': coord.dec.degree}) # in JNow format, synchronous call, but returns before mount really points to those coordinates
Then I wait (synchronous call) for the TARGET_EOD_COORD, as specified in the guidelines: Slew Target. Read Only property set once requested EQUATORIAL_EOD_COORD is accepted by driver.
self.getNumber('TARGET_EOD_COORD')

However, the returned TARGET_EOD_COORD is usually different from the EQUATORIAL_EOD_COORD I try to set (tested with telescope simulator).

Can someone give me some hint about why I experience this behaviour (is it the expected one) and if so, how should I proceed to get the exact time at which the telescope points to the desired coordinates ?

Thank you very much for your help, and thank you also for providing the python bindings, it really makes indi a powerfull tool.

Regards
The following user(s) said Thank You: Jasem Mutlaq
5 years 10 months ago #26032

Please Log in or Create an account to join the conversation.

Do not use TARGET_EOD_COORD, it's not meant for this purpose. It is to be used to know in advance the projected target of the mount in order to take any actions necessary (e.g. start moving the dome).

In your case, you are simply waiting for state transitions. i.e. Once the state of EQUATORIAL_EOD_COORD becomes IPS_BUSY then slew started, and once it changes from IPS_BUSY to IPS_OK (or IPS_ALERT in case of an error), then you're done!
The following user(s) said Thank You: dolguldur
5 years 10 months ago #26033

Please Log in or Create an account to join the conversation.

  • Posts: 102
  • Thank you received: 13
That was exactly the information I needed, thank you very much !
I am now going to learn a bit more about those IPS_[] states
5 years 10 months ago #26034

Please Log in or Create an account to join the conversation.

Time to create page: 0.228 seconds