セクションの複数ページをまとめています。 印刷またはPDF形式で保存...

もとのページに戻る

2024-04-25 現在

ESP32 へのファームウェアの書き込み方法

TWELITE SPOT に搭載された ESP32 に対するファームウェアの書き込み方法
TWELITE SPOT に搭載された ESP32 へのファームウェアの書き込み方法をご案内します。

1 - ESP32 へのスケッチの書き込み方法

TWELITE SPOT に搭載された ESP32 に対するスケッチの書き込み方法
TWELITE SPOT に搭載された ESP32 への Arduino スケッチの書き込み方法をご案内します。

ホストとの接続

TWELITE R3 / R2 を接続

7P インターフェイス(ESP32 と記載のある側)に TWELITE R3 / R2 を接続してください。

電源を接続

側面の USB-C コネクタ に 5V 電源を供給してください。

接続例 (ESP32)

接続例 (ESP32)

Arduino IDE の操作

スケッチを開く

Arduino IDE を起動して、書き込むスケッチを開いてください。

シリアルポートを選択

ツール -> シリアルポート メニューから、 TWELITE R3 / R2 のポートを選択してください。

シリアルポート選択

シリアルポート選択

ESP32 をプログラムモードで起動

TWELITE SPOT の ESP32 リセットスイッチ EN(RST) と ESP32 ブートスイッチ BOOT を押し、EN(RST) -> BOOT の順で離してください。

ボタンの位置

ボタンの位置

書き込みを実行

Arduino IDEの マイコンボードに書き込む ボタンをクリックしてください。

マイコンボードに書き込む

マイコンボードに書き込む

ESP32 をリセット

書き込みが完了したら、TWELITE SPOT の ESP32 リセットスイッチ EN(RST) を押して離し、ESP32 をリセットしてください。

リセットスイッチの位置

リセットスイッチの位置

書き込み完了画面

書き込み完了画面

2 - ESP32 へのファイルの書き込み方法

TWELITE SPOT に搭載された ESP32 に対するファイルの書き込み方法
TWELITE SPOT に搭載された ESP32 へファイル(data/フォルダ以下のファイル群)を書き込む方法をご案内します。

プラグインの導入

ESP32 のフラッシュ領域へファイルを書き込むための Arduino プラグイン (arduino-esp32fs-plugin) をインストールします。

プラグインのダウンロード

以下のページから、esp32fs.zip を入手します。

Release Update to support Big Sur · lorol/arduino-esp32fs-plugin

プラグインのインストール

  1. ダウンロードした esp32fs.zip を展開してください。

  2. Arduino のスケッチブックの保存場所(Arduino IDE 環境設定に記載。例:C:\Users\foo\Documents\Arduino)に tools フォルダがない場合は、これを作成してください。

  3. tools フォルダに ESP32FS/tool フォルダを作成し、zipファイルから得た esp32ffs.jar ファイルを配置してください。(配置例:C:\Users\foo\Documents\Arduino\tools\ESP32FS\tool\esp32fs.jar)。

  4. Arduino IDE を次に起動した際にプラグインが使用できるようになります。

ホストとの接続

TWELITE R3 / R2 を接続

7P インターフェイス(ESP32 と記載のある側)に TWELITE R3 / R2 を接続してください。

電源を接続

側面の USB-C コネクタ に 5V 電源を供給してください。

接続例 (ESP32)

接続例 (ESP32)

Arduino IDE の操作

スケッチを開く

Arduino IDE を起動して、スケッチを開いてください。

書き込むファイルの配置

  1. スケッチ -> スケッチのフォルダを表示 から、スケッチのフォルダを開いてください。

  2. スケッチファイル(.ino)と同じ階層に、data フォルダを作成してください。

  3. data フォルダ内に、書き込むファイルを配置してください。

シリアルポートを選択

ツール -> シリアルポート メニューから、 TWELITE R3 / R2 のポートを選択してください。

シリアルポート選択

シリアルポート選択

ESP32 をプログラムモードで起動

TWELITE SPOT の ESP32 リセットスイッチ EN(RST) と ESP32 ブートスイッチ BOOT を押し、EN(RST) -> BOOT の順で離してください。

ボタンの位置

ボタンの位置

書き込みを実行

  1. ツール -> ESP32 Sketch Data Upload をクリックしてください。

  2. Select FS for <スケッチ名> /data folder にて、LittleFS を選択してください。

ファイルシステムの選択画面

ファイルシステムの選択画面

  1. OK を押してください。

ESP32 をリセット

書き込みが完了したら、TWELITE SPOT の ESP32 リセットスイッチ EN(RST) を押して離し、ESP32 をリセットしてください。

リセットスイッチの位置

リセットスイッチの位置

3 - ESP32 のパーティションテーブルを指定した書き込み方法

TWELITE SPOT に搭載された ESP32 に対する書き込みにおいて、任意のパーティションテーブルを適用する方法
TWELITE SPOT に搭載された ESP32 へスケッチやファイルを書き込む際に、任意のパーティションテーブルを適用する方法をご案内します。

定義ファイルの作成

パーティションテーブルの定義は、csv ファイルに記述します。

下記の例では、16MB のフラッシュ領域のうち、8MB をファイルシステムで使うように指定しています。

# TWELITE SPOT 16MB with 8MB LittleFS
# Name,  Type, SubType, Offset,   Size,     Flags
nvs,     data, nvs,     0x9000,   0x5000,
otadata, data, ota,     0xE000,   0x2000,
app0,    app,  ota_0,   0x10000,  0x7F0000,
spiffs,  data, spiffs,  0x800000, 0x800000,
  • TWELITE SPOT 16MB with 8MB LittleFS Arduino IDE に表示される名前です。
  • nvs システムで使用する領域です。変更しません。
  • otadata OTA を使う際に使用する領域です。変更しません。
  • app0 ファームウェアを書き込む領域です。
  • spiffs LittleFS ファイルシステムで使用する領域です。

csv ファイル中の Offset および Size 列の単位はバイトで、16進数です。

したがって、上記の例では、ファームウェアとファイルシステムが使えるサイズは下記のように計算できます。

  • app0 のサイズ:0x7F0000 = 8323072 より、7.875MB
  • spiffs のサイズ:0x800000 = 8388608 より、8MB

定義ファイルの登録

Arduino15フォルダ を開き、下記のパスに csv ファイルを追加します。

Arduino15/packages/esp32/hardware/esp32/x.x.x/tools/partitions

x.x.x は Arduino core for the ESP32 のバージョン

パーティションテーブルの適用

Arduino IDE のツールバーから ツール -> Partition Scheme を開き、追加したパーティションテーブルを選びます。

選択したパーティションテーブルが次回以降のファームウェアの書き込みやファイルシステムの書き込みに反映されます。