----- Original Message -----
Sent: Saturday, October 23, 2004 2:19
Subject: [Indi-devel] Seeking design help
with a INDI Server
The middle school (Grades 7th and 8th) in the district that I work for is
trying to setup a completely autonomous telescope similar to what Talon (www.sourceforge.net/projects/observatory
use to provide. Being the IT guy put on the project team, I'm pushing
the mighty penguin as the operating system of choice.
We checked out Talon and from the user's point of view it did everything
we wanted. It will handle "manual control" and scheduled batch jobs. But Talon
doesn't support any of the telescope hardware we have talked about
This is what had brought me to the INDI project, it has the potential to
solve our undecided hardware problem.
I should quit rambling and get to my problems.
1) INDI Server needs sanity checking, I am already planning on adding the
needed code to the server so it will not except a new property
update if it is RO. This isn't a big deal.
This is traditionally done from the client side.
But a sanity check should be done from the driver if you want to, not the
server. The server doesn't know about its drivers' properties' permission. No
Sanity check in any of the drivers so far because it is assumed that the client
will honor the protocol.
2) I'm unsure how to to implement the scheduler. It needs to be able to
set all properties to RO while it has control. But if it comes to a time block
scheduled for manual control, it needs to allow it until the time lock is
over. After giving it a great deal of thought, I'm leaning towards
implementing the scheduler as part of the INDI Server. Is this the best
Good to know someone is thinking about the
scheduler as my time is quite limited to work on it myself now. The scheduler,
as we thought of it, is a layer above INDI server. That is, it starts/stops
servers, and dispatches observations jobs based on RTML. It will be a daemon
process with some GUI frontend. The GUI frontend allows the user to set the
parameters for the observation job, select which devices do what at a specific
time, and more. It then composes an RTML/INDI and dispatches it to the INDI
scheduler which will perform jobs in accord with the document time and
3) Now we come to the system sanity checks, such as don't move the scope
if the roof is closed, or don't open the roof if it is raining, etc. Is it
best to put this type of checks in the server?
We don't have worry about this case if it is
manually controlled, since the controller will be able to make such
decisions. For automated tasks, the scheduler can make sure these conditions are
met before starting the observation job.
Hope that helped.