A Modular Middleware Architecture for Cyber-Physical Systems

Project Description

Distributed systems have nowadays reached a complexity that makes it hard for add new functions even for domain experts. The problem is rooted by the manifold interaction of the individual system components that have to be integrated with each other. A typical example is a car: in the automotive domain, many electronic control units and communication links are configured to work together for exactly the planned purpose – without the potential for further extensions.

CHROMOSOME returns the control over the functionality of an application to the developer. This is achieved by "hiding" the complexity in a smart way and ensuring extensibility by plug & play mechanisms even during runtime. For being able to address the requirements of the automotive and automation domains, CHROMOSOME also offers real-time capable models of execution.


The goal of CHROMOSOME is to support applications "from 8 bit microcontrollers to the cloud" and combines the following properties:

  • A data centric communication concept based on publish & subscribe decouples sender and receiver, boosting overall system flexibility.
  • The integration of new functions during runtime is possible without interference of running applications.
  • A resource manager decides about dynamic allocation of memory and computing time, since the requirements of all components are known at runtime.
  • The hardware abstraction layer allows execution of the same application on multiple target platforms.
  • Model driven development tools allow the developer to keep an overview of the overall system.
  • Basic functions from the domain of functional safety and security complete the feature list.

CHROMOSOME is open source, available under a free licensing model and free of charge. It is being further developed in context of research projects at fortiss and currently applied in the automotive and automation domain.


Parts of this work are being developed in the context of other research projects at fortiss:

  • RACE, funded by the German Federal Ministry of Economics and Energy (BMWi).
  • AutoPnP, funded by the German Federal Ministry of Economics and Technology (BMWi).
  • Multifunk, funded by the German Federal Ministry of Education and Research (BMBF).


  • Christian Buckl, Michael Geisinger, Dhiraj Gulati, and Fran J. Ruiz-Bertol. CHROMOSOME: A run-time environment for plug&play-capable embedded real-time systems. In Sixth International Workshop on Adaptive and Reconfigurable Embedded Systems (APRES 2014). ACM, April 2014. [ .bib | .pdf ]
  • Stephan Sommer, Michael Geisinger, Christian Buckl, Gerd Bauer, and Alois Knoll. Reconfigurable industrial process monitoring using the CHROMOSOME middleware. In The Fifth International Workshop on Adaptive and Reconfigurable Embedded Systems (APRES 2013). ACM, April 2013. [ .bib | .pdf ]


Export list as BibTeX file

  • Christian Buckl, Michael Geisinger, Dhiraj Gulati and Fran J. Ruiz-Bertol. CHROMOSOME: A Run-Time Environment for Plug&Play-Capable Embedded Real-Time Systems. In Sixth International Workshop on Adaptive and Reconfigurable Embedded Systems (APRES 2014), 2014. ACM. Details BibTeX
  • Stephan Sommer, Michael Geisinger, Christian Buckl, Gerd Bauer and Alois Knoll. Reconfigurable Industrial Process Monitoring using the CHROMOSOME Middleware. In The Fifth International Workshop on Adaptive and Reconfigurable Embedded Systems (APRES 2013), 2013. ACM. Details BibTeX
  • Kai Huang, Gang Chen, Nadine Keddis, Michael Geisinger and Christian Buckl. Demo Abstract: An Inverted Pendulum demonstrator for Timed Model-based Design of Embedded Systems. In 2012 IEEE/ACM Third International Conference on Cyber-Physical Systems (ICCPS), pages 224, 2012. Details DOI BibTeX
  • Christian Buckl and Michael Geisinger. Middleware-Architekturen zur Integration von Systemen in Systems-of-Systems. In Tagungsband Embedded Software Engineering Kongress, pages 38–42, Sindelfingen, Germany, 2011. Details BibTeX


Michael Geisinger


Product information sheet (.pdf)
Apache License Version 2.0

Current version: v0.12.1 was released on October 20, 2015.


  • Java 8 is required to run CHROMOSOME Modeling Tool.
  • Please ensure to update XME and CHROMOSOME Modeling Tool always to the same consistent version number!


API documentation:
Latest – v0.12.1 –v0.12 –v0.11 – v0.10 MS1 – v0.9

Installation & Tutorial v0.12.1 (.pdf)
Modeling Tool Windows 64bit v0.12.1 (.zip)
Modeling Tool Windows 32bit v0.12.1 (.zip)
Modeling Tool Linux 64bit 0.12.1 (.tar.gz)
Modeling Tool Linux 32bit 0.12.1 (.tar.gz)
Source package v0.12.1 (.zip)
Source package v0.12.1 (.tar.gz)
Binaries for Linux 64bit v0.12.1
Binaries for Windows 32bit v0.12.1

Mailing lists:

Previous version: v0.11 was released on April 1, 2015.
Installation & Tutorial v0.11 (.pdf)
Source package v0.11 (.zip)
Source package v0.11 (.tar.gz)
Binaries for Linux 64bit v0.11
Binaries for Windows 32bit v0.11

Previous version: v0.10 MS1 was released on October 24, 2014.
Installation & Tutorial v0.10 MS1 (.pdf)
Source package v0.10 MS1 (.zip)
Source package v0.10 MS1 (.tar.gz)
Binaries for Linux 64bit v0.10 MS1
Binaries for Windows 32bit v0.10 MS1

Previous version: v0.9 was released on July 1, 2014.
Installation & Tutorial v0.9 (.pdf)
Source package v0.9 (.zip)
Source package v0.9 (.tar.gz)
Binaries for Linux 64bit v0.9
Binaries for Windows 32bit v0.9

Previous version: v0.8.2 was released on May 23, 2014.
Installation & Tutorial v0.8.2 (.pdf)
Source package v0.8.2 (.zip)
Source package v0.8.2 (.tar.gz)
Binaries for Linux 64bit v0.8.2
Binaries for Windows 32bit v0.8.2

Previous version: v0.7 was released on December 20, 2013.
Installation & Tutorial v0.7 (.pdf)
Source package v0.7 (.zip)
Source package v0.7 (.tar.gz)
Binaries for Linux 64bit v0.7
Binaries for Windows 32bit v0.7

Previous version: v0.6 was released on October 31, 2013.
Installation & Tutorial v0.6 (.pdf)
Source package v0.6 (.zip)
Source package v0.6 (.tar.gz)
Binaries for Linux 64bit v0.6
Binaries for Windows 32bit v0.6

Previous version: v0.5 was released on September 2, 2013.
Installation & Tutorial v0.5 (.pdf)
Source package v0.5 (.zip)
Source package v0.5 (.tar.gz)
Binaries for Linux 64bit v0.5
Binaries for Windows 32bit v0.5

Previous version: v0.4 was released on July 17, 2013.
Installation & Tutorial v0.4 (.pdf)
Source package v0.4 (.zip)
Source package v0.4 (.tar.gz)
Binaries for Linux 64bit v0.4
Binaries for Windows 32bit v0.4

Previous version: v0.3 was released on May 29, 2013.
Installation & Tutorial v0.3 (.pdf)
Source package v0.3 (.zip)
Source package v0.3 (.tar.gz)
Binaries for Linux 64bit v0.3
Binaries for Windows 32bit v0.3