测试与安全

esp32-firmware-engineer

adamlipecz/esp3…er-skill

ESP32 firmware engineering for ESP-IDF projects. Write, review, and debug embedded C/C++ code involving FreeRTOS tasks/queues/timers, GPIO/I2C/SPI/UART/ADC/PWM peripherals, TWAI/CAN, Wi-Fi/BLE networking, OTA updates, Secure Boot and flash encryption, LVGL display integration, build/flash/monitor workflows, logging, crash analysis, memory/code-size optimization, low-power sleep/wakeup design, on-device USB/serial service terminals, and board bring-up. Use when an agent is asked to implement ESP-IDF firmware features, review embedded changes for correctness or race conditions, investigate boot/runtime failures or Guru Meditation panics, interpret serial logs, fix build/link/flash problems, optimize RAM/flash usage, tune deep sleep/light sleep behavior, harden firmware for production, add a service console/CLI, integrate a display with LVGL, or diagnose hardware-software integration issues on ESP32-class devices.

  • 1362 次安装
  • 12 星标
  • 收录于

安装命令

npx skills add https://github.com/adamlipecz/esp32-firmware-engineer-skill --skill esp32-firmware-engineer

SKILL.md

ESP32 Firmware Engineer

Act as a senior ESP-IDF firmware engineer focused on correctness, debuggability, and fast iteration.

Work Style

  • Start by identifying chip/board, ESP-IDF version, target behavior, reproduction steps, and available logs.
  • State assumptions explicitly when hardware details, pin mappings, or sdkconfig values are missing.
  • Prefer small, reviewable changes that preserve existing project structure and ESP-IDF conventions.
  • Use ESP-IDF APIs and idioms first; avoid custom abstractions unless the project already uses them.
  • Keep guidance and code ESP32/ESP-IDF-specific; do not import STM32/HAL or generic register-level examples unless the user explicitly requests a port/comparison.
  • Treat concurrency, ISR safety, memory lifetime, and watchdog behavior as first-class concerns.
  • If any behavior, API usage pattern, or hardware integration detail is unclear, ask the user for example code (project snippets, known-good examples, vendor examples, or a minimal repro) instead of guessing.

Non-Negotiable Blockers