‹ 首页

zephyr-foundations

@beriberikix · 收录于 昨天 · 上游提交 2 个月前

Foundational skills for Zephyr RTOS development. Covers essential Embedded C patterns (BIT, CONTAINER_OF), real-time concurrency primitives (mutexes, semaphores, spinlocks), hardware literacy (datasheet-to-DTS mapping), and defensive programming. Trigger when writing core application logic, drivers, or troubleshooting foundational behavior.

适合你,如果在 Zephyr RTOS 上开发嵌入式应用或驱动

/ 通过 npx 安装 校验哈希
npx oh-my-skill add beriberikix/zephyr-agent-skills/zephyr-foundations
/ 通过 bash 安装
curl -fsSL https://oh-my-skill.com/install.sh | bash -s -- beriberikix/zephyr-agent-skills/zephyr-foundations
/ 已经装过?验证本机副本,不用重装
npx oh-my-skill verify beriberikix/zephyr-agent-skills/zephyr-foundations
安装目标可用 --agent / --scope 或 --to 明确指定;省略时只会在唯一已存在的 agent 目录上自动选择,零命中或多命中会停止并提示。content_hash 缺失或不一致均拒装。
58GitHub stars
~541最小装载
~2.1K含声明引用
~2.2K文本包总量
索引托管

怎么用

商店整理自技能原文 · 版本 ed63cdf · 表述以原文为准
它做什么

装上后,Claude 能帮你编写 Zephyr RTOS 的底层代码,包括嵌入式 C 宏(如 BIT、CONTAINER_OF)、多线程并发(互斥锁、信号量等)、硬件设备树映射以及防御性编程(错误码检查、断言)。

什么时候触发

当你要编写 Zephyr 的核心应用逻辑、驱动程序,或者排查基础行为(如并发问题、错误返回)时触发。

装好后可以这样说
Claude 会生成使用该宏的 C 代码。
Claude 会提供互斥锁的初始化与锁定示例。
Claude 会分析代码并给出修复建议。
技能原文 SKILL.md作者撰写 · Apache-2.0 · ed63cdf

Zephyr Foundations

Mastering the bedrock of Zephyr is essential for writing efficient, robust, and idiomatic code.

Core Workflows
1. Idiomatic C Patterns

Zephyr uses specific macros to manage memory and hardware-software mapping.

  • Reference: [zephyr_macros.md](references/zephyr_macros.md)
  • Key Tools: CONTAINER_OF, BIT(), GENMASK(), ARRAY_SIZE.
2. Real-Time Concurrency

Safe multi-threading and interrupt handling are critical for stability.

  • Reference: [concurrency.md](references/concurrency.md)
  • Key Tools: k_mutex, k_sem, k_spinlock, atomic_t, ISR safety rules.
3. Hardware Literacy (Devicetree)

Understanding how code interacts with the hardware description.

  • Reference: [devicetree_basics.md](references/devicetree_basics.md)
  • Key Tools: Nodes, properties, phandles, overlays, and advanced deletion.
4. Robust Error Handling

Preventing crashes through defensive programming.

  • Reference: [error_handling.md](references/error_handling.md)
  • Key Tools: errno.h, BUILD_ASSERT, validation patterns, return code checking.
Quick Start (Defensive Pattern)
int sensor_read_checked(const struct device *dev)
{
  if (dev == NULL || !device_is_ready(dev)) {
    return -ENODEV;
  }

  return 0;
}
Validation Checklist
  • [ ] Shared bit-field logic uses Zephyr macros (BIT, GENMASK) instead of raw literals.
  • [ ] Thread-shared state is protected with mutex/spinlock/atomic primitives.
  • [ ] Error paths return standard negative errno codes.
  • [ ] Defensive guards exist for null pointers, bounds, and device readiness checks.
Automation Tools
  • [errno_return_check.py](scripts/errno_return_check.py): Detect likely non-negative errno return statements in C/C++ code.
Examples & Templates
  • [template_driver.c](assets/foundation_examples/template_driver.c): A complete skeleton showing how to combine DT macros, mutexes, and config-data separation.
Resources
  • [References](references/):
  • zephyr_macros.md: Essential macros (BIT, CONTAINER_OF, etc.).
  • concurrency.md: Mutexes, Semaphores, Spinlocks, and ISR safety.
  • devicetree_basics.md: Devicetree syntax and overlay patterns.
  • error_handling.md: Error codes and defensive programming.
  • [Scripts](scripts/):
  • errno_return_check.py: Return-code sign checker.
  • [Assets](assets/):
  • foundation_examples/: Working code templates for drivers and logic.
按 Apache-2.0 许可原样转载,未经改动 · 在 GitHub 查看 →

评论

登录即可评论;带「已验证安装」的,是发布者名下有本店的安装或持有记录。