Developer manual
How INDI works and how to write drivers for it, in reading order. For newer material, see the technical documentation and the API reference.
- 1IntroductionThe Instrument-Neutral-Distributed-Interface control protocol (INDI) is a key technology for device automation and control.
- 2Purpose of ManualThe goal of this manual is to enable programmers to take full advantage of the INDI architecture by providing a practical guide that illustrates the different aspects…
- 3Intended AudienceThe INDI library is geared toward experienced programmers planning to develop backend hardware drivers to run under the INDI architecture.
- 4Introduction to INDIINDI is a simple XML-like communications protocol described for interactive and automated remote control of diverse instrumentation.
- 5INDI ServerINDI server is the public network access point where one or more INDI clients may contact one or more INDI Drivers.
- 6Driver ConstructionAn INDI driver is what directly communicates with your device(s).
- 73rd Party driversINDI Library includes by default several drivers for popular astronomical instruments mainly used in amateur astronomy.
- 8Standard PropertiesINDI does not place any special semantics on property names (i.e.
- 9Binary TransferThus far, the main focus was on control and monitoring oriented properties.
- 10Inter-driver communicationINDI Library provides the facility to snoop on properties in other drivers.
- 11ScriptingINDI provides three command line tools that can be used to write complex scripts for settting, retrieving, and controlling the behavior of INDI devices.
- 12Debugging & LoggingINDI provides a Debugging and Logging API where the driver can log different types of messages to the client and/or log file along with time in seconds since the start…
- 13Setting development environmentTo start developing INDI drivers, it is necessary to set up an environment for C/C++ development.
