Embedded Rust
Schulung & Kurs

Embedded Systeme mit Rust entwickeln

Einstieg in die Embedded Programmierung mit Rust, einer sicheren und effizienten Sprache für ressourcenbeschränkte Systeme. Mit dem mächtigen "Ownership"-Modell garantiert Rust Speichersicherheit ohne Laufzeit-Overhead - ideal für Embedded Systeme.

Kurse für Teams:

Gerne führen wir zugeschnittene Kurse für euer Team durch - vor Ort, remote oder in unseren Kursräumen.

In-House Kurs Anfragen

 

Kursinhalt:


- Warum Rust für Embedded Systems - Zero-cost Abstractions und Sicherheit
- Bausteine: Datentypen, Variablen und Stack-basierte Speichernutzung
- no_std und core Library: Programmierung ohne Heap und OS
- Bare Metal Programmierung: Direkte Hardware-Interaktion
- Interrupts und Hardware Abstraction Layer (HAL)
- Ownership und Borrowing: Speichersicherheit ohne Overhead
- Traits und Generics für wiederverwendbaren Embedded Code
- Fehlerbehandlung ohne Exceptions: Der Result-Typ
- Projekte mit Cargo und Cross-Compilation
- Der Borrow Checker: Garantierte Threadsicherheit
- Unit Tests und Embedded Testing Strategien
- Unsafe Rust und FFI für Hardware-Register
- Const Functions und Compile-Time Computation
- Einführung in embedded-hal
- Grundlagen von Real-Time Operating Systems (RTOS)
- Real-Time Programmierung mit Rust und RTIC
- Asynchrone Embedded Programmierung mit Embassy Framework
- Peripherie-Programmierung (GPIO, I2C, SPI)
- Entwicklung von Gerätetreibern
- Heapless Collections und statische Datenstrukturen
- Implementation eines Beispielprojekts auf Mikrocontroller
- Debugging mit JTAG/SWD, probe-rs und defmt Logging


Disclaimer: Der effektive Kursinhalt kann, abhängig vom Trainer, Durchführung, Dauer und Konstellation der Teilnehmer:innen von obigen Angaben abweichen.

Ob wir es Schulung, Kurs, Workshop, Seminar oder Training nennen, wir möchten Teilnehmer/innen an ihrem Punkt abholen und mit dem nötigen praktischen Wissen ausstatten, damit sie die Technologie nach der Schulung direkt anwenden und eigenständig vertiefen können.

Ziel:

Teilnehmer/innen lernen die Rust-Grundlagen für die Entwicklung von sicheren und effizienten Embedded Systemen. Sie können nach dem Kurs selbstständig Firmware für Mikrocontroller entwickeln und Hardware-nahe Projekte umsetzen.


Form:

Themen-Blocks mit kurzer Einführung, Problem Based Learning, Live Coding und gemeinsamem Aufbau eines praktischen Embedded Projekts mit Hardware-Interaktion.


Zielgruppe:

Embedded Software Entwickler und Hardware-nahe Programmierer, die Rust für sichere und effiziente Embedded Systeme einsetzen möchten. Entwickler mit C/C++ Hintergrund sowie Mikrocontroller-Programmierer werden besonders von Rusts Sicherheitsgarantien profitieren.


Voraussetzungen:

Erfahrung in der Entwicklung mit systemnahen Programmiersprachen (z.B. C/C++) sowie grundlegendes Verständnis von Mikrocontroller-Programmierung und Hardware-Interaktion. Grundkenntnisse in digitaler Elektronik (GPIO, UART, I2C, SPI) sind hilfreich, aber nicht zwingend erforderlich.


Vorbereitung:

Jeder Teilnehmer erhält nach der Anmeldung einen Fragebogen zugestellt. Passend zu den Antworten senden wir ein individuelles Feedback. Nach Bedarf kann vor dem Training eine Mini-Setup Session via Remote Session durchgeführt werden (im Training inbegriffen).

In-House Kurs anfragen:

In-House Kurs Anfragen

Trage dich in die Warteliste ein für weitere öffentliche Kurs-Termine. Sobald wir genügend Personen auf der Warteliste haben, klären wir einen möglichst für alle passenden Termin ab und schalten einen neuen Termin auf. Falls du direkt mit zwei Kollegen oder Kolleginnen teilnehmen möchtest, können wir sogar direkt einen öffentlichen Kurs für euch planen.

Warteliste

(Falls ihr bereits mehr 3 Teilnehmer:innen oder mehr habt, klären wir mit euch direkt euren Wunschtermin ab und schreiben den Kurs aus.)

Mehr über Rust



Rust ist eine systemnahe Programmiersprache, die Leistung, Zuverlässigkeit und Produktivität vereint. Durch ihr einzigartiges Ownership-System garantiert sie Speicher- und Thread-Sicherheit zur Kompilierzeit, ohne Garbage Collection oder Laufzeit-Overhead - ideal für Embedded Systems.




History


Rust wurde ursprünglich von Graydon Hoare bei Mozilla Research entwickelt, mit dem Ziel, eine sichere Alternative zu C++ zu schaffen. Das Projekt begann 2006 als persönliches Projekt und wurde 2009 von Mozilla offiziell unterstützt. Die erste stabile Version 1.0 wurde 2015 veröffentlicht.


Die Entwicklung wurde maßgeblich von Niko Matsakis und Aaron Turon geprägt, die das einzigartige Ownership-System und das Trait-basierte Typsystem entwickelten. Die Embedded Rust Working Group wurde gegründet, um die Sprache für Mikrocontroller und Embedded Systems zu optimieren.


Heute ist Rust eine beliebte Wahl für Embedded Systems, da es Sicherheit und Performance ohne Laufzeit-Overhead bietet. Die Sprache wird zunehmend in der Automotive-Industrie, IoT-Geräten und anderen sicherheitskritischen Embedded Systemen eingesetzt. Die starke Community und wachsende Toolchain-Unterstützung machen Rust zu einer zukunftssicheren Wahl für Embedded Entwicklung.