Technical FAQ

Revision as of 21:01, 4 August 2017 by Ttsiodras (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

How to download and install TASTE ?

TASTE is distributed in the form of a pre-configured virtual machine running on top of the Linux Debian operating system.

You may also install it manually on your own Linux platform.

Check these pages for more details:

Download policy

Download is freely available for users from ESA member states.

Supported architectures and platforms

Development platform

TASTE is distributed in the form of a virtual machine image. This makes it compatible virtually with all modern operating systems - the only requirement being to be able to run a virtual machine (VMware player exists for Windows, Linux, Mac - Virtualbox is also capable of running VMware images).

Target platforms

TASTE is able to produce code for the following operating systems and architectures :

  • Linux/x86 (both 32 and 64 bits).
  • Linux/Xenomai (Real-Time Linux)
  • RTEMS/x86 (the i386 BSP)
  • RTEMS/SPARC (the LEON2, LEON3 and ERC32 BSP)

In addition, generated code is also provided for a virtual architecture, called Native. This means the code runs on the development host. In general, all POSIX-compliant operating systems would be able to compile and execute our generated applications.

Supported devices

  • Linux with C generated code
  • Ethernet network under Linux
  • Serial port (UART) under Linux
  • Spacewire (StarDundee brick) under Linux
  • NE2000 driver under RTEMS
  • RASTA board on LEON boards : works for the spacewire and serial interfaces

What are the requirements of TASTE ?

To be able to use TASTE you need a virtual machine player (VMware player, which is available for free).

What is the license of TASTE ?

TASTE is not a single tool. It is made of several components that come with their own license scheme. Check them individually or contact us for more information.

Can I use the TASTE toolchain in a commercial product ?

The TASTE toolchain is made of many components that are licensed under specific licenses. Some components (especially the one released under the GPL license) can be reused free of charge. Others would require special agreement, especially the one developed under an exclusive ESA contract.

The best way to deal with a commercial use of TASTE would be to contact us. We will help you and detail the conditions for reusing each component and provide licensing details. In addition, we can help you to get some support for third-party software useful for TASTE (RTDS, ...).

What are the key technologies of TASTE ?

The TASTE development process uses the following key technologies :

  • ASN.1 for data modelling ;
  • AADL for architecture description, automatic system configuration and deployment ;
  • SDL for behavioural modelling based on state machines ;
  • Matlab/Simulink for modelling control laws.
  • C and Ada

In addition other languages and tools are supported to a certain extent: VHDL, SCADE, SMP2, ...


The ASN.1 language gives you the ability to describe all the messages exchanged between your subsystems and their environment.


The AADL language is used to describe system logical and physical architecture. It is used as a backbone language to capture the system interfaces and make the link with the ASN.1 model. On the deployment part, the AADL language language is used to describe configuration and deployment concerns (how many computers/nodes are used in the system, how functions are distributed, etc.).

Application-level models

SDL, SCADE and Simulink are used as application-level modelling languages. They describe system behavior and implement system functions and use the types defined using ASN.1. It is also possible to implement the software behaviour using standard C and Ada languages.

My application models are not supported by TASTE, how can I deal with this issue ?

Currently, TASTE can integrate application code written with legacy language (Ada, C) or application-level languages. Supported application levels are :

  • Simulink
  • SCADE Suite
  • SDL with OpenGeode (built-in), ObjectGeode (no longer supported by its provider) and RTDS
  • VHDL

If you want to integrate another application language, you can contact us so that we discuss for supporting it in our toolchain.

Supporting other code generators

Currently, TASTE supports code generators from tools-vendors. However, some projects (such as GENEAUTO) aims at producing code from application-level models with free-licensed software. TASTE is currently being improved to support these tools so that our users would be able to auto-generate application code without installation any proprietary software.

How can I update each tool of TASTE ?

There is the following possibilities to keep your installation up-to-date.

  • If you are running the TASTE tools within the Virtual Machine, we provide (the VMWare image), you just have to invoke the script This script will automatically download and install the latest version of the tools. This is the easiest way to keep a clean, up-to-date and supported installation.
  • If you installed TASTE tools with the installer program, you just need to invoke the taste-installer program in a terminal. It will start the installation procedure again and update the tools you need to update.
  • If you are running the tools natively on your computer, you have to update each tool by your own. It means that you have to download and install each updated version of the tools. We provide nightly builds for each tool (see the download section) so that you can update with the latest version of each tool and use new functionalities. However, we don’t provide any support on such configuration because the errors you can experience can be related to your own setup.

How can I contribute to TASTE ?

TASTE is a project funded by the European Space Agency and developped by several companies and institutes from industry and academia worlds. It was initiated with an open perspective, meaning that anyone who would like to contribute is welcome. Also, its development is very active and involves many developers. You can contribute to the project in different ways :

  • By joining our discussion and propose ideas
  • By submitting code and patches for software improvement
  • Send bug reports or feature requests

If you have an idea to improve our toolchain, just let us know. Please contact us so that we can either give you an access to our code repository or our bug tracker. Keep in mind that the project is very open and all potential contribution would strenghten the whole development process.

How to solve certificate error message when cloning TASTE components from Gitlab?

As root:

   echo -n | openssl s_client -connect | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > gitrepos.cert
   cp gitrepos.cert /usr/local/share/ca-certificates/gitrepos.crt