esp32-freertos
Installation
SKILL.md
ESP-IDF FreeRTOS 并发(esp32-freertos)
本 Skill 处理 ESP-IDF 自带的 IDF FreeRTOS(基于 Vanilla FreeRTOS v10.5.1 修改的内核,基线高置信),不是上游原版 FreeRTOS。任务划分、同步原语、栈/优先级、双核绑核。两个最容易踩的差异:栈单位是字节;优先级上限可配(默认 25,以 sdkconfig 为准)。
Determine Task Type
- 并发结构设计 — 划分任务、选队列/信号量/定时器 → Workflow 1。
- 栈/优先级调参 — 栈溢出嫌疑、优先级反转嫌疑 → Workflow 2(栈单位=字节)。
- 双核/SMP 问题 — 绑核、核间竞争、PRO_CPU/APP_CPU → Workflow 3,读 smp-pinning。
- 崩溃现场(panic/backtrace/coredump)→ 移交
esp32-debug。 - 驱动/引脚层的并发(ISR 与外设驱动交互)→ 移交
esp32-peripherals。
Preflight(先运行时核验)
idf.py --version # IDF 版本决定内核版本
grep -E "CONFIG_FREERTOS_(UNICORE|MAX_PRIORITIES)" sdkconfig
grep -nE "xTaskCreate|PinnedToCore|xQueue|Semaphore|portMUX" main/*.c