×

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

Bi-monthly release with minor bug fixes and improvements

only one indi server allowed in ekos

  • Posts: 17
  • Thank you received: 0
Hi all!

I only did a few searches, but i didn't find anything on this topic. Basically my issue is this: I've got a remote observatory with two physical "servers", both running indiservers, and Ekos can't seem to deal with more then one.

One is an SBC, ultra-low-power (<5 watts) always-online "environment manager" which controls the weather station, a few temperature and hygro sensors, roof open/close switch, the scope mount, and also controls the power outlets which power other devices that don't need to be always-on.
The other system is a low-power (<15 watts) atom d2700 barebone pc which has the main and guide cameras connected plus the focuser, and basically does the heavy lifting during observing sessions.

So, i'd really love to use kstars & ekos but i ran into a problem. When you go through the Ekos options, you can only define one remote indi server. This is no good obviously, as i need to talk to indiserver on ip A to control the mount, and the indiserver on ip B to control the cameras and focuser. This seems like an oversight, given that indilib is all about using the network to control all components. Does anyone know if this will get fixed or why it didn't get implemented?

Bonus question... I can't get ekos to properly drive my seletek armadillo focuser, i'm pretty sure this is all about the name i'm supposed to use in the options menu, maybe someone knows the correct string i should provide? Or some pointers on how i'm supposed to find the exact string i need to use? It seems to get connected to just fine when i connect to it through the indi control panel.

Thanks for your thoughts!
Last edit: 9 years 7 months ago by Parser. Reason: annoying typos
9 years 7 months ago #1906

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

  • Posts: 18
  • Thank you received: 14
An indi server can be used as a relay by using the syntax driver@host[:port] instead of the name of the local driver.

You may run a "hub" indi server with the following command on your client pc:
indiserver *@A *@B
where A and B are your IPs
It will load all the drivers run by the remote servers.

There are many variants. You could also use the barebone pc as a relay for the SBC, or vice versa
Last edit: 9 years 7 months ago by Romain Fafet.
9 years 7 months ago #1908

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

You can use a chained INDI server as explained here . For the device name you ought to use in Ekos, please read the Ekos Setup page here especially about the tip for getting device names for use within Ekos.
9 years 7 months ago #1909

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

  • Posts: 17
  • Thank you received: 0
Thanks! Seems I was stuck searching for the wrong concept, this will do exactly what i need :)

Can i humbly suggest it's worth mentioning the hub concept in the tooltip of the option menu's ip address field? It seems a good place to stop people like me from running to the forums :)

About the device name string, i did read that page, but found it less then helpfull, there's a lot <edit: ok, not that much, but i tried -vvv to and nothing there helped either> that scolls by, and nothing i tried worked:
2014-09-16T23:06:03: startup: indiserver -vv ./launchSeletekDriver.sh 
2014-09-16T23:06:03: Driver ./launchSeletekDriver.sh: pid=17280 rfd=3 wfd=6 efd=7
2014-09-16T23:06:03: listening to port 7624 on fd 4
2014-09-16T23:06:03: Driver ./launchSeletekDriver.sh: sending <getProperties version='1.7'/>
 
2014-09-16T23:06:04: Driver ./launchSeletekDriver.sh: read <defSwitchVector device='Seletek Armadillo (by Lunatico)' name='CONNECTION'>
2014-09-16T23:06:04: Driver ./launchSeletekDriver.sh: read <defTextVector device='Seletek Armadillo (by Lunatico)' name='DEVICE_PORT'>
2014-09-16T23:06:04: Driver ./launchSeletekDriver.sh: read <defSwitchVector device='Seletek Armadillo (by Lunatico)' name='CONNECTION'>
2014-09-16T23:06:04: Driver ./launchSeletekDriver.sh: read <defTextVector device='Seletek Armadillo (by Lunatico)' name='DEVICE_PORT'>

I recall trying "Seletek Armadillo (by Lunatico)", "Seletek", "Seletek Armadillo", but those all either got me messages about devices that couldn't be found/connected (or somesuch, it was late), and in any case, the focuser tab was there, but focus in/out buttons always remained grey.

Should i have tried to wildcard it like "Seletek*" or escape the ( and ) chars?
Last edit: 9 years 7 months ago by Parser. Reason: typo
9 years 7 months ago #1910

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

