diff --git a/README.md b/README.md index 56a6877..39d0016 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,69 @@ # arduino_esp32_a2dp -arduino版esp32_a2dp Bluetoothスピーカー + +ESP32-WROOM-32E を使用した、Arduino版 A2DP Bluetoothスピーカーのファームウェアリポジトリです。GitHub Actions を利用して、ブラウザ上だけでファームウェアの書き換えとビルドが行えます。 + +## 手順 + +### 1. リポジトリのフォーク +1. GitHub アカウントを作成してサインインします。 +2. [jcodeorg/arduino_esp32_a2dp](https://github.com/jcodeorg/arduino_esp32_a2dp) を開き、右上の **【Fork】** ボタンを押してご自身のアカウントにコピーを作成します。 + +### 2. ファームウェア(設定)の編集 +1. フォークしたリポジトリで `/firmware/firmware.ino` を開きます。 +2. 編集(鉛筆アイコン)ボタンを押し、以下の箇所の文字列を好みに合わせて変更します: + - **OLED初期表示(91行目付近):** `"BTスピーカー5.2"` + - **Bluetoothデバイス名(111行目付近):** `"BT_Speaker5.2"` +3. 編集後、右上の **【Commit Changes...】** をクリックして保存します。 + +### 3. GitHub Actions の有効化と実行 +1. 上部タブメニューから **【Actions】** を選択します。 +2. 初回のみ表示される **【I understand my workflows, go ahead and enable them】** をクリックします。 +3. 上部タブメニューの **【Code】** に戻り、`README.md` などを適当に編集して **【Commit Changes...】** を行うと、ビルドが自動開始されます。 + +### 4. ビルドファイルのダウンロード +1. 上部タブメニューの **【Actions】** を選択します。 +2. 進行中のビルドを選択します(約1分で完了します)。 +3. ビルド完了後、ページ下部の **Artifacts** にあるダウンロードアイコンをクリックし、`esp32-a2dp-firmware.zip` を取得します。 + +--- + +### 解凍後の確認 +ダウンロードした ZIP ファイルを解凍し、以下の3つのファイルが含まれているか確認してください: + +* `bootloader.bin` +* `firmware.bin` +* `partitions.bin` + +--- + +## デバイスへの書き込み手順 + +1. ESP32 デバイスを PC に USB ケーブルで接続します。 +2. ブラウザで [ESP Flash Tool (esptool-js)](https://espressif.github.io/esptool-js/) を開きます。 +3. **【Connect】** ボタンをクリックし、接続された ESP32 のシリアルポートを選択して接続します。 +4. **【Add File】** ボタンを使い、以下のアドレス(オフセット)とファイルの組み合わせで 3 つのファイルをセットします: + + | アドレス | ファイル名 | + | :--- | :--- | + | **`0x1000`** | `bootloader.bin` | + | **`0x8000`** | `partitions.bin` | + | **`0x10000`** | `firmware.bin` | + +5. 設定項目(Flash Mode / Flash Frequency / Flash Size)は **「Keep」** のままで問題ありません。 +6. **【Program】** ボタンをクリックして書き込みを開始します。 +7. 画面に以下のメッセージが表示されれば書き込み完了です: + + ```text + Hash of data verified. + Leaving... + Hard resetting via RTS pin... + + +--- + +## 動作確認 + +デバイスのリセットボタンを押すか、USB を抜き差しして再起動し、以下を確認してください: + ++ OLED ディスプレイに初期文字列が表示されること ++ スマホ等の Bluetooth 設定からペアリングし、音声が正常に再生できること \ No newline at end of file