×

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

Bi-monthly release with minor bug fixes and improvements

Astro-Physics Experimental driver not working properly in KStars 3.4.2

  • Posts: 59
  • Thank you received: 19
Hello

I have a version of the lx200ap_experimental driver that works with GTOCP2 version D and GTOCP4.

The below listed procedure has been tested East of Greenwich and hence people West of it are specially invited to carry it out.

People with a GTOCP3 or with GTOPC2 version above D please contact me.

In order to simplify a test I attached the bash script cold_start_part1.sh which fetches, compiles and starts the indiserver/driver in $HOME/indi_cold_start/build and it works on x86_64 as well on RPis.

My repo is here: github.com/wildi/indi/tree/ap_park3


Either you create a local profile in Ekos or connect with KStars, Device Manager, Client localhost/7624.

As a rule of thumb, if anything does not follow your/my expectations, please stop. The Abort Motion, Abort button works :-) but it will not be necessary because during this test the mount will not be moved. It can be carried out indoors.

First thing the cold_start_part1.sh must work.

The procedure is independent of an (not) existing ParkData.xml or driver's config file.


1) Power on the mount and locate one of the markers at the RA circle and remember its position.
2) Start Ekos/INDI and connect
3) Tab Option turn on the logging
4) Tab Main Control, see

Connection: Connect (as usual)
Driver config: Read

The latter reads the dirver's config file and ParkData.xml before one can Unpark(ed)

5) Connection, Connect
6) Driver config, Read
7) Set Unpark From?, Park2, if not set so

eight) Set Park To?, Park2, if not set so

At this point, AP icon on KStars may be displayed at any location, ugly but unavoidable.

9) Press Parking, UnPark(ed) (only a sync happens, no movements)
10) see HA = -6:00:00, constant
RA : increasing every second
check if the RA circle marker is still at the same position

11) must see: AP icon exactly at az=90, alt=0, no movement
(During startup I stop tracking at the earliest possible moment)

12) Tab Site Management, check
Firmware: your firmware
ap sidereal time: is it correct within a few seconds with e.g. stellarium
AP UTC offset: your TZ offset including DST

The most import point is the sidereal time. If it is not correct, do not proceed.


13) Tab Motion Control, check your settings
in case file ~/.indi/AstroPhysics Experimental_config.xml
was available.
If it was not there: set your preferences followed by
Tab Option, Configuration, Save
14) The mount is still unparked:
Set Unpark From? to Last Parked
15) Tab Site Management, Park Options, Write Data
16) press Tab Main Control, Parking, Park(ed)
17) press Connection, Disconnect
18) check if the RA circle marker is still at the same position
19) kill the indiserver/driver

20) leave the power on

21) start ./indiserver ./indi_lx200ap_experimental
22) Connect with EKos/INDI
23) Connection, Connect
24) Driver config, Read
25) see
Unpark From? Last Parked
Park To? Park2
26) Check log window, see:

2020-07-27T16:01:22: [INFO] Driver's config 'Unpark From ?' is set
to 'Last Parked': will unpark from Alt=0.000000 Az=90.000000
2020-07-27T16:01:22: [INFO] Mount is parked

27) Press Parking, UnPark(ed)
28) see HA = -6:00:00, constant
RA : increasing every second
check if the RA circle marker is still at the same
position like at the very beginning

29) Press Parking, Park(ed)
30) press Connection, Disconnect
31) kill the indiserver/driver
32) Power down the mount

After I received (positive) feedback from people on the Western hemisphere I'll go on with the un-/park procedure and how to check if the meridian flip occurs at HA=0h +/- few seconds (typically the difference of AP and real sidereal time).

Those who ar used to see Unpark From? before connecting may ask why I changed that. In case no ParkData.xml is present or more likely the position therein is not valid an unpark from last_parked will surely fail. In addition I wanted to show a message in the log window where from the mount is actually unparking.

Kind regards, bye, wildi
The following user(s) said Thank You: Spartacus
Last edit: 3 years 7 months ago by Markus Wildi.
3 years 7 months ago #57477
Attachments:

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

  • Posts: 77
  • Thank you received: 16
