×

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

Bi-monthly release with minor bug fixes and improvements

Avalon mzero Stargo with lx200 protocol

  • Posts: 1185
  • Thank you received: 370
Ah, good to know that there is a working focusser!
Yesterday I worked on setting up my development environment and making first steps with the existing lx200_basic driver in the debugger.

Wolfgang
6 years 3 weeks ago #23864

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

  • Posts: 18
  • Thank you received: 4
Hello,
Oh good CanisUrsa to write a avalon driver.
I have no focuser, si I am only interessed with a mount driver.
The thing missing, for me, in the lx200_basic_driver, is the synchronisation at the beginning of the process.
So I use for that fonction the android stargo-bt application.
When you will have a mount driver in beta-test, I am candidate to test it, if you agree.

Jean-Jacques
6 years 3 weeks ago #23869

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

  • Posts: 1185
  • Thank you received: 370
Hi Jean-Jacques,
there is a workaround for the synchronisation at the beginning of the process using INDI: Position the cursor on a star on the meridian and close to the southern horizon. Without moving the mount from its Home position, perform a sync to that star. This is equivalent to performing the “Sync Home Position” using the StarGO software.

I tried it yesterday and it seems to work. But that is not a very convenient solution.

I am starting to write my own telescope driver.

Wolfgang
6 years 3 weeks ago #23870

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

  • Posts: 15
  • Thank you received: 2
Wolfgang,

I have been utilizing usbpcap to capture the traffic between the StarGO windows application and the mount. I have found a number of commands (including the sync home position). A lot of the LX200 commands work but it appears Avalon added their own set of commands to do very similar things. For example there are ways to get the RA/DEC of the mount in a way that provides more digits of precision than the LX200 method. I'll generate a google spreadsheet when I get home with the commands I have learned so we can work together on defining them for use in the INDI driver.

Another thing I am slightly concerned about is the shared use of the serial port between the focuser and mount. My job has me writing code in windows so I am not sure how to handle that shared resource within linux. I was thinking of taking a naive approach first (don't try to protect the resource) and seeing how bad things go.

CanisUrsa
6 years 3 weeks ago #23875

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

  • Posts: 15
  • Thank you received: 2
Wolfgang,

Here is the google document. The sync homing commands are a bit more involved and require calculating the LST (Local Sidereal Time) and uploading that to the StarGO. I am currently updating the spreadsheet with more detail on the syncing steps as my understanding increases.

docs.google.com/spreadsheets/d/1J-Hycie6...xbk/edit?usp=sharing

CanisUrsa
6 years 3 weeks ago #23899

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

One idea might to subclass LX200Generic and then add your own modifications. But if the differences are too great, then start a new driver.
6 years 3 weeks ago #23901

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

  • Posts: 1185
  • Thank you received: 370
Sure, I will try to find an appropriate base class. Last weekend I tried using lx200_classic. This does not work out of the box since it uses the ACK command during the initial handshake. StarGo does not respond to this command. On the other hand lx200_basic reads the current RA position in the initial handshake which works fine.

I will keep you updated.

Btw: is there somebody out there who can help me with cmake etc? My knowledge is slightly rusty. Maybe not directly here on this thread but rather in direct communication.
6 years 3 weeks ago #23911

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

  • Posts: 1185
  • Thank you received: 370
OK folks, one step in advance, next problem found :-)

Simply subclassing LX200Generic is not that easy:
  1. LX200Generic contains a local variable called telescope which is a reference to the scope specific subclass of LX200Generic
  2. This local variable is instantiated through the first run of the IsInit method of LX200Generic
My first (naive) idea was simply overriding IsInit() and setting telescope with my new subclass LX200StarGo.

Unfortunately, I cannot access the "telescope" variable from a subclass. Or did I miss some framework magic?

As far as I understand, if I want to use LXGeneric, I need to touch LXGeneric.IsInit adding my new subclass. But this does not look very nice, I do not want to touch the framework itself.

Any suggestions?
6 years 2 weeks ago #23992

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

  • Posts: 1185
  • Thank you received: 370
Hi,
a first alpha version of my LX200 based StarGo driver is available for testing: github.com/sterne-jaeger/indi.git

It uses LX200Generic als parent, so please do not expect any StarGo specifics. This will be now be added step by step.

Feedback welcome!

Cheers
Wolfgang
The following user(s) said Thank You: Jasem Mutlaq
6 years 2 weeks ago #24063

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

  • Posts: 1185
  • Thank you received: 370
please use the "stargo_work" branch.
The following user(s) said Thank You: Jasem Mutlaq
6 years 2 weeks ago #24067

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

  • Posts: 18
  • Thank you received: 4
Good Wolfgang. No : very good.
I will build it and test and try it.
Jean-Jacques
6 years 2 weeks ago #24101

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

  • Posts: 1185
  • Thank you received: 370
The latest version contains already a "Sync Home Position" button. Feedback welcome.
6 years 2 weeks ago #24102

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

Time to create page: 1.036 seconds