en:les_01_02_01 [ОрбиКрафт 3D]


What is Orbicraft for?

Assembling the OrbiCraft 3D

OrbiCraft 3D interfaces

Work with earth-based VHF

Work with Wifi

Work through the WEB interface

Houston Control Center Software

Arduino-Based payload

Laboratory equipment




The Houston Control Center software package – is a package of applications for monitoring and managing the Sputnix's internal satellite systems (hereinafter – Houston CC SP).

General description

The Houston CC SP allows:

  • receive telemetric information and other messages from satellite systems at the ground station;
  • to form control commands on the ground station in a Unican format for satellite systems;
  • send commands in message Unican format over the radio channel or another channel to the satellite CAN cable network.

The Houston CC SP consists of a client part Houston Application (hereinafter – HA software, client) and server part Houston Server (hereinafter – HS software, server). Communication between them is provided by TCP / IP protocol, and one server can maintenance several clients.

To connect to the satellite CAN network, USB-CAN converters are used. The following devices are supported:

Figure 1 shows the Houston CC SP typical wiring diagram to the satellite CAN bus.

The Houston CC SP ensures reliable operation of the HS software and the full range of HA software functions for working with telemetry information and generating command – messages for satellite systems.

To ensure stability, it is recommended to form and send commands from one workstation. To increase reliability, some more workstations should be connected in observer mode, which will be a hot reserve.

The HS software has limited, thoroughly tested functionality. The operation of the HS software is independent of the performance of the HA software clients. With the help of the HS software, a centralized log of Unican messages is maintained, which guarantees the safety of the entire exchange history with the satellite. It is provided to maintain local logs on each client using HA software.


When HS software interacts with the satellite CAN bus at speeds up to 1 Mbit/s, there may be situations when server performance does not allow processing all incoming data. The current version of the server in this case will skip some packages to ensure the stability of the system. This problem occurs because of the need to receive a large flow of information while simultaneously writing the log to the medium and sending the data to the clients.

This situation is revealed by synthetic tests that create a CAN bus load of 100%, in which the CAN bus is not able to function. The maximum load on the CAN line, which allows it to remain operational without additional arbitration measures (not used in Unican), is no more than 30%. In the conditions of satellite cable network, the load does not exceed 1%, with such a load, the testing did not reveal any cases of packet skipping.


This section describes the composition of the Houston Control Center software package and processed data.


The Houston Control software package includes the following applications:

  • Houston СС Application – client program that performs the functions of visualizing data received from the server side, and forming commands for devices connected to the satellite network. Description of the structure of the satellite CAN-bus and device operation protocols are set using xml file.
  • Houston СС Server – server side of the application, provides communication with satellite CAN-bus, mutual CANopen and Unican package, continuous log messaging, user data exchange.
  • WmHelp XmlPad – XML editor from WmHelp company. Used for easy xml-files editing with satellite CAN bus descriptions and device operation protocols in accordance with the schemes in the xsd format.


The software package is distributed as an archive in the .zip format. Programs Houston CC Application and Houston CC Server do not require installation and are ready to work after unzipping the corresponding folders.

It is not recommended to place program folders by long names.

Hardware Description Files

The program Houston Application is designed to work with an arbitrary set of devices on the CAN bus in accordance with the xml-file descriptions of the protocols of the devices and their hierarchy on the satellite CAN bus. Correct preparation of xml description files is very important, because according to their data, control commands are formed and the telemetric information packets of the devices are decrypted. The following types of xml files are used:

  • Device Protocol Description – contains a description of the protocol for one device (in this case, several such devices at different addresses can be present on the satellite bus). It has a tree structure listing all information packets generated by the device, data fields of these packets and, if necessary, restrictions on the values of these fields.
  • Satellite network map – determines the composition of devices and their addressing on the bus. Devices are logically integrated into modules and satellite systems.

For correct Houston Application software operation, it is recommended to generate and use a map file for each satellite launch.

For editing and checking (using the F7 button) xml-files it is recommended to use the XmlPad editor, which is part of the package.

Xml-file schemas