This is excellent news! I have downloaded the "cold_start_part1.sh" script and will begin testing later today. I am in the Midwestern US and have a GTOCP3 with the latest V2 firmware. I will perform the procedure as documented in your post (my mount is currently still indoors) and follow with a report when completed. Thank you for your continued work on the driver!
3 years 7 months ago #57482

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

  • Posts: 77
  • Thank you received: 16
Hi Wildi,

I have completed the procedure you outlined in your post successfully with the expected results as you describe. I ran the test on a Raspberry Pi4 and had to run the "cold_start_part1.sh" script with sudo as it would not run properly unless I did (needed root permissions). As I progressed through your procedure I had to log in as root user (sudo su) at the point which the indi server had to be restarted for the later part of the test since /indi_cold_start/build/ directories were located inside the root user (/root on the Pi4) directory.

I stand ready to move on for further testing.

Thank you!
3 years 7 months ago #57494

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

  • Posts: 59
  • Thank you received: 19
Hello LinuxUser and Midwest Astronomer

thanks for your feedback ! The most important information for me was if the local sidereal time has been read back correctly.
LinuxUser, running INDI as root is not necessary - I usually run it under default UID pi.

The below listed procedure can be carried out indoors and it really moves the mount. For your convenience use the previously posted script to fetch, compile and run it.

Many other INDI mount drivers do not have the feature park to and unpark from and unpark immediately. Since unparking from a invalid park position is not the best idea I adapted the cold/warm start feature found in lx200ap.cpp (and removed the driver config read item). If there is no or an invalid ~/.indi/ParkData.xml one must perform a cold in all other cases a warm start. Only after that unparking is possible.

This driver is made for firmware versions D and V. I limited that artificially in order no tube hits the pier. Please contact me if you have a different version.

I'm happy to hear from you, kind regards, bye, wildi




0) power up the mount and bring it to park2 position (Az=90, Alt=0), mount points to the Eastern horizon on northern and southern hemispheres

1) Main Control
1.1) Connection Connect
1.2) Startup Cold
1.3) see Unpark From? and Park To? having the values Park2
1.4) Parking Unpark(ed)
1.5) see Hourangle Coords HA = -6, Dec = 0
1.6) see mount icon on KStars near the East point at Alt = 0

2) Site Managment check if AP sidereal time is correct against e.g. stellarium

Only if so proceed

3) KStars, select a star 5 deg above East point, goto, check if mount's movement was correct.

Only if so proceed

4) Main Control
4.1) Park To?, Park2 (even it is selected)

5) Site Managment
5.1) see Park Position AZ = 90, Alt = 0
5.2) Park Options, Write Data (park position can not be set while parked)

5) Main Control
6.1) Parking Park(ed)
6.1) Unpark From?, Last Parked

7) Options, Configuration, Save

8] Main Control, Connection, Disconnect

9) Kill and restart the indiserver/driver (the ount is still powered on)

At this point we have a valid ParkData.xml and the mount is at park 2 position.
A) Main Control
A.1) Connection Connect
A.2) see Unpark From? with value Park2
A.3) Startup Warm
A.4) see Unpark From? with value Last Parked
A.5) Unparking Unpark(ed)
A.6) Park To? Park3

B] Options, Configuration Save

C) Site Managment
C.1) see Park Position AZ = 0:06 northern hemisphere or southern AZ = 179:54, Alt = your latitude
C.2) Park Options, Write Data

D) Main Control
D.1) Parking, Park(ed)
D.2) Connection, disconnect (after mount parked)

D) Kill and restart the indiserver/driver (the mount is still powered on)


I) Main Control
I.1) Connection Connect
I.2) see Unpark From? with value Park2
I.3) Startup Warm
I.4) see Unpark From? with value Last Parked, Park To? with Park3
I.5) see line (my latitude is 47.6):
[INFO] Driver's config 'Unpark From ?' is set to 'Last Parked': will unpark from Alt=47.563900 Az=0.100000
I.5) Unparking Unpark(ed)
I.6) see Hourangle Coords HA = -5.59:51, Dec = 89:55:57

