mcpField
A
arduino-code-generator

arduino-code-generator

github.com/wedsamuel1230開発28412 回インストール2 週間前に更新
リポジトリ

arduino-code-generator について

arduino-code-generatorは、センサー、アクチュエーター、通信、組み込みパターン向けのArduinoコードを生成するスキルです。CLIやパターンテンプレートに加え、ボードに応じた開発ガイダンスを備えています。

主な機能

  1. 019種類のパターンテンプレートからコード生成
  2. 02CLIでパターンとボードを選択
  3. 03UNO、ESP32、RP2040向けの例
  4. 04フィルタリング、スケジューリング、I2C、ロギングに対応
  5. 05ボードごとのメモリと周辺機器のガイダンス

活用シーン

  1. 01ESP32向けのI2Cスケッチ作成
  2. 02デバウンス付きボタン処理コードの生成
  3. 03ノンブロッキングなタスクスケジューラーの例作成
  4. 04ピン選択前のボード制約の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/wedsamuel1230/embedded-engineering-skills --skill arduino-code-generator

インストール後、Claude Code で/arduino-code-generatorを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/
workflow.mmd
examples/
buttons-example.ino
config-example.ino
csv-example.ino
data-logging-example.ino
filtering-example.ino
hardware-detection-example.ino
i2c-example.ino
README.md
scheduler-example.ino
state-machine-example.ino
references/
patterns-buttons.md
patterns-config.md
patterns-csv.md
patterns-data-logging.md
patterns-filtering.md
patterns-hardware-detection.md
patterns-i2c.md
patterns-scheduler.md
patterns-state-machine.md
README.md
rules/
board-optimization.md
common-pitfalls.md
quality-standards.md
scripts/
generate_snippet.py
verify_patterns.ps1
verify_patterns.sh
templates/
code-output-template.md
workflow/
step1-identify-pattern.md
step2-read-reference.md

詳細

Arduino コードジェネレーター

センサー、アクチュエーター、通信、組み込みパターン向けに、製品品質の Arduino コードスニペットを生成します。

クイックスタート

サンプルスケッチを表示する:

# See 9 production-ready examples in examples/ folder
ls examples/
# config-example.ino, filtering-example.ino, buttons-example.ino,
# i2c-example.ino, csv-example.ino, scheduler-example.ino,
# state-machine-example.ino, hardware-detection-example.ino,
# data-logging-example.ino

利用可能なパターンを一覧表示する:

uv run --no-project scripts/generate_snippet.py --list

特定のパターンとボード向けのコードを生成する:

uv run --no-project scripts/generate_snippet.py --pattern i2c --board esp32
uv run --no-project scripts/generate_snippet.py --pattern buttons --board uno --output button.ino

対話モード:

uv run --no-project scripts/generate_snippet.py --interactive

対象ゲート

ピン、API、ライブラリを選択する前に、共通コントラクトとボードプロファイルを確認してください。ボード固有の分岐は分離し、メモリと周辺機器の制約を確認して、結果がビルド確認のみなのか、アップロード、ハードウェア、システムの確認も行われているのかを明記してください。ジェネレーターのボードフラグはテンプレートの選択に使うものであり、見た目が似たボードで生成コードが動作することの証明にはなりません。

リソース

  • examples/ - 本番環境向けのサンプルスケッチ9点(パターンカテゴリごとに1点)
  • examples/README.md - 各サンプルの詳細な説明と配線図
  • scripts/generate_snippet.py - 9種類のパターンテンプレートを備えたコード生成用CLIツール
  • scripts/verify_patterns.ps1 - UNO/ESP32/RP2040向けのサンプルをコンパイル(PowerShell)
  • scripts/verify_patterns.sh - UNO/ESP32/RP2040向けのサンプルをコンパイル(bash)
  • assets/workflow.mmd - コード生成ワークフローのMermaid図

対応パターン

ハードウェア抽象化
  • 条件付きコンパイルに対応したマルチボード用config.h
  • UNO/ESP32/RP2040向けのピン定義
  • メモリ予算の追跡

patterns-config.mdを参照 | 例:config-example.ino

センサー読み取りとフィルタリング
  • ADCノイズの低減(移動平均、中央値、カルマンフィルター)
  • DHT22、BME280、アナログセンサー
  • データの検証とキャリブレーション

patterns-filtering.mdを参照 | 例:filtering-example.ino

入力処理
  • ソフトウェアによるボタンのデバウンス
  • エッジ検出(PRESSED/RELEASED/LONG_PRESS)
  • 複数ボタンの管理

patterns-buttons.mdを参照 | 例:buttons-example.ino

通信
  • I2Cデバイスのスキャンと診断
  • SPIの設定
  • UART/Serialプロトコル
  • CSVデータ出力

patterns-i2c.mdとpatterns-csv.mdを参照 | 例:i2c-example.ino、csv-example.ino

タイミングと並行処理
  • ノンブロッキングのmillis()パターン
  • delay()を使わないタスクスケジューリング
  • 優先度ベースのスケジューラー
  • ステートマシン

patterns-scheduler.mdとpatterns-state-machine.mdを参照 | 例:scheduler-example.ino、state-machine-example.ino

ハードウェア検出
  • ボードの自動検出(UNO/ESP32/RP2040)
  • SRAM使用量の監視
  • センサーのフォールバック戦略
  • 適応型設定

patterns-hardware-detection.mdを参照 | 例:hardware-detection-example.ino

データ永続化
  • CRC検証付きEEPROM
  • FAT32形式のSDカードへのログ記録
  • EEPROMのウェアレベリング
  • バッファー書き込み

patterns-data-logging.mdを参照 | 例:data-logging-example.ino

コード生成ワークフロー

品質基準とルール

コード出力テンプレート

リソース

  • examples/ - 本番環境で使用できるサンプルスケッチ 9 件(各パターンカテゴリにつき 1 件)
  • examples/README.md - 各サンプルの詳細なドキュメントと配線図
  • scripts/generate_snippet.py - 9 種類のパターンテンプレートを備えた、コード生成用 CLI ツール
  • assets/workflow.mmd - コード生成ワークフローの Mermaid 図
  • workflow/ - コード生成の手順
  • rules/ - 品質基準とボード固有の最適化
  • templates/ - コード出力テンプレートと構成ガイドライン
  • references/ - パターンの詳細なドキュメントと API リファレンス
  • references/README.md - リファレンスの構成と書式ガイド

共通の出力要件

共通の Arduino スキルコントラクトを使用してください: 前提条件、必要なツールとバージョン、実装手順、証明段階ごとのテストと証拠、既知の制限事項、復旧とセキュリティに関する注意事項を示してください。

コメント