To control the integrity and formatting of xml files, a tool defined by the xml standard is used - XSD description schemes. XSD description schema files are created by the developer separately for device xml files and xml files map type:

  • Unican_device_schema.xsd – for device protocol description files;
  • Unican_map_schema.xsd – for satellite network maps.

XSD files are not intended for editing by users. Critical to the stable operation of HA software is the compliance of all xml-files with a description of the device type to the corresponding XSD scheme. This check is performed in the XmlPad program. In addition to control, XSD schemes greatly simplify the creation and editing of xml files, allowing you to add and remove entries in XmlPad in graphical mode.

Configuration files

In addition to hardware description files, software HA and HS also uses its own parameter settings files – Unican_config.xml and server_config.xml. An Unican_config_schema.xsd scheme is provided for these files (one for both files). The contents of the configuration files are described in detail in Appendix A and B.


General Description

The Houston Application software provides the user with a visual interface for interacting with devices connected to the satellite CAN bus Main HA software features:

  • receiving and sending Unican packages by CAN-bus via HS software with saving to a log file;
  • recognition of recipients and contents of Unican packages by xml-files of satellite map and device protocols;
  • filtering when displaying information of incoming packages;
  • data visualization using dashboards;
  • customization of appearance and set of panels.

The HA software has no restrictions on the composition of connected devices. Support for exchanging data with specific devices is implemented using xml files with a description of device protocols. Without such a description, working with the device is possible only in the reading mode of “raw” hexadecimal codes of Unican packages. Work with non-Unican packages is not supported and is blocked at the HS software level by the analysis of the package composition, by individual fields and checksum. In the unlikely but possible event of a random checksum match, an attempt to analyze the packet with random data may lead to an unpredictable result.

HA software created with the expectation of the subsequent development of functionality. The principle of building HA software involves three categories of customization:

  • user: work with release versions, setting up command queues, dashboards and the appearance of the main HA software window, editing a file with parameters (unican_config);
  • admin: editing satellite map xml files and device protocols;
  • programmer: working with source code in Qt, creating additional panels and other functionality in compliance with the general architecture of the program.

Software Houston Application Installation

At the first start-up, a message is displayed about the absence of the toolbar placement file default_layout.lot inside the main HA software window. To create this file, you should place the panels in a convenient way and save the layout of the panels using the menu item “File - Save layout …”, at resources\layouts\start_layout.lot.

Release version

The release version of the HA software does not require installation, the folder with the program contains the necessary libraries to run under Windows x64. Windows 7 and Windows 10 startup tested. HA Software folder structure:

  • houston_app.exe - main executable file of the program;
  • platforms\ - Qt library folder for HA software;
  • resources\ - configuration files folder;
  • devices\ - folder of device operation protocol description xml files;
  • .xml - device protocol description files;
  • devices-not-used\ - folder of the device protocol xml-scheme and xml files of the description of the device operation protocols optionally installed on satellites;
  • unican_device_schema.xsd – xml schema file for editing device log files;
  • icons\ – HA software interface image folder;
  • layouts\ – folder with files of positions and appearance of panels;
  • .lot – panel position and appearance information files;
  • .tar – tree configuration;
  • start_layout.lot - default program appearance file;
  • maps\ – satellite map file folder;
  • .map – satellite maps card files;
  • queues\ – default folder for command queue files;
  • .que – user message queue files;
  • racks\ – default folder for dashboard files;
  • .hir – user dashboard parameter files;
  • schedules\ – default folder for cyclogram files sent for execution on board the satellite;
  • queues.example.sch – cyclogram sample file;
  • server_logs\ – folder of automatically created exchange log files in the Unican Protocol format;
  • error_log.txt – program log file;
  • .csv – automatically generated log files;
  • .dll – Qt library files for program operation;
  • unican_map_schema.xsd – xml-scheme for editing satellite map;
  • unican_config_schema.xsd – xml-scheme for editing the configuration file;
  • unican_config.xml – configuration file.
en/les_01_02_01.txt · Last modified: 2021/09/10 16:01 by golikov