×

INDI Library v2.0.7 is Released (01 Apr 2024)

Bi-monthly release with minor bug fixes and improvements

RST-135. Location issue.

  • Posts: 32
  • Thank you received: 13
That's great – thanks Grimaldi! I'll try this out as soon as it's merged.

The other thing is regarding date & time. The following error is reported in the logs:
<code>2021-05-18T19:58:54: [WARNING] Could not process mount date and time: :GC05/18/21T00:00:00 </code>
As far as I understand the string datetime = ":GC05/18/21T00:00:00" is concatenated in rainbow.cpp:1316 out of "cdate" + T + "ctime". The log shows that variable "cdate" falsely includes ":GC" and "ctime" is completely 0. The reason for that is very likely the same, because RST-135 answers with a leading ":GL" into getCommandSexa(). Do you have an easy to implement fix for that as well?

I actually checked out indilib as well and was working on a solution by directly sending serial commands inside of rainbow.cpp and processing it there instead of using lx200driver.cpp. Your's is definitely more elegant and professional.   And by the way: Never worked with git and pull requests before.
Last edit: 2 years 11 months ago by Christopher.
2 years 11 months ago #71413

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

  • Posts: 32
  • Thank you received: 13
Built and tested Grimaldis fix on RPi4 with RST-135 mount: Location pull from mount seems to work now, but there is another fault I think. Obviously KStars/Ekos writes back into the mount after connection process and overrides location information into the EEPROM of the mount, although KStars/INDI is set to "Mount updates KStars". Seems like updateLocation() is called somewhere after starting Ekos. Simply disconnecting and connecting devices in Ekos does not override location in mount, but a restart of INDI Profile and reconnecting does.
Or is this a correct behaviour which I am misunderstanding?
2 years 11 months ago #71415

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

  • Posts: 914
  • Thank you received: 87
Yes, that's another issue.
All my custom/manual locations eventually got overwritten with KStars location while I was testing...
-- Max S
ZWO AM5. RST-135. AZ-GTI. HEQ5. iOptron SkyTracker.
TPO RC6. FRA400. Rokinon 135 and other lenses.
ZWO ASI2600MC. D5500 modified with UVIR clip-in filter.
ZWO ASI120MM Mini x 2. ZWO 30F4 guider. Orion 50mm guider.
ZWO EAF x 3.
2 years 11 months ago #71417

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

  • Posts: 104
  • Thank you received: 21

Replied by Grimaldi on topic RST-135. Location issue.

There‘s probably a couple of other locations in code where „%*[^0-9]$ or some such needs to be prepended to the sscanf, to ignore repetition of the command. I‘ll have a look later today.
The following user(s) said Thank You: Christopher
Last edit: 2 years 11 months ago by Grimaldi.
2 years 11 months ago #71422

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

  • Posts: 914
  • Thank you received: 87
Thank you guys so much for looking into this!
Unfortunately I don't have appropriate skills to contribute... : (
-- Max S
ZWO AM5. RST-135. AZ-GTI. HEQ5. iOptron SkyTracker.
TPO RC6. FRA400. Rokinon 135 and other lenses.
ZWO ASI2600MC. D5500 modified with UVIR clip-in filter.
ZWO ASI120MM Mini x 2. ZWO 30F4 guider. Orion 50mm guider.
ZWO EAF x 3.
2 years 11 months ago #71424

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

  • Posts: 104
  • Thank you received: 21

Replied by Grimaldi on topic RST-135. Location issue.

@astrophy I changed a few other places to ignore leading non-matching characters. So the time & date issue should be fixed, please build from github.com/jscheidtmann/indi, if you haven't already done so. 

This includes a change to one of the core indi files (indicom.c), meaning it is basically linked to everything. The lx200driver file is also used in a plethora of places.
This is really scary for a first tweak of indi. 

I am wondering, whether the approach I used is the right one. @jasem, what do you think?
The reasonable thing to do, would be to refactor out a parser class, that does the character heavy lifting of parsing responses from mounts. Then the lx200 driver could use that parser as a configuration option and the rainbow class could configure a matching parser. This would be a major change, though.  


 
2 years 11 months ago #71428

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

  • Posts: 32
  • Thank you received: 13
Grimadli, I was able to make a quick build and test run. Communication with all external hardware seems to be completely broken now regarding the logs. But I can control the mount as usual with Ekos GUI. I will dive into details later.

Just a quick copy of the "regular" log:
Warning: Spoiler!


And of the "verbose log":
Warning: Spoiler!
Last edit: 2 years 11 months ago by Christopher.
2 years 11 months ago #71429

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

  • Posts: 104
  • Thank you received: 21

Replied by Grimaldi on topic RST-135. Location issue.

Use „git log -n 5 --oneline“ to list the last 5 commits, then git checkout <commit ID hex string>“, rebuild and retry. Which commit still works. I‘ll probably have to split some of the changes into different commits.

Seems I messed it up badly… Sorry
Last edit: 2 years 11 months ago by Grimaldi.
2 years 11 months ago #71433

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

  • Posts: 32
  • Thank you received: 13
No worries. I manually edited indicom.c back to so it does not contain %*[^-+0-9] anymore and edited lx200driver.c:266 from
if (f_scansexa(read_buffer, value))
to
if (f_scansexa(read_buffer + 3, value))
which skips the first three characters the dirty way. After a test build this works indeed but obviously destroys any functionality with standard LX200 protocol mounts. No more errors or warnings are listed after this dirty quick fix.

Do you have any idea how to log the variable "str" inside of indicom.c / f_scansexa? With this we could maybe understand why the format string you integrated breaks all other communication.

edit: By the way, all other changes of lx200driver.c work just fine. No problems with that.
The following user(s) said Thank You: maxthebuilder
Last edit: 2 years 11 months ago by Christopher.
2 years 11 months ago #71435

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

  • Posts: 104
  • Thank you received: 21

Replied by Grimaldi on topic RST-135. Location issue.

Could you please save a git diff and post it here?

git diff > rst-135.patch
The following user(s) said Thank You: maxthebuilder
Last edit: 2 years 11 months ago by Grimaldi.
2 years 11 months ago #71445

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

  • Posts: 32
  • Thank you received: 13
I'm sorry for the delay. Please find the diff output attached. Please remind, that this breaks lx200driver.cpp for all standard LX200 protocols.
I'll be on vacation for 1 week now, so "unfortunately" I cannot provide any test builds until then.

File Attachment:

File Name: rst-135.patch.zip
File Size:1 KB
2 years 11 months ago #71469
Attachments:

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

  • Posts: 914
  • Thank you received: 87
Sorry to push but... Is there any progress on this?
Jasem - will this be fixed any time soon?
Thank you guys so much!
-- Max S
ZWO AM5. RST-135. AZ-GTI. HEQ5. iOptron SkyTracker.
TPO RC6. FRA400. Rokinon 135 and other lenses.
ZWO ASI2600MC. D5500 modified with UVIR clip-in filter.
ZWO ASI120MM Mini x 2. ZWO 30F4 guider. Orion 50mm guider.
ZWO EAF x 3.
2 years 11 months ago #71869

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

Time to create page: 0.338 seconds