×

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

Bi-monthly release with minor bug fixes and improvements

Driver OnStep (LX200 like) for INDI

  • Posts: 452
  • Thank you received: 71
Hi,

I could work out some things but still far away from ready to go, and the nights are horribly short :)

for the limits Isince It try to stick to the lx200 generic I inherit some of the limitations (eg. 2 .. 8 for Slew Rate , OnStep is 1 .. 9, so I had to code a new routine.
The issue is I am not a programmer but a dummie !!!
I start to undersnd a bit how Indi works in the gears but dtill lost some times.

Todo list is a good idea:
- Parkink / UnParking / Setting
- Alignment 1, 2 3 star(s)
- logitude setting ( still a negative / positive issue between standard and OnStep
- Pec
- OnStep Satus (some return codes from OnStem are at least obsure :(
- Indi Telescope status vs OnStep way of managing
-
-
- feel free to add but please use the list format, it really easier

A propos did you ever use Kicad? if yes have a look on github.com/azwing/Kicad_OnStep


So now I go to sleep a bit (la nuit porte conseil ....)
6 years 2 months ago #22720

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

  • Posts: 257
  • Thank you received: 22
Sorry for my storytelling, I was editing on the fly during testing. I'll try to be more direct.
You've done quite well already, we'll figure things out. I'm sure Jasem is following as well, ready to help if we get stuck. I'm not a programmer either and Indi gets my head spinning sometimes, and yes, saving a bit of cpu in trade for the cryptic way Onstep handles serial command/response was also problematic for me during testing. It follows the lx200 protocol though with a few extra commands so we might get some ideas by looking at that file.

I think we should prioritize that list as well, with alignment and pec farther down and concentrate on the basic speed and goto controls.
- park unpark is now working well enough.
- unravel some status updates
- longitude is still weird
- mount time needs to update from pc on connect
- speed control changes -- maybe from another driver --I'll try some tests
then maybe later,
internal alignment system? (indi is providing its own)
buttons for go home/set home, set park
pec and other system adjustments (gear ratios?)

I'll take a look at that frequency setting/limit, which is probably just a status format error since the set button is working. I made a usb sniffer that works great for figuring out protocol issues and then stupidly took it apart. I'll rebuild one and have a go.

I've never tried kicad but I get the concept and did some cad/cam in college(early 90's) but I usually just use a pencil. :P.

In case you need it here is a copy of the lx200 protocol
lx200commandset.pdf

Thanks for pitching in!
Ray
6 years 2 months ago #22731

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

  • Posts: 452
  • Thank you received: 71
Hi,

Don't be sorry, I'm happy to share ideas and been challenged somehow.
Yes Jasem is a great help but before asking him for help I really prefer to investigate before.
yesterday I had the feeling I understand a bit more Indi internals ...
Thanks for the command set. I did put together the OnStep commandset from the code, sorry could not attach source file.

I also attached a checklist I prepared ... it is long!

No progress today ... house work to do
6 years 2 months ago #22735
Attachments:

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

  • Posts: 257
  • Thank you received: 22
Looks good. I'm stuck at work. I'll try to get some time to poke at it later tonight.
Happy to report guiding as tested and working too.
The following user(s) said Thank You: Alain Zwingelstein
6 years 2 months ago #22736

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

  • Posts: 452
  • Thank you received: 71
I just found one mistake:

setting up Horizon Limit (LX200 :SoDD#) is coded as :SoDD*# in Indi, which is correct according to Meade LX200 protocol
but implemented diferently in OnStep

You see the kind of issues I encounter

Solution 1: Change OnStep Code to match the standard (Clean approach according to me)
Solution 2: Implement the specific command handler in my driver (Dirty)
For the moment I do to the dirty one leaving comments in my code for that and see with Howard if he accepts a change (also a lot of work for him since it impacts OnStep, Android App, Network and WiFi)

Any advice ?
6 years 2 months ago #22748

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

  • Posts: 257
  • Thank you received: 22
I think the dirty solution does seem like the best way since we are working on a driver to match OnStep as it exists rather than to match lx200 protocol which we just use as a guideline, so it's okay to deviate from LX200 protocol as needed. I think maybe he dropped the * because it was more difficult to code and not needed?

Here's my thoughts on the night. The speed control works in lx200_generic but I haven't been able to import the right code to make it work in OnStep too. Search for "slewrate" in Lx200generic to see it. When I use Generic it makes 4 buttons on a tab in the control panel 1x 2x 3x 4x and they are tied to the slider on the graphical mount control window - these should be connecting to the lx200 protocol commands for set slew rates, center/find etc. We just have to figure out how to enable it in the OnStep file. I think it might be a call to a routine in lx200generic that uses the index of the slide bar. The 1-9 one is for max rates. The phone app does have a setting for that, but it's not presets. I tried adding a few snippets and got the bar to move and the 4 buttons to show up but I've run out of time for more testing. The code is on the rpi3 which is being stupid about uploading it.
I figured out the time issue... OnStep is wanting 24hour time and I think the driver is currently using 12hour so adding 12 hours to the time might be all that it needs. This might explain the flipped sky when the gps seems correct!
More as I get time.
Now it's my turn to be tired and sleep.
Good night.
6 years 2 months ago #22759

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

  • Posts: 257
  • Thank you received: 22
This is one of the blocks I added:
IUFillSwitch(&SlewRateS[SLEW_GUIDE], "SLEW_GUIDE", "Guide", ISS_OFF);
    IUFillSwitch(&SlewRateS[SLEW_CENTERING], "SLEW_CENTERING", "Centering", ISS_OFF);
    IUFillSwitch(&SlewRateS[SLEW_FIND], "SLEW_FIND", "Find", ISS_OFF);
    IUFillSwitch(&SlewRateS[SLEW_MAX], "SLEW_MAX", "Max", ISS_ON);
    IUFillSwitchVector(&SlewRateSP, SlewRateS, 4, getDeviceName(), "TELESCOPE_SLEW_RATE", "Slew Rate", MOTION_TAB, IP_RW, ISR_1OFMANY, 0, IPS_IDLE);

And then I updated and noticed you came to the same conclusion. :D more testing tonight.
6 years 2 months ago #22780

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

  • Posts: 452
  • Thank you received: 71
Hi,

at least things go ahead.
After my philosophical discussion with another Onstep fellow yesterday about what a standard is, I decided to go and fix Indi / vs OnStep incompatibilities within the driver leaving both live their life.

Coding, nothing today, it was my documentation day and was good to identify what is in and what not and why.
If you whant the sourcefile it is on my Kicad git github.com/azwing/Kicad_OnStep

I will now go through again in paralell with testing and see what I did wrong so far :-)

Anyhow the clear weather option of my mount still does not work :-(

I hope within two three weeks all is mature enough for a pull request to Jasem.
The following user(s) said Thank You: Dan Holler
6 years 2 months ago #22784
Attachments:

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

  • Posts: 155
  • Thank you received: 10
I love the documentation.
6 years 2 months ago #22785

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

  • Posts: 452
  • Thank you received: 71
Hi,

it was a long time ....
How is your OnStep going?
I saw your impementation on EasyEda last time.
Did you test the Indi driver?
6 years 2 months ago #22786

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

  • Posts: 257
  • Thank you received: 22
Okay, I did a git pull and will work with that for a while, though I noticed the speed control code was gone again. I also have another project cooking, a diy motorized filter wheel. I look forward to further developments.

The doc is very nice. :)
Last edit: 6 years 2 months ago by Ray Wells.
6 years 2 months ago #22788

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

  • Posts: 452
  • Thank you received: 71
Filterwheel filterwheel ... I have also something likke that in the oven.
I foudn a nice site where they do laser cut on aluminium.
Just need to make sure there is enough gap between cuts .
www.sculpteo.com/fr/decoupe-laser/materi...#general-information

They are not so expensive.
I did upload to their site my drawings and I had an immediate cost / feasibility report
6 years 2 months ago #22793

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

Time to create page: 0.443 seconds