So many things!... But mostly:
A tool-chain targeting heterogeneous embedded systems,
using a model-based development approach
A process supporting the creation of systems,
using formal models and automatic code generation
A laboratory platform experimenting with safety-critical SW
technologies, based on open-source, freely accessible solutions
The best way to know what TASTE is, is to go through this presentation.
And this smaller presentation shows a key technology at the heart of TASTE:
how we use ASN.1 to automatically generate many tedious, error-prone SW parts.
A nice way to see what TASTE does, is to watch it applied hands-on, in building an application from scratch.
In this video, you'll see it being used to automatically integrate C code with a Simulink design.
This video showcases how TASTE automatically creates device drivers and VHDL skeletons for the HW parts of a system.
Bonus footage at the end with actual deployment on an FPGA board.
By far, the easiest way to install TASTE is to download the 32-bit or 64-bit TASTE Virtual Machine image for VirtualBox.
After selecting "File/Import Appliance..." you will be able to import the TASTE image in your local installation of VirtualBox, and boot it up.
Then login with user taste and password tastevm.
The TASTE Virtual Machine is based on the latest stable version of Debian Linux.
After booting it up, the machine must be updated to get the latest versions of all TASTE tools - by executing...
cd ~/tool-src ; ./Update-TASTE.sh
...from any terminal emulator.
You can build a complete Docker image (which is very similar to the Virtual Machine) by using this Dockerfile as follows:
$ mkdir TASTE $ cd TASTE $ wget https://gitrepos.estec.esa.int/taste/taste-setup/raw/master/Dockerfile $ docker build -t taste . # don't forget the dot at the end
...and then run a fresh TASTE container with proper X11 redirection, with...
$ wget https://gitrepos.estec.esa.int/taste/taste-setup/raw/master/Docker-run.sh $ ./Docker-run.sh
This will launch a Docker container able to run all TASTE applications, including the X11-based ones (e.g. the Ellidiss GUI). Note that your $HOME folder is mapped under /root/work inside the container - so save your work ONLY in there, because everything else will be deleted when the container dies. You can of course still commit the container and thus obtain your own custom TASTE images.
In Debian-based distributions, you can install TASTE natively. Start by creating a new 'taste' user, and...
$ git clone https://gitrepos.estec.esa.int/taste/taste-setup.git tool-src $ cd tool-src $ ./Update-TASTE.sh
You'll then have to follow the prompts to fix whatever issues are detected in your configuration.
You can also install TASTE in a chroot - which allows you to have a native TASTE installation under non-Debian Linux distributions (e.g. SuSE, Fedora, etc). The process depends on the availability of the debootstrap tool in your distribution - after installing it, you will be able to...
# mkdir /opt/stretch-chroot # debootstrap stretch /opt/stretch-chroot # mount -t proc none /opt/stretch-chroot/proc/ # mount -t sysfs none /opt/stretch-chroot/sys/ # mount -o bind /dev /opt/stretch-chroot/dev/ # mount -o bind /dev/pts /opt/stretch-chroot/dev/pts/ # chroot /opt/stretch-chroot
...and at this point, you can continue with the normal process described above for Debian-based distributions. For (almost) all intents and purposes, this chroot will behave just like a native Debian install; and thus allows you to have a "sandboxed" TASTE install that will not interfere with your main distribution.
In fact, this is reason enough to employ this process even if you do have a Debian-based distribution; the chroot will contain all TASTE-related work, and will therefore leave your main distribution undisturbed.
PERASPERA used TASTE under the hood to implement the "soul" of this rover.
CHEOPS, an ESA mission scheduled to launch in October 2019, used TASTE's ASN1SCC to generate the message marshallers for the application software.
FBK used TASTE in "Contest" (solar/stirling cogeneration; modeling, deployment); "GreenerSys" (single-unit Organic Flow-Batteries; model, deployment); "GreenerNet" (grid of OFBs; modeling)
PROBA-3 uses TASTE in many ways: the payload onboard and the ground segment make extensive use of the Data Modelling Tools from TASTE, for both code and documentation purposes.
And many organizations (in Telecom and elsewhere) are using ASN1SCC; the "heart" of the message marshalling in TASTE, creating bulletproof message marshallers (automatic test cases; 100% coverage by construction; SPARK contracts; automated interface control documents; and more).