







Communication protocols are the foundation of all telecommunications. Already, the slightest inconsistencies can have adverse effects. With increasingly complex and heterogeneous telecommunication systems, constantly evolving standards, and dynamic topologies, inconsistent protocol implementations are increasingly likely. Often, the issues manifest as software bugs or documentation problems. These misunderstandings, misinterpretations, undefined behavior, etc., make it costly and challenging to evolve protocols.
This issue is especially pronounced in space missions, as illustrated in Figure 1, where many different applications and systems (“actors”) are involved, who create, process, and modify the protocol packets:
An outdated or misaligned communication protocol implementation will lead to errors at any of those boundaries.
Our solution produces highly reliable protocol implementations by generating code from the protocol specification in the well-established ASN.1 specification language. ASN.1 is used in many terrestrial network standards, e.g., LTE (4G) or 5G. From any ASN.1 protocol specification, our toolset automatically generates code and documentation in different languages, like C/C++, Python, Scala, Ada, and HTML. Automation guarantees consistent and bug-free code, allows for faster protocol iterations, and leads to more robust communication systems overall. This process is shown in Figure 2.
This issue is especially pronounced in space missions, as illustrated in Figure 1, where many different applications and systems (“actors”) are involved, who create, process, and modify the protocol packets:
An outdated or misaligned communication protocol implementation will lead to errors at any of those boundaries.
Our solution produces highly reliable protocol implementations by generating code from the protocol specification in the well-established ASN.1 specification language. ASN.1 is used in many terrestrial network standards, e.g., LTE (4G) or 5G. From any ASN.1 protocol specification, our toolset automatically generates code and documentation in different languages, like C/C++, Python, Scala, Ada, and HTML. Automation guarantees consistent and bug-free code, allows for faster protocol iterations, and leads to more robust communication systems overall. This process is shown in Figure 2.
The Consultative Committee for Space Data Systems (CCSDS) sets the standard for space communication protocols, and our solution complies with these specifications. CCSDS compatibility ensures communication systems integrate seamlessly with all space agencies and industry partners. We also support additional agency-specific requirements, like ESA’s Packet Utilization Services revision C (PUS-C) standard.
Our solution is designed to streamline the generation of any TM/TC serialization and deserialization code. We understand that every mission has its own unique set of challenges and requirements. We support you in the protocol definition and can tailor the code generation to meet your needs – whether it is a deep-space exploration mission, a satellite constellation for Earth observation, or a commercial space venture.
The core systems engineering team defines the used telemetry and telecommands in collaboration with us, often in line with the European Cooperation for Space (ECSS) CCSDS standard (ECSS-E-ST-70-41C). Protocol definitions for standard services exist (e.g., Service 1, “Request Verification,” or Service 6, “Memory Management.”) Mission-specific services, such as Service 21, “Request Sequencing,” should be specified to meet the mission requirements.
With our software, you can generate code files, automated tests, and documentation. The generated code can be directly used with ground or space software (Figure 3).
ASN.1 stands for Abstract Syntax Notation One. It is a standard interface description language for defining data structures that can be serialized and deserialized cross-platform. ASN.1 is widely used in telecommunications and computer networking, especially cryptography.
The main goal of ASN.1 is to facilitate data exchange between systems with different architectures and implementations. The notation provides a common framework for specifying complex data structures, such as those used in electronic commerce, secure email, directory services, and network management.
Critical features of ASN.1 include:
ASN.1 is used in many protocols, such as the 4th and 5th generation of cellular mobile communication, X.509 for digital certificates, Simple Network Management Protocol (SNMP), Lightweight Directory Access Protocol (LDAP), and many others. It also defines messages in various security-related protocols, such as those used for Public Key Infrastructure (PKI) systems.
Our specialists will be happy to answer your questions. Do not hesitate to send them an e-mail with your request.
We send out some updates via e-mail or as a hard copy from time to time. If you want to stay in the loop, please sign up below. We don’t spam!