Instrument Neutral Distributed Interface: Difference between revisions

Content deleted Content added
Template:Start date and age update. WP:LINKs: updates, adds, WP:Disambiguate, cut needless: WP:PIPEs, underscores. Full terms define before WP:ABBReviations. Nonlead-word nonproper noun MOS:CAPS > low-case.
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
 
(11 intermediate revisions by 10 users not shown)
Line 1:
{{Short description|Distributed control system with particular focus on astronomical instrumentation}}
{{Infobox software
| name = INDI
Line 8 ⟶ 9:
| released = {{Start date and age|2003|04|15|df=yes}}
| programming language = [[C (programming language)|C]], [[C++]]
| operating system = [[Linux]], [[OS XmacOS]], [[FreeBSD]], [[OpenBSD]]
| platform =
| size = 1.2 [[Megabyte|MB]] on [[Linux]]
| status = Active
| license = [[GNU Lesser General Public License|GNU LGPL v2.1+]]
| website = {{URL|https://www.indilib.org/}}
| latest release version = 1.8.9
| latest release date = {{Start date and age|2021|02|28|df=yes}}<ref>{{cite web
| url = https://github.com/indilib/indi/releases
| title = Releases · indilib/indi
| website = GitHub.com
| access-date = 2021-04-12
| archive-date = 2021-04-19
| archive-url = https://web.archive.org/web/20210419162720/https://github.com/indilib/indi/releases
| url-status = Activelive
}}</ref>
}}
 
Line 19 ⟶ 28:
 
==Introduction==
[[Elwood Downey]] started the INDI Protocol initiative in 2003 to develop a platform and client independent control protocol. INDI is a simple protocol modeled on Extensible Markup Language ([[XML]]), described for interactive and automated remote control of diverse instruments. It is small, easy to parse, and stateless. In the INDI paradigm, each ''Device'' poses all command and status functions in terms of setting and getting ''Properties''. Each Property is a vector of one or more named members, and has a current value vector; a target value vector; provides information about how it should be sequenced with respect to other Properties to accomplish one coordinated unit of observation; and provides hints as to how it might be displayed for interactive manipulation in a [[graphical user interface]] (GUI). Clients learn the Properties of a particular Device at runtime using introspection.
poses all command and status functions in terms of setting and getting ''Properties''. Each Property is a vector of one or more named members, and has a current value vector; a target value vector; provides information about how it should be sequenced with respect to other Properties to accomplish one coordinated unit of observation; and provides hints as to how it might be displayed for interactive manipulation in a [[graphical user interface]] (GUI). Clients learn the Properties of a particular Device at runtime using introspection.
 
This decouples Client and Device implementation histories. Devices have full authority over whether to accept commands from Clients. INDI accommodates intermediate servers, broadcasting, and connection topologies ranging from one-to-one on one type of system, to many-to-many between systems of different genre. The INDI protocol can be nested within other XML elements such as [[Remote Telescope Markup Language]] (RTML) to add constraints for automatic scheduling and execution.
Line 55 ⟶ 63:
[[Image:indi server.png|frame|center|INDI Server Network Topology]]
 
==IANATCP/UDP port number assignment by IANA==
The [[Internet Assigned Numbers Authority]] (IANA) has assigned INDITCP/UDP toport 7624 ([[Transmission Control Protocol]] (TCP) and [[User Datagram Protocol]] (UDP), orfor TCP/UDPuse portby 7624INDI. See [[List of TCP and UDP port numbers]].
 
== See also ==
{{Portal|Free and open-source software|Astronomy}}
{{div col begin|colwidth=20em}}
*[[Space flight simulation game]]
**[[List of space flight simulation games]]
*[[Planetarium software]]
*[[List of observatory software]]
{{div col end}}
 
== References ==
Line 62 ⟶ 79:
 
== External links ==
*[https://indilib.org/ INDI Library]
{{Portal|Astronomy}}
*{{Official website|indi.sourceforge.net}} INDI Library
*[http://www.clearskyinstitute.com/INDI/INDI.pdf INDI Protocol white paper]
*[http://www.cloudmakers.eu/xindi xINDI (INDI based tools for OSX) project page]