Getting started with the INDIGO agents based backyard astrophotography application suite
About eight years ago we started to develop a software with the idea to make Apple macOS and iOS the first class platforms for backyard astrophotography.
At the beginning, the most important task was to add as many hardware drivers as possible. So we used the existing INDI framework. Later we focused on the performance and reliability and transferred the whole development to INDIGO framework.
In the latest generation we made so far the most radical change. We left the traditional client server approach and switched to multi-tier agent based architecture allowing even higher performance and reliability.
Core and utility applications of astrophotography suite
Unlike the other similar systems, our suite is not a single monolithic application, we use standalone loosely coupled applications instead. This approach has some advantages and some drawbacks. The major advantage is that you can select just tools you really need and use them only when you really need. The disadvantage is that you need to understand how the applications work to configure them to talk to each other properly.
There are four core applications and a couple of utility applications in our suite. The core applications are:
- AstroImager, the application for controlling the main camera and the associated filter wheels, focusers and the front end for "Imager Agent",
- AstroDSLR, a very similar application, but intended specifically for tethering DSLRs and another front end for "Imager Agent",
- AstroTelescope, the application for controlling the dome and the mount and the front end for "Mount Agent" and
- AstroGuider, the application for controlling the guider camera and guider port of the mount and the front end for "Guider Agent".
The utility applications are:
- INDIGO Server, the standalone server for building distributed systems,
- INDIGO Control Panel, the standalone control panel,
- INDIGO Script Editor, the standalone INDIGO script editor,
- INDIGO Dashboard, the highly configurable dashboard for low level server control,
- FITS Preview, the fast previewer for FITS, XISF and INDIGO RAW formats and
- Astrometry, the macOS port of substantial part of Astrometry.net project.
Please note, that every core application contains an embedded server, control panel and script editor. The standalone versions are intended for advanced use and are not necessary in the most cases.
About INDIGO and INDIGO agents
INDIGO is a system of standards and frameworks for multiplatform and distributed astronomy software development.
You can consider it as a next generation of INDI, based on layered architecture and software bus. INDIGO uses the same astronomical hardware abstraction as INDI, but removes some of its design limitations, dramatically improves its performance in some typical scenarios and overcomes license restrictions to allow both non-commercial and commercial use.
If you don't want to, you don't need to care about INDIGO complexity and its distributed nature. Each application contains embedded INDIGO Server together will all necessary drivers. You can just use it.
Although INDIGO was always well prepared for a distributed computing, for many situations the traditional client/server is not the best approach. The most important driver for the change was implementation of webGUI on INDIGO server. The thin client running in a browser needs a much smarter backend than INDIGO server itself, it needs a server side application logic. We use term INDIGO agent for this code, acting on the server side and controlling the local devices on behalf of the client.
Such an agent is independent of the connection to the client. The client can configure it, disconnect and keep it running, doing its job and connect later to monitor the status or to take the results. The communication between the driver and the agent is also not limited by network bandwidth as far as they both live in the same INDIGO server and can communicate to each other over the software bus on a procedure call speed.
And last but not least, as far as agent code contains the vast majority of application logic for typical operations supported by the applications for amateur astronomy. Implementation of the client is in this case just implementation of native GUI for a given operating system. It is faster, easier and possible bugs can be fixed on one place.
To learn more about INDIGO or INDIGO agents or to ask a question, visit FAQ section of our users forum.
What's new in the version 4.0
- The initial version of the 4th generation.
FITS Preview overview
FITS Preview is a lightweight and fast viewer for images in FITS format (Flexible Image Transport System) introduced by NASA and HEASARC, XISF format (Extensible Image Serialization Format) introduced by PixInsight and native INDIGO RAW format.
In comparison with any full feature editors it offers unbeatable overall speed and easiness of use. Just double click on any FITS, XISF or RAW image in any folder and the FITS Preview application will open it in a fraction of second automatically sized to fit the window and automatically stretched to the optimal brightness, flipped or rotated. Both scale, black and white point can be adjusted manually afterwards by the corresponding buttons in toolbar. You can anytime return to the automatic mode of the screen transfer function.
The file header and the image histogram can be viewed by clicking corresponding file section pane. You can view raw images in colour by selecting correct Bayer matrix offset.
By clicking with a mouse on a star you can examine its FWHM, HFD and peak value.
Image can be exported easily to JPEG format with current black and white point setting.
The viewer is based on CFITSIO library and supports standard monochromatic and color FITS image formats.
Please contact us at email@example.com or bb.cloudmakers.eu.