Ein praxisnaher Kurs mit klarer Hardwareausrichtung für sicheres Embedded Development in Rust. An den ersten beiden Tagen stehen Setup, Peripherie, Timing und zuverlässiges Debugging auf dem Gerät im Mittelpunkt. Der dritte Tag ergänzt Optimierung, robuste Fehlerpfade, Deployment und grundlegende Sicherheit.
Sie richten no_std Projekte ein, arbeiten sicher mit Vendor HALs und strukturieren Treiber mit klarer Ownership. Sie testen und debuggen auf dem Zielgerät, beurteilen Energie und Speicher und paketieren Firmware teamtauglich. Sie optimieren kritische Pfade, härten die Fehlerbehandlung, planen Updates und setzen Sicherheitsbasics um.
*Wir wissen, dass jedes Team seine eigenen Bedürfnisse und Anforderungen hat. Deshalb können wir den Schulungsplan je nach Bedarf anpassen.
Modul 1: Embedded Rust Ökosystem und Projektsetup
• Zielplattform wählen, Toolchains und Cross Compilation
• no_std, alloc, Speicherlayout und Linker Grundlagen
• Panic Verhalten, Logging mit defmt und Konfiguration über Feature Flags
• Board Support Packages vs Vendor HALs und sinnvolle Einsätze
Modul 2: Sicheres I/O mit HALs
• GPIO Muster für Input und Output sowie Entprellung
• Timer für Delays, Zeitbasis und periodische Aufgaben
• Taktquellen verstehen und Auswirkungen auf Timing und Leistung
• Gerätetreiber strukturieren und Hardware von Anwendungslogik trennen
Modul 3: Serielle und Sensor Kommunikation
• UART für Logs und einfache Protokolle
• I2C und SPI Transaktionen, Adressierung und Fehlerbehandlung
• Einfachen Sensor oder Peripherie über vorhandenen Treiber einbinden
• Hinweise zu Durchsatz, Puffern und Backpressure
Modul 4: Interrupts und Task Struktur
• Interrupt Sicherheit, kritische Abschnitte und Shared State Muster
• Nebenläufigkeit mit RTIC oder Embassy auf hohem Niveau
• DMA nutzen, wo Timing vereinfacht und CPU Last sinkt
• Kleinen Event Loop mit klaren Ownership Grenzen entwerfen
Modul 5: On Target Tests und Debugging
• probe-rs Ablauf für Flashen und Breakpoints
• Logs und Metriken auf dem Gerät mit defmt lesen
• Assert, unwrap und Fehlerstrategien sicher für Mikrocontroller
• Minimale Traces für Post Mortem Analysen erfassen
Modul 6: Energie, Leistung und Robustheit
• Schlafmodi, Clock Gating und praktische Stromspartipps
• Fehlerfälle, Watchdogs und Brownout Szenarien handhaben
• Speicherbedarf, Stack Größen und Fragmentierung vermeiden
• Einfache Performancemessungen und sinnvolle Optimierungszeitpunkte
Modul 7: Packaging und Konfigurationsmanagement
• Reproduzierbare Builds, Profile und Linker Einstellungen
• Konfiguration über Features und Build Parameter
• Firmware versionieren und Änderungsnotizen pflegen
• Artefakte und Dokumentation für Teamübergaben bereitstellen
Modul 8: Zusammenspiel in einer kleinen Anwendung
• Minimalen Funktionsumfang definieren und Aufgaben Peripherie zuordnen
• I/O, Timing und einen Kommunikationskanal verdrahten
• Logging, einfache Fehlerbehandlung und Health Check ergänzen
• Kurze Checkliste für Flashen, Smoke Test und Release vorbereiten
Modul 9: Firmware Optimierungsmethoden
• Hotspots messen mit Cycle Countern, Timestamps und leichten Probes
• Cargo Profile, LTO, panic=abort, Codegen Units und Size versus Speed Abwägungen
• Hot Paths säubern Busy Waits vermeiden, DMA bevorzugen, Interrupt Prioritäten justieren
• Zero Cost Muster Allokation vermeiden, Inlining und statische Bindung nutzen
Modul 10: Robuste Fehlerbehandlung für Geräte
• no_std taugliche Fehlertypen Result, eigene Enums und kompakte Codes
• APIs ohne Panic Retries, Backoff und begrenzte Queues
• Zentrale Meldung Health Flags, Zähler und sparsame Telemetrie
• Sichere Recovery Strategien Watchdog Reset, Notlaufmodi und persistente Fehlermarker
Modul 11: Deployment, Updates und Diagnostik
• Bootloader Varianten und A/B Slots mit sauberer Versionierung
• Updatewege Kabel, Feld oder OTA Anforderungen und Randbedingungen
• Einstellungen und Persistenz Layouts Wear Leveling und Schemaweiterentwicklung
• Provisionierung im Maßstab eindeutige IDs, Schlüssel und reproduzierbare Flash Checklisten
Modul 12: Sicherheit auf Mikrocontrollern
• Threat Modeling für Embedded Angriffsflächen Debug, Firmware, Kommunikation, Speicher
• Härtung Build und Laufzeit cargo audit, clippy, unsafe Reviews, MPU sofern vorhanden
• Kryptografie Grundlagen bewährte Crates, RNG, Schlüsselhandhabung, Timing Aspekte
• Sichere Kommunikation und Zugriff Debug Ports sperren, Secure Boot Voraussetzungen, Zertifikats oder Token basiertes Pairing
Praxisnahes Lernen mit erfahrenen Dozenten bei Ihnen vor Ort für Organisationen.
Erlernen Sie neue Fähigkeiten unter Anleitung erfahrener Lehrer von überall.
You can participate in a Public Course with people from other organisations.
/per trainee