ソースに絡まるエスカルゴ

貧弱プログラマの外部記憶装置です。

【Arduino】Seeed Studio XIAO ESP32C3の環境構築

 マイコン関係の商品を眺めていたところ、つい先日に「Seeed Studio XIAO ESP32C3」というマイコンボードが発売されていることを知りました。

 値段が1000円以下と安くてボード自体も小さいですが「ESP32-C3」というESP32系のチップを搭載しており、WiFiBluetoothも使えるという代物で面白そうだったので購入してみました。
 今回はこのSeeed Studio XIAO ESP32C3の環境構築をしてサンプルスケッチを動かすまでの備忘録になります。

 基本的には参考資料にある公式のGetting Startedのページに沿った内容になっているので、詳しくはそちらを参照してください。


 では、始めます。


1:Arduino IDEでボードを使えるようにする
 ESP32系のチップを使用しているので、基本的にはESP32の開発ボードを使えるようにする方法と同じです。

 Arduino IDEを起動させて「ファイル」→「環境設定」を選択します。

 環境設定画面が表示されるので「追加のボードマネージャのURL」の右側にあるアイコンをクリックします。

 以下のURLをコピペして貼り付け、「OK」をクリックします。

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json

 URLが追加されていることを確認して「OK」をクリックします。

 URLの追加ができたら「ツール」→「ボード」→「ボードマネージャ」をクリックします。

 検索欄に「esp32」と入力して出てきたボードの「インストール」ボタンをクリックしてインストールします。

 ダウンロードするファイルサイズが大きいので、完了まで時間がかかる場合があります。

 インストールが完了すると以下のように「INSTALLED」の文字になるので「閉じる」ボタンをクリックして閉じます。

 これでArduino IDEで開発ができるようになりました。


2:サンプルを書き込んで動作確認をする
 実際にサンプルスケッチを書き込んで動くかを確認します。

 公式のGetting StartedのページはLチカをやっていますが、はんだ付けが必要になってくるので今回はシリアル送信の簡単なスケッチを試してみました。

・XIAO_ESP32C3_test.ino

/** 
 *  XIAO ESP32C3のSerialテスト
 */
void setup() {
  Serial.begin(115200);
  Serial.println("--- setup end ---");
}

int count = 1;

void loop() {
  Serial.println(count);
  count++;

  if (count > 20) {
    count = 1;
  }

  delay(1000);
}

 上記スケッチを作成できたら「ツール」→「ボード」→「ESP32 Arduino」→「XIAO ESP32C3」を選択します。かなりスクロールしないとXIAO ESP32C3が出てこないので頑張ってスクロールしてください。

 USBケーブルでPCとSeeed Studio XIAO ESP32C3繋ぎます。PCに認識されるとWindowsの場合は自動的にドライバがインストールされます。

 ボードで「XIAO ESP32C3」が選択されていることを確認し「シリアルポート」から書き込むポートを選択します。他にも色々設定できますが、デフォルトのままでも書き込めるのでそのままでOKです。

 あとは書き込みボタンをクリックしてコンパイルの実行と書き込みを行います。

 書き込みがエラーなく終了した後、Aruduino IDEの右上にある「シリアルプロッタ」をクリックして開きます。

 赤枠部分でプルダウンからボーレートを「115200 bps」にすると、1からカウントアップして20を超えるとまた1に戻ってカウントアップする形で表示されます。


おまけ:リセットボタンとブートボタン
 Seeed Studio XIAO ESP32C3にはリセットボタンとブートボタンの2つのボタンが存在しています。

 公式ページより引用した以下の画像のように左側がブートボタン、右側がリセットボタンとなっています。

 リセットボタンを押下した時の動作としては、一度PCとの接続が途切れて再度接続し直しています。詳しく調べてないので不確定ですが、おそらくソフト的なリセットではなくハード的なリセットをしているような気がしてます。

 ブートボタンについては、ブートボタンを押した状態でPCと接続するとブートローダーモードに入るようです。

 スケッチが書き込めなくなった時はリセットボタンを一度押してから書き込んでみるか、それでもダメならブートローダーモードで接続してから書き込むという方法をすれば良さそうです(未検証)。


 以上がArduino IDEでのSeeed Studio XIAO ESP32C3の環境構築の方法になります。
 値段が安くて小さい上に無線も使えるのでIoT用のマイコンとしては色々使い道がありそうです。

 ただこの記事を書いている時に通販の在庫を確認したらなくなっていたので、ラズパイなどと同じようにこのボードも在庫が少なくなっているようで残念ですね…。


・参考資料