embassy

Community

Efficient Async/await Programming for Embedded Systems

Authornjfdev
Version1.0.0
Installs0

System Documentation

What problem does it solve?

Embassy helps solve the challenge of asynchronous programming in embedded systems, particularly when working with no_std environments and task executors.

Core Features & Use Cases

  • Async Executor: Enables no-alloc, no-heap task execution with a single stack, and replaces kernel context switching.
  • Low Power Management: Auto-sleeps during idle times, wakes via interrupts, ideal for battery-powered devices.
  • Key Crates: Offers crates like embassy-executor, embassy-time, and embassy-sync for async task runtime, timers, and synchronization primitives.
  • HAL Support: Compatible with STM32, nRF, RP, MSPM0, ESP32, and RISC-V for various embedded platforms.

Quick Start

To initialize an embassy executor in Rust, run: ```rust use embassy_executor::Spawner;

#[embassy_executor::main] async fn main(spawner: Spawner) { spawner.spawn(background_task()).unwrap(); // Main task continues... }

Dependency Matrix

Required Modules

None required

Components

scriptsreferencesassets

💻 Claude Code Installation

Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.

Please help me install this Skill:
Name: embassy
Download link: https://github.com/njfdev/ncssm_hpr_2025_payload/archive/main.zip#embassy

Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
View Source Repository

Agent Skills Search Helper

Install a tiny helper to your Agent, search and equip skill from 620,000+ vetted skills library on demand.