Skip to content

Search is only available in production builds. Try building and previewing the site to test it out locally.

Edge Programming with C/C++ and Rust

Welcome to Edge Programming in C/C++ and Rust . This textbook explores the application of modern programming paradigms to edge computing, bridging the gap between high-level software engineering and low-level hardware interactions.

This book provides a comprehensive, hands-on guide to mastering these challenges, focusing on the most critical languages in the embedded space: C/C++ and Rust.

This textbook is designed to take you from foundational embedded concepts to advanced, memory-safe edge architectures. Key areas of focus include:

  • The Foundations of C/C++ at the Edge: Understanding how traditional Object-Oriented Programming (OOP), the C subset of C++, and standard libraries are applied to resource-constrained environments.
  • Modern Tooling: Utilising Git, GitLab, and automated workflows to bring modern software engineering practices to embedded development.
  • The Transition to Rust: A deep dive into modernising edge development. You will learn how Rust’s ownership model, strict compiler, and zero-cost abstractions provide memory safety and concurrency without sacrificing C-level performance.
  • Advanced Edge Capabilities: Extending beyond basic sensors into GUI programming, network programming, and robust concurrency models for edge nodes.
  • Practical Embedded Rust: Applying Rust’s safety guarantees directly to hardware, specifically targeting the ESP32 platform for real-world embedded applications, including code and resource management.

Use the sidebar navigation to progress through the chapters sequentially, or jump directly to specific topics of interest. The material is structured to provide both theoretical grounding and practical, reproducible coding examples.