That's it.
Last edit: 3 years 7 months ago by Markus Wildi. Reason: cut/copy/paste
3 years 7 months ago #57665

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

  • Posts: 24
  • Thank you received: 3
Hi Wildi,

Using the cold_start_part1.sh script, and then running the 2nd sequence of tests on my AP900 (GTOCP3, V2 firmware), everything went smoothly, the Park2 and Park3 positions were correctly computed, and the HA angle and the sidereal time were as expected. However, as I am located in the Eastern hemisphere, my test may not be that relevant.
The only thing I could not find in the Indi GUI is the 'Startup' entry. Or is it just a step note to indicate what is going on in the sequence ? So, to workaround this miss, I just wiped the previous ParkData.xml and Astrophysic_Experimental_config.xml files. And let the driver recreate them during the test sequence.

Thanks for the good and promising work.

Dahu
3 years 7 months ago #57767

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

  • Posts: 59
  • Thank you received: 19
Hello Dahu

I welcome any location and report, thank you. This time I specifically wanted feedback for the park positions.

I'm disturbed by your remark that you did not see the Startup Cold, Warm buttons. I attached a screen shot.

Script cold_start_part1.sh copies finally the files to $HOME/indi_cold_start/build and there in you have to execute

./indiserver ./indi_lx200ap_experimental

After that connect with KStars. There is no need to execute cold_start_part1.sh if you can

cd $HOME/indi_cold_start/build

Please let me know your findings, kind regards, bye, wildi
3 years 7 months ago #57788
Attachments:

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

  • Posts: 24
  • Thank you received: 3
Hello Wildy,

Good news, I have sorted out the Startup Cold/Warm issue. I was using Kstars+Ekos, and apparently, the Ekos Indi GUI does not contain this Startup option (maybe, this GUI may be run from a hardcoded location). Switching to CartesduCiel ou Kstars without Ekos fixes this issue, I get the right GUI. So back on rail. But I see various issues :
1- Going through the test sequence, I see some difference in the mount icon location (step 1-6), which is at azimut 87, and elevation -3. Is that considered as negligeable or not ?
2- Also, in step 2, I see a 15 min difference in the sidereal time. I have checked with both Stellarium and CartesduCiel, to make sure I make a valid comparison.
3- And when I run step 6.1, the mount moves by a few degrees. As the mount was supposed to be very close of the Park2 position, I was expecting a very small or negligeable movement.
To eliminate any remnant in the xml file, I have wiped them and re-start the test sequence several times. Same results.

In case that helps, I join a driver log file that mainly covers steps 1 and 2.
Thanks,

Dahu
Last edit: 3 years 7 months ago by Dahu.
3 years 7 months ago #58052
Attachments:

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

  • Posts: 59
  • Thank you received: 19
Hello Dahu
Yes, of course, it fetches the drivers from /usr/bin if not otherwise told.

Since I never saw that please send me the log. Did you read that on the driver's GUI or are these values from e.g. KStars?
This might explain the position difference seen under 1. If sidereal time is wrong, then every position is wrong. Sidereal time depends on location an time both obtained from KStars. I often saw differences of several 5 sec but never 15 minutes. That can be clarified looking at the log.
In step 4) the mount is moved a few degrees and in 5) Main Control 6.1) Parking Park(ed) the mount moves back to where it started after unpark.

Just in case in you have to redo the log, specify under Options all levels.

Thanks for testing, kind regards, bye, wildi
3 years 7 months ago #58056

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

  • Posts: 77
  • Thank you received: 16
Hi Wildi,

I was able to run the second set of tests last week. The procedure ran successfully with the expected results as described in your post.

In my current use case I will be parking to and from the Park 3 position most of the time.

Will you be restoring the Pier Side information as in the original Astro-Physics Experimental driver?

Until your driver is completed may I suggest that the original (previous) Astro Physics Experimental driver be restored in the bleeding edge Git so we have a functional driver until this one is completed. In fact with such a major rewrite of the driver it should have been carried out using a different name and file. At present, I compiled the Michael Fulbright version driver from an earlier INDI (1.8.4 I think, however I need to confirm that) in order to be able to use my equipment with the latest KStars/Ekos . I am using this driver with KStars 3.5.0 Beta as compiled from Git a few days ago. This combination has given me the best and most stable version of the software I have used to date. I have used KStars/INDI/Ekos software since 2016 successfully many times, however this hybrid version I made now works the best so far.

I am grateful you are working so hard to polish and enhance the driver and I will continue to help test this when I am able. My mount is now back on the pier outside so it will be a bit harder to accomplish but will do as I can. Many of us were/are using the Michael Fulbright version of the driver very successfully in fully automated runs for many months, therefore please consider my advice above.

Thank you for all your work!
Last edit: 3 years 7 months ago by Midwest Astronomer.
3 years 7 months ago #58101

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

  • Posts: 59
  • Thank you received: 19
Hello LinuxUser

pier side is back. You can use script cold_start_part1.sh to fetch/compile it from my repo.

You wrote that you completed the procedures successfully. Beyond that did you observe any failures/glitches?

Michael Fulbright's version worked only West of Greenwich but not East as Spartacus pointed out in this forum. Since files lx200ap.cpp and lx200ap_gtocp2.cpp contain the same error:

if (setAPUTCOffset(PortFD, fabs(utc_offset)) < 0)

I'd like to clean up the code and unify the driver for all GTOCPX and firmware versions (I still use D) as my next task.

Concerning renaming/checkout an earlier version I can not do much. That's up to Jasem. But if the current bleeding edge driver does not fail I'm recommending to keep it.

Kind regards, bye, wildi
3 years 7 months ago #58144

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

  • Posts: 77
  • Thank you received: 16
Hi Wildi,

Thanks for adding pier side back to the driver. I'll use your script as usual, fetch/compile and test. I will run with logs and note any difficulties if I have any.

I understand that Michael Fulbright's version does not work East of Greenwich, however in order to get some imaging done I went back to what works for me here until your new driver is at a working stage. I will also fetch and compile the latest bleeding edge KStars/INDI and test with your driver there and let you know how it goes. I have SD cards specifically for this type of testing so I can keep my "production" version as is.

I hadn't realized the Greenwich/UTC error was in other lx200 code bases, however this would follow since the Experimental driver hooks to the lx200ap code set. It is good that you are cleaning and unifying the driver.

Jasem mentioned in a reply to me in another post here indilib.org/forum/ekos/7460-kstars-3-5-0...ion-issue.html#58121 about your driver merge in Git so as mentioned above I will also test this. Again, you are correct that if this bleeding edge driver works then let's keep it.

Thank you!
3 years 7 months ago #58149

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

  • Posts: 77
  • Thank you received: 16
Hi Wildi,

I tested the latest Git including your driver there. The logs are attached. Here is the test and outcome:

1. The mount is turned on and ready. The bluetooth to serial interface is on and connected to rfcomm0.
2. I select and start my test profile in Ekos (Astro-Physics Experimental driver and simulated CCD)
3. Then connect to the profile which connects the mount and CCD
4. The driver connects and properly identifies my GTOCP3 and V2 firmware
5. On my first start I do a "Cold" initialize
6. Set unpark from as Park 3, set Park To as Park3
7. Try to unpark the mount and just get error message about parking first, etc. (see logs)
8. After several attempts I am unable to proceed. Cannot get past the error messages.
9. I did try to do a goto several different times, however the mount just did not move.
10. Perhaps the mount is not initialized properly or ? (I do not see any messages in the INDI driver window about initializing. I do get this feed back from the old driver such as mount initialized and the site location and time was sent to the mount.)

I wasn't expecting this fail since my earlier tests on your driver completed OK.

I did not test your latest driver with the pier side information added although I did pull it from your Git using your script.

I hope the logs will help to identify what is happening.
3 years 7 months ago #58216
Attachments:

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

Time to create page: 0.804 seconds