Plan du cours
Getting Started with Embedded Rust
- Overview of no_std, core, and embedded Rust ecosystem
- Choosing a target and understanding target triples
- Setting up rustup, cargo, and target toolchains
Tooling, Build & Debug Workflow
- Using cargo, cargo-embed, probe-run, and OpenOCD workflows
- Flashing and debugging with hardware probes (ST-Link, JLink)
- CI considerations for building embedded Rust firmware
Hardware Abstraction and Peripheral Access
- Understanding embedded-hal traits and driver patterns
- Peripheral access crates (PACs) and device crates (svd2rust)
- Writing and using HAL drivers and board support crates (BSCs)
Memory Safety, Concurrency & Real-Time
- Safe patterns for shared state and mutable references in interrupts
- RTIC and other concurrency models for real-time systems
- Heap vs. stack usage, allocators, and avoiding dynamic allocation
Error Handling, Testing & Reliability
- Error handling patterns in constrained environments
- Unit testing on host vs. integration testing on hardware
- Fault analysis, logging, and post-mortem strategies
Performance, Power & Resource Optimization
- Benchmarking, measurement, and optimizing hot paths
- Code size reduction techniques and linker scripts
- Power management strategies and low-power design patterns
Deployment, Security & Ecosystem Best Practices
- Secure boot, firmware signing, and update strategies
- Supply-chain considerations and dependency management
- Roadmap for migrating C firmware to Rust and community resources
Summary and Next Steps
Pré requis
- An understanding of core Rust concepts: ownership, borrowing, lifetimes
- Experience writing non-trivial Rust programs (intermediate Rust)
- Familiarity with embedded concepts: memory-mapped I/O, interrupts, peripherals
Audience
- Embedded firmware engineers looking to adopt Rust
- Software engineers with Rust experience transitioning to low-level systems
- Technical leads evaluating Rust for embedded product development
Nos clients témoignent (5)
Il répond à mes questions très bien expliquées.
Khaled Almarzooqi - Beamtrail
Formation - Circuits and Electronics Fundamentals
Traduction automatique
Sean était un orateur dynamique et les exercices pratiques étaient très intéressants, je peux voir comment ils seront vraiment applicables.
Temira Koenig - Yeshiva University
Formation - Raspberry Pi for Beginners
Traduction automatique
Que le formateur s'adapte à nos besoins
Eduardo Fontecha - ORMAZABAL PROTECTION & AUTOMATION S.L.U.
Formation - The Yocto Project - An Overview - hands-on
Traduction automatique
Le formateur était vraiment gentil et bien informé, il a fait un effort supplémentaire pour m'expliquer des choses que je ne connaissais pas.
Felix - Microchip Technology Inc
Formation - Embedded C Application Design Principles for Automotive Professionals
Traduction automatique
L'acquisition de connaissances utiles et la clarification de certaines choses dont j'étais incertain précédemment.
Kenneth Mahoney - University of Glasgow
Formation - Arduino: Programming a Microcontroller for Beginners
Traduction automatique