"Seletek Armadillo (by Lunatico)" should work but I noticed this driver is running in INDI4Java? I don't have any experience with it in the stock INDI library.
9 years 7 months ago #1912

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

  • Posts: 17
  • Thank you received: 0
Mmmm, ok.

I followed the instructions linked below, and went with the first method:
www.indilib.org/develop/indiforjava/i4jd.../seletek-driver.html

On the page it says:
I suppose i'll have to try and see what happens when i run it with the INDI4java server then? I'll do that, but i haven't seen any errors from the driver that would indicate that's the real problem.

Maybe my local java (version) is the issue? What's recommended currently?
@obscontrol:~$ java -version
java version "1.7.0_65"
OpenJDK Runtime Environment (IcedTea 2.5.2) (7u65-2.5.2-3~14.04)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
Last edit: 9 years 7 months ago by Parser. Reason: more info
9 years 7 months ago #1913

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

  • Posts: 18
  • Thank you received: 14
I have the same java version as you and I was able to run the driver with the indilib and INDI4Java servers. So I think it is not the issue. Unfortunately I was stuck at the connection (between the driver and the device) since I don't have a Seletek.

Are you sure that you have established the connection between the Seletek and the driver ? It seems to be OK since you have the focus tab.

I have a look at the driver source and I can't find the standard property "FOCUS_MOTION" with correspond to the focus in/out buttons. Instead, it seems that the driver uses non-standard properties which are not recognized by Ekos. You may try to control your focuser manually with these properties in the control panel.
The following user(s) said Thank You: Parser
9 years 7 months ago #1916

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

  • Posts: 17
  • Thank you received: 0
I remember the control panel not having anything straightforward like focus in/focus out options, it presented me with the number 50000 as some kind of step number of the motor and let me change it. I didn't actually check if this made the focuser turn, as it wasn't the functionality i was looking for (need it to automatically focus for unattended sessions). I don't doubt that it would turn since everything else seemed to work. The focuser handcontrol connected to the same seletek box was functioning, indicating the internals are probably fine.

If i'm getting this correctly, there's no particular technical reason why the driver couldn't have the properties EKOS is looking for, they just aren't implemented, right?
9 years 7 months ago #1917

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

If that's the case, it is better to contact the driver's author to implement the standard INDI focuser properties, otherwise, it would be usable in INDI Control Panel, but Ekos wouldn't be able to utilize it.
The following user(s) said Thank You: Parser
9 years 7 months ago #1918

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

  • Posts: 17
  • Thank you received: 0
Sorry for reviving this thread, i just noticed something in the EKOS codebase:
e450fc89 (Jasem Mutlaq    2014-01-22 01:42:34 +0300  743)     if (canAbsMove)
67353c4b (Jasem Mutlaq    2015-09-24 02:54:55 +0300  744)            currentFocuser->moveAbs(currentPosition+ms);
67353c4b (Jasem Mutlaq    2015-09-24 02:54:55 +0300  745)     else if (canRelMove)
67353c4b (Jasem Mutlaq    2015-09-24 02:54:55 +0300  746)             currentFocuser->moveRel(ms);
740cea0a (Jasem Mutlaq    2012-09-09 04:36:25 +0300  747)     else
67353c4b (Jasem Mutlaq    2015-09-24 02:54:55 +0300  748)             currentFocuser->moveByTimer(ms);

Does this mean it doesn't matter anymore that my seletek focuser driver doesn't support focusinward/focusoutward (it only let's you set an absolute step number). I tried to find a reference in the changelogs but couldn't find a mention of this change.

Maybe a bit of a noob question, but i can't actually test it myself right now to see what happens.
8 years 6 months ago #5422

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

what INDI driver are you using?
8 years 6 months ago #5424

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

  • Posts: 17
  • Thank you received: 0
It's the seletekfocuser from the indi for java zipfile:
i4j-all-in-one-1.50-SNAPSHOT-distribution.zip

svn repo at:
( sourceforge.net/projects/indiforjava/files/ )

ps. Yes, i've contacted the author of the driver, but he seems pretty busy, and while i can do pretty cool stuff in bash, java is just too much for me. So, nothing changed in that driver (that i know of) since this thread ended the first time.
Last edit: 8 years 6 months ago by Parser.
8 years 6 months ago #5425

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

Time to create page: 1.046 seconds