Speziell für den Einsatz in eingebetteten Systemen mit sehr geringen Speicher- und Rechenressourcen, typischerweise kleinen Mikrocontrollern (z. B. Cortex-M-CPUs) mit und ohne Betriebssystem, steht der Software-Baukasten redBlocks zur Verfügung.
Er umfasst die folgenden Teile:
redBlocks Komponentenbibliothek
Viele für Embedded-Anwendungen typische Anforderungen (z. B. In-Target-Software-Update) lassen sich vollständig durch das Zusammensetzen der quelloffenen und intensiv getesteten redBlocks-Komponenten erfüllen. Anstatt das Rad immer wieder neu zu erfinden, können Sie so Ihre Entwicklungsarbeit auf die für Ihre Applikation spezifischen Aufgaben konzentrieren.
Das Verhalten aller Komponenten lässt sich bereits zur Compile-Zeit flexibel konfigurieren, so dass sich aus den Konfigurationsoptionen keine Nachteile zur Laufzeit ergeben. Die Bibliothek hebt das Potential der Sprache C++ ohne den Overhead, wie er beim Einsatz vieler Standard-Bibliotheken (z. B. STL, Boost) entsteht, indem sie gänzlich auf unkontrollierte dynamische Speicheranforderungen und die Verwendung von Exceptions verzichtet.
redBlocks Simulator
Mit dem redBlocks-Simulator lassen sich mittels grafischer Konfiguration und der Skriptsprache Python jede beliebige Zielhardware und die auf sie wirkenden Umwelteinflüsse nachbilden. In dieser SiL-Umgebung kann die Software sowohl auf dem Entwicklungshost als auch auf Embedded-Targets realitätsnah getestet werden. Diese Tests sind wahlweise manuell oder durch Testskripte vollständig automatisiert durchführbar und können damit eine entscheidende Rolle im Verifikationsprozess der Embedded-Anwendung übernehmen.
redBlocks Workbench
Mit der auf Eclipse basierenden redBlocks-Workbench lassen sich die applikationsspezifischen Softwareteile bequem entwickeln, testen, für die Host-Simulation mit den redBlocks-Komponenten integrieren und debuggen. Bestandteil der redBlocks-Workbench ist das Unit-Test-Framework inklusive Code-Coverage-Analyse, mit dem auch sämtliche redBlocks-Komponenten intensiv getestet sind.