はじめる前に
次を準備してください。
- ターミナルアプリ(下の推奨を参照)
- 作業するファームウェアプロジェクト(なければ新規作成)
推奨ターミナル
macOS / Linux では Ghostty を推奨します。macOS (Homebrew):brew install --cask ghostty
Linux:# ディストリ別の手順: https://ghostty.org/docs/install
Windows では Alacritty を推奨します。winget:winget install Alacritty.Alacritty
Scoop:
ステップ 1: Embedder をインストールして起動
curl -fsSL https://embedder.com/install | bash
ネイティブインストールはバックグラウンドで自動更新され、常に最新状態を保ちます。
irm https://embedder.com/install | iex
ネイティブインストールはバックグラウンドで自動更新され、常に最新状態を保ちます。
プロジェクトディレクトリで起動します。
ステップ 2: アカウントにログイン
初回の対話セッション開始時はログインが必要です。
embedder
# 初回起動時にログインを求められます
画面の指示に従ってログインしてください。Web アプリが自動で開かない場合は、表示されたリンクをクリックします。
ログイン後は認証情報が保存されます。アカウントを切り替える場合は /logout を使います。
ステップ 3: 最初のセッションを開始
cd /path/to/your/project
embedder
プロジェクト選択画面が表示されます。
プロジェクト作成
プラットフォーム選択
起動後、Embedder はハードウェアプラットフォームの選択を求めます。検索ボックスで絞り込み、矢印キーで選択、Enter で確定します。
使用ハードウェアに合うプラットフォームを選択してください。Embedder は公式ドキュメントを根拠に回答・コード生成を行います。
カスタムプラットフォームの追加は 一般的なワークフロー を参照してください。
周辺機器選択
プラットフォーム選択後、周辺機器の設定を行います。
検索ボックスで部品を探し、矢印キーで移動、スペースキーで選択を切り替えます。完了したら Enter を押します。
カスタム周辺機器の追加は 一般的なワークフロー を参照してください。
周辺機器の設定は後から /peripherals で変更できます。
ステップ 4: 最初の質問をする
プラットフォームと周辺機器の設定後、自然言語でハードウェアに関する質問ができます。Embedder はデータシート、リファレンスマニュアル、エラッタを自動参照します。デバイス接続時はシリアル出力もリアルタイムで読み取ります。
例:
tell me about the nrf9151 gps capabilities
コードベースへの質問も可能です。
what does this project do?
where is the main entry point?
explain the folder structure
Embedder は必要に応じてファイルやデータシートを読みます。手動で大量のコンテキストを渡す必要はありません。
ステップ 5: 最初のコード変更
まずは簡単なタスクを試します。
add a function to toggle the LED on GPIO pin 13
Embedder は次を行います。
- 対象ファイルを特定
- データシートの関連レジスタ定義を確認
- 参照付きで変更案を提示
- 承認を要求
- 変更を適用
明示しない限り、Embedder はファイル変更前に必ず確認を取ります。
ステップ 6: Git 操作
会話形式で Git 操作できます。
what files have I changed?
commit my changes with a descriptive message
より複雑な操作も可能です。
create a new branch called feature/uart-driver
show me the last 5 commits
help me resolve merge conflicts
ステップ 7: バグ修正または機能追加
問題をそのまま説明してください。
my SPI peripheral isn't responding - help me debug
またはエラーを貼り付けます。
I'm getting a hard fault when I call HAL_UART_Transmit - why?
Embedder は通常、次を実施します。
- データシートとの整合チェック
- よくある設定ミスの確認
- MCU の既知エラッタとの照合
- 修正案の提示と検証
ステップ 8: 他の定番ワークフロー
ドライバ作成
write an I2C driver for the BME280 temperature sensor
周辺機器設定
set up PWM on Timer 2 with a 1kHz frequency
初期化コード生成
initialize the ADC for 12-bit resolution on channel 5
別プラットフォームへ移植
help me port this STM32 driver to nRF52
詳細は 一般的なワークフロー を参照してください。
Embedder には「データシートを熟知したファームウェアエンジニア」に話す感覚で質問すると効果的です。
次のステップ
ベストプラクティス と 一般的なワークフロー を続けて読むのがおすすめです。
ヘルプ
- Embedder 内:
/help
- ドキュメント: 各ガイドページ
- コミュニティ: Discord で質問