arduino-code-generator について
arduino-code-generatorは、センサー、アクチュエーター、通信、組み込みパターン向けのArduinoコードを生成するスキルです。CLIやパターンテンプレートに加え、ボードに応じた開発ガイダンスを備えています。
主な機能
- 019種類のパターンテンプレートからコード生成
- 02CLIでパターンとボードを選択
- 03UNO、ESP32、RP2040向けの例
- 04フィルタリング、スケジューリング、I2C、ロギングに対応
- 05ボードごとのメモリと周辺機器のガイダンス
活用シーン
- 01ESP32向けのI2Cスケッチ作成
- 02デバウンス付きボタン処理コードの生成
- 03ノンブロッキングなタスクスケジューラーの例作成
- 04ピン選択前のボード制約の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ wedsamuel1230/ embedded-engineering-skills --skill arduino-code-generatorインストール後、Claude Code で/arduino-code-generatorを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/workflow.mmdexamples/buttons-example.inoconfig-example.inocsv-example.inodata-logging-example.inofiltering-example.inohardware-detection-example.inoi2c-example.inoREADME.mdscheduler-example.inostate-machine-example.inoreferences/patterns-buttons.mdpatterns-config.mdpatterns-csv.mdpatterns-data-logging.mdpatterns-filtering.mdpatterns-hardware-detection.mdpatterns-i2c.mdpatterns-scheduler.mdpatterns-state-machine.mdREADME.mdrules/board-optimization.mdcommon-pitfalls.mdquality-standards.mdscripts/generate_snippet.pyverify_patterns.ps1verify_patterns.shtemplates/code-output-template.mdworkflow/step1-identify-pattern.mdstep2-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
コード生成ワークフロー
- パターンの種類を特定する - ユーザーのリクエストを分析し、主要なパターンのカテゴリを判断します
- リファレンスドキュメントを読む - 実装の詳細について、パターンごとのリファレンスファイルを確認します
- コードを生成する - 品質基準に従って、本番環境で使用できるコードを作成します
- 手順を提示する - 配線図と使用方法を記載します
- 連携について説明する - 関連する場合は、他のパターンとの組み合わせを提案します
品質基準とルール
- 品質基準 - コンパイル、タイミング、メモリ安全性、エラー処理に関する要件
- ボードの最適化 - UNO、ESP32、RP2040 固有の最適化と機能
- よくある落とし穴 - Arduino 開発で避けるべき重大なミス
コード出力テンプレート
- コードテンプレート - 生成する Arduino スケッチの標準構成
リソース
- 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 スキルコントラクトを使用してください: 前提条件、必要なツールとバージョン、実装手順、証明段階ごとのテストと証拠、既知の制限事項、復旧とセキュリティに関する注意事項を示してください。