plugins/embedded-dev/skills/implementing-firmware/SKILL.md
Implements ESP-IDF or PlatformIO firmware with mandatory requirement docstring tags and MISRA-C linting. Use when writing embedded C code, implementing firmware features, or adding requirement-traced functions.
npx skillsauth add qte77/claude-code-utils-plugin implementing-firmwareInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Target: $ARGUMENTS
Implement firmware code with mandatory requirement traceability tags, following ESP-IDF or PlatformIO patterns.
Read these before proceeding:
references/esp-idf-patterns.md — Component structure, FreeRTOS, sdkconfig, idf.pyreferences/platformio-patterns.md — platformio.ini, pio commands, library managementreferences/c-safety-rules.md — MISRA-C cppcheck flags, clang-tidy, tagging rulesDetect framework:
CMakeLists.txt + sdkconfig* → ESP-IDFplatformio.ini → PlatformIORead existing requirements — Check for docs/requirements.md to understand which SW-REQs need implementing
Implement code with mandatory docstrings on every new function:
/**
* @brief <What this function does>
*
* @requirement SW-REQ-NNN
* @parent PRD-REQ-NNN
* @test TEST-NNN
*
* @param ...
* @return ...
*/
Create test stubs in test/ with matching @test TEST-NNN references
Lint with cppcheck:
cppcheck --addon=misra.py --std=c11 --enable=all --xml src/ 2> misra-report.xml
Build:
idf.py buildpio runReport — Count tagged functions, list any warnings
@requirement, @parent, and @test tagsESP_ERROR_CHECK, esp_err_t returns)development
Analyzes industry websites for design patterns, layout, typography, and content strategies using first-principles thinking. Use when researching website design, UI patterns, or competitive design analysis.
development
Audits website usability for UX optimization, covering forms, navigation, validation, and microcopy. Use when reviewing user experience, task completion flows, or interface friction points.
development
Audits website accessibility for WCAG 2.1 AA compliance, generating findings and code fixes. Use when reviewing accessibility, keyboard navigation, screen reader compatibility, or inclusive design.
development
Writes tests following TDD (using vitest and @testing-library/react) best practices. Use when writing unit tests, integration tests, or component tests in TypeScript.