Course Outline

Getting Started with Embedded Rust for Government

  • Overview of no_std, core, and the embedded Rust ecosystem for government applications
  • Selecting a target and understanding target triples for government use cases
  • Setting up rustup, cargo, and target toolchains for government projects

Tooling, Build & Debug Workflow for Government Projects

  • Utilizing cargo, cargo-embed, probe-run, and OpenOCD workflows for government applications
  • Flashing and debugging with hardware probes (ST-Link, JLink) in government environments
  • Continuous integration considerations for building embedded Rust firmware for government systems

Hardware Abstraction and Peripheral Access for Government Systems

  • Understanding embedded-hal traits and driver patterns for government hardware
  • Utilizing peripheral access crates (PACs) and device crates (svd2rust) in government projects
  • Writing and using HAL drivers and board support crates (BSCs) for government applications

Memory Safety, Concurrency & Real-Time for Government Systems

  • Safe patterns for shared state and mutable references in interrupts for government systems
  • RTIC and other concurrency models for real-time government applications
  • Heap vs. stack usage, allocators, and strategies to avoid dynamic allocation in government environments

Error Handling, Testing & Reliability for Government Systems

  • Error handling patterns in constrained environments for government applications
  • Unit testing on host vs. integration testing on hardware for government systems
  • Fault analysis, logging, and post-mortem strategies for government projects

Performance, Power & Resource Optimization for Government Systems

  • Benchmarking, measurement, and optimizing hot paths in government applications
  • Code size reduction techniques and linker scripts for government systems
  • Power management strategies and low-power design patterns for government hardware

Deployment, Security & Ecosystem Best Practices for Government

  • Secure boot, firmware signing, and update strategies for government systems
  • Supply-chain considerations and dependency management in government projects
  • Roadmap for migrating C firmware to Rust and community resources for government agencies

Summary and Next Steps for Government Projects

Requirements

  • A solid understanding of fundamental Rust concepts, including ownership, borrowing, and lifetimes.
  • Practical experience in developing non-trivial programs using intermediate-level Rust.
  • Knowledge of embedded systems principles, such as memory-mapped I/O, interrupts, and peripherals.

Audience

  • Embedded firmware engineers interested in adopting Rust for government projects.
  • Software engineers with Rust experience transitioning to low-level systems development.
  • Technical leads assessing the feasibility of using Rust for embedded product development.
 14 Hours

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories