arduino-code-generator

Generate Arduino and embedded C++ snippets for sensors, actuators, buses, state machines, timing, data logging, and hardware abstraction. Use when a user requests implementation code and provide the exact board, framework, toolchain, pins, voltage, memory, and library versions first. Bundled templat

By wedsamuel1230 · 355 installs

npx skills add wedsamuel1230/arduino-skills --skill arduino-code-generator

Source repository · Upstream listing

Arduino Code Generator Generate production quality Arduino code snippets for sensors, actuators, communication, and embedded patterns. Quick Start Browse example sketches: List available patterns: Generate code for specific pattern and board: Interactive mode: Target Gate Read [the shared contract](../../docs/arduino skill contract.md) and the board profile before selecting pins, APIs, or libraries. Keep board specific branches isolated, check memory and peripheral constraints, and state whether the result has build proof only or also has upload, hardware, and system proof. The generator's board flag is a template selector, not evidence that the generated code works on a similar looking board. Resources examples/ 9 production ready example sketches (one per pattern category) examples/README.md Detailed documentation for each example with wiring diagrams scripts/generate snippet.py CLI tool for code generation with 9 pattern templates scripts/verify patterns.ps1 Compile examples for UNO/ESP32/RP2040 (PowerShell) scripts/verify patterns.sh Compile examples for UNO/ESP32/RP2040 (bash) assets/workflow.mmd Mermaid diagram of code generation workflow Supported Patterns Hardware Abstraction Multi board config.h with conditional compilation Pin definitions for UNO/ESP32/RP2040 Memory budget tracking See [patterns config.md](references/patterns config.md) Example: [config example.ino](examples/config example.ino) Sensor Reading & Filtering ADC noise reduction (moving average, median, Kalman) DHT22, BME280, analog sensors Data validation and calibration See [patterns filtering.md](references/patterns filtering.md) Example: [filtering example.ino](examples/filtering example.ino) Input Handling Software button debouncing Edge detection (PRESSED/RELEASED/LONG PRESS) Multi button management See [patterns buttons.md](references/patterns buttons.md) Example: [buttons example.ino](examples/buttons example.ino) Communication I2C device scanning and diagnostics SPI configuration UART/Serial protocols CSV data output See [patterns i2c.md](references/patterns i2c.md) and [patterns csv.md](references/patterns csv.md) Examples: [i2c example.ino](examples/i2c example.ino), [csv example.ino](examples/csv example.ino) Timing & Concurrency Non blocking millis() patterns Task scheduling without delay() Priority based schedulers State machines See [patterns scheduler.md](references/patterns scheduler.md) and [patterns state machine.md](references/patterns state machine.md) Examples: [scheduler example.ino](examples/scheduler example.ino), [state machine example.ino](examples/state machine example.ino) Hardware Detection Auto detect boards (UNO/ESP32/RP2040) SRAM usage monitoring Sensor fallback strategies Adaptive configuration See [patterns hardware detection.md](references/patterns hardware detection.md) Example: [hardware detection example.ino](examples/hardware detection example.ino) Data Persistence EEPROM with CRC validation SD card FAT32 logging Wear leveling for EEPROM Buffered writes See [patterns data logging.md](references/patterns data logging.md) Example: [data logging example.ino](examples/data logging example.ino) Code Generation Workflow [ ] [Identify Pattern Type](workflow/step1 identify pattern.md) Analyze user request to determine core pattern category [ ] [Read Reference Documentation](workflow/step2 read reference.md) Consult pattern specific reference files for implementation details [ ] [Generate Code](workflow/step3 generate code.md) Create production ready code following quality standards [ ] [Provide Instructions](workflow/step4 provide instructions.md) Include wiring diagrams and usage guidance [ ] [Mention Integration](workflow/step5 mention integration.md) Suggest combinations with other patterns when relevant Quality Standards & Rules [ ] [Quality Standards](rules/quality standards.md) Compilation, timing, memory safety, and error handling requirements [ ] [Board Optimization](rules/board optimization.md) UNO, ESP32, and RP2040 specific optimizations and features [ ] [Common Pitfalls](rules/common pitfalls.md) Critical mistakes to avoid in Arduino development Code Output Template [ ] [Code Template](templates/code output template.md) Standardized structure for generated Arduino sketches Resources examples/ 9 production ready example sketches (one per pattern category) examples/README.md Detailed documentation for each example with wiring diagrams scripts/generate snippet.py CLI tool for code generation with 9 pattern templates assets/workflow.mmd Mermaid diagram of code generation workflow workflow/ Step by step code generation process rules/ Quality standards and board specific optimizations templates/ Code output templates and structure guidelines references/ Detailed pattern documentation and API references references/README.md Reference structure and formatting guide Shared Output Contract Use [the shared Arduino skill contract](../../docs/arduino skill contract.md): state assumptions, required tools and versions, implementation steps, tests/evidence by proof stage, known limitations, and recovery/security notes.