This was the successful completion of a story that started in the mid-2000s inside the Space Research Institute of the Russian Academy of Sciences. Scientists there has an idea to create a small but highly efficient spacecraft for detailed study of physical mechanisms of electric discharges (lightning) in the atmosphere is the widest energy range, from radio to gamma-ray emissions. Back in the Soviet era this would probably require creating a bulky and complicated vehicle, however, the lack of funds allocated to the space industry today, and the desire to launch a satellite in the near future, resulted in need to look for non-standard solutions in designing of such spacecraft.
By that time the space community worldwide had accumulated considerable experience in the design and operation of small satellites (up to 100 kilograms), handling tasks previously reserved for larger satellites. Small satellites are usually launched as secondary payloads together with the larger primary one.
However, the design of such a spacecraft involves the art of saving money while trying to meet the desired performance requirements. In particular, such an approach required a system of orientation and stabilization (SOS) responsible for maneuvers and attitude control, without which the satellite would be useless.
A small group of SOS developers from the SPUTNIX company, consisting of designers, engineers, programmers, and mathematicians, decided to use simplest and most effective solutions. The ARM chip LPC2294 was selected as the central onboard processor, whereas the onboard computer was assembled based on the LPCH2294 debugging board. Its primary advantages are good performance at small power consumption, existence of all required interfaces and buses, and availability on the consumer market. The LPCH board had the required RAM size and flash memory and basically was the finished onboard computer, requiring only the expansion board for certain special functions.
The team selected the Embedded Cygnus Operations System (ECOS) as the operating system. This solution was dictated in part by some experience of other projects’ programmers in working with it, and in part by its accessibility (free of charge) and support of a wide spectrum of processor architectures. ECOS is a real-time, open-source operating system that is easily reconfigurable. It is intended for development of high-level applications in domestic electronic equipment, communications networks, in-car electronics, and so on.
Its main advantages demonstarted in the course of the development activities include:
- availability of the LPCH port in source codes as part of the main open-source repository;
- possibility to connect with port developers and get prompt, quality assistance from them;
- minimal volume of RAM used by the services of OS as compared to similar systems of the same class;
- perfect performance: complicated algorithms of sensors scanning, of mathematics including matrix procedures, did not cause any problem;
- support to jffs2 high level file systems;
- support to μSTL setting up wait-lists, buffers, including ring ones;
- support to dynamic loading of software modules (an important advantage in case onboard software needs to be updated in-flight);
The active phase of onboard software development from scratch by a group of two took a bit more than one year. Another year was spent for functional testing of algorithms, fine-tuning, and handing over the work to the customer.
The reader may have a false impression that the development of onboard spacecraft computer systems is a trivial thing to do, but that is hardly the case. One could go into great detail about the days and weeks spent by the design engineers on complicated algorithms debugging, functional testing at different test stands, checking the hardware for vibration and shock resistance, testing for operation in vacuum, heating and cooling, protection from radiation dangers, and so on—all these factors accompany the life of any space electronics.
The Chibis-M satellite, weighing 34.4 kilograms, started on its mission on January 25, 2012, and has been successfully operating in orbit for almost a year. At the very beginning, it was hard to even imagine how many difficulties we would face during designing, development, testing, and operation of the vehicle, and what kind of difficulties that would be. Now we can say only one thing: we did not doubt—not for a moment—that the use of open software in general and of the ECOS operating system in particular was the correct choice. Thanks to all, who invented open source and ECOS.
Modern trends in satellite development make us believe that the use of open source will not be limited to purely engineering solutions to prepare an in-flight software package for a dedicated hardware installation. Instead, there is a new paradigm of a “public satellite” as available to any user with access to an open hardware-software platform.
Anyone able of developing applications for such platform may have access to such tool in much the same way as anyone may write or buy an application for Android or iOS. Naturally, this paradigm has specific features, making it different from Android or Linux development, such as the specifics of data exchange with a space object by radio link as well as protection of critical components from unauthorized access.
First steps in this direction are already taken: these are projects such as ArduinoSat, Strand-1 and Strand-2, PhoneSat 1, Open Source Satellite Initiative, “opencube” initiatives, and many more. This concept is planned to be developed in Russia by SPUTNIX company with a microsatellite platform called “TabletSat.” The primary idea of this development is to create small, inexpensive satellites weighing between 10 and 50 kilograms using scalability principles, maximum unification of units and subsystems, support of plug-and-play during assembly and launch preparations in the form it is understood in the computer industry, and, most importantly, supporting the ability to uplink user applications onboard. The composition of target instruments is selected out of the available “arsenal” by the user prior to launching. The satellite is prepared and launched applying an “expedited technology” much faster than it usually happens in space industry of today.
How does this work? Imagine that the already launched TabletSat-type vehicle is equipped with cameras for observation of the Earth, stars, Sun, and Moon; in addition, it has rate, acceleration, and rotation sensors. A typical user, wishing to perform an experiment, writes a script for satellite in such terms as “rotate,” “image,” “measure,” and “record,” and uploads it to the satellite using a web browser. Getting the resource on the satellite, he starts his application onboard and sees his experiment results via the same browser.
The current level of small satellite technology is quite capable of providing such a functionality in the nearest future, and thus opening a whole new universe of possibilities in space applications.