Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

ボードとツールの追加: ZeroClaw ハードウェアガイド

このガイドでは、ZeroClawに新しいハードウェアボードとカスタムツールを追加する方法について説明します。

クイックスタート:CLIでボードを追加する

sh

# ボードを追加する
zeroclaw peripheral add nucleo-f401re /dev/ttyACM0
zeroclaw peripheral add arduino-uno /dev/cu.usbmodem12345
zeroclaw peripheral add rpi-gpio native   # Raspberry Pi GPIO用(Linux)

# デーモンを再起動して適用
zeroclaw daemon --host 127.0.0.1 --port 42617

サポートされているボード

ボードは USB VID/PID によって識別されます。正規のレジストリは次のとおりです。

ボードアーキテクチャUSB VID:PID
nucleo-f401reARM Cortex-M40x0483:0x374b
nucleo-f411reARM Cortex-M40x0483:0x3748
arduino-unoAVR ATmega328P0x2341:0x0043
arduino-unoArduino Uno Q / ATmega328P0x2341:0x0078
arduino-megaAVR ATmega25600x2341:0x0042
cp2102USB-UARTブリッジ0x10c4:0xea60
cp2102nUSB-UARTブリッジ0x10c4:0xea70
esp32ESP32 (CH340)0x1a86:0x7523
esp32ESP32 (CH340)0x1a86:0x55d4

[[peripherals.boards]] 内の board 値は、これらのレジストリ名(および peripherals/mod.rs で処理される arduino-uno-q / rpi-gpio などのトランスポート固有のエイリアス)と照合されます。

手動設定

ボードは peripherals および peripherals.boards の下で設定します。datasheet_dir(RAG ソース)を含む完全なフィールド一覧については、Config リファレンスを参照してください。

データシートの追加(RAG)

.md または .txt ファイルを docs/datasheets/(または datasheet_dir)に配置します。ファイルはボードごとに命名します: nucleo-f401re.mdarduino-uno.md。ファイルは抽出、チャンク化され、ボード固有の質問に対してエージェントのコンテキストへ取り込まれます。PDF データシートの解析は #8519 以降サポートされなくなりました。インデックス化する前に PDF を .md または .txt に変換してください。

ピンエイリアス(推奨)

エージェントが「red led」→ピン13をマップできるように## Pin Aliasesセクションを追加します:

# My Board

## Pin Aliases

| alias       | pin |
|-------------|-----|
| red_led     | 13  |
| builtin_led | 13  |
| user_led    | 5   |

またはキー値形式を使用します:

## Pin Aliases
red_led: 13
builtin_led: 13

新しいボードタイプの追加

  1. データシートの作成: ピンエイリアスとGPIO情報を含む docs/datasheets/my-board.md
  2. 設定に追加: zeroclaw peripheral add my-board /dev/ttyUSB0
  3. 周辺機器を実装する(オプション): カスタムプロトコルの場合は、crates/zeroclaw-hardware/src/peripherals/Peripheral トレイトを実装し、create_peripheral_tools に登録します。

完全な設計については、docs/hardware/hardware-peripherals-design.mdを参照してください。

カスタムツールの追加

  1. crates/zeroclaw-tools/src/Toolトレイトを実装します。
  2. ハードウェアツールの場合はcreate_peripheral_toolsに、またはエージェントツールレジストリに登録します。
  3. crates/zeroclaw-runtime/src/agent/loop_.rsのエージェントのtool_descsにツール説明を追加します。

CLIリファレンス

zeroclaw peripheralおよびzeroclaw hardwareサブコマンドについては、生成されたCLIリファレンスを参照してください。

トラブルシューティング

  • シリアルポートが見つかりません: macOS では /dev/cu.usbmodem* を使用し、Linux では /dev/ttyACM0 または /dev/ttyUSB0 を使用してください。
  • ハードウェアを使用してビルド: cargo build --features hardware
  • Nucleo用Probe-rs: cargo build --features hardware,probe