0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

○○作ってみない?Advent Calendar 2023

Day 14

何でもかんでも「コンソールでやってみない?」3日目

Last updated at Posted at 2023-12-24

ArduinoCLIで出来ること

ArduinoCLIで何が出来るかを簡単にまとめてみましょう。

  1. なんでもできる。

終わりです。

これもCLIアプリの特徴ですが、大半のCLIアプリケーションにおいて、GUIアプリケーションと同等の機能が提供されています。
そのため、プログラムをコンパイルしてESP32に転送することだってできます。

じゃあこのなんでもできるArduinoCLIを使用して、プログラムのコンパイルなどなどしてきましょう。

まずはプロジェクトを用意

今回は既にプロジェクトがあるものとしましょう。
ターミナルで編集する方法については後で話しますね。

ファイル構成として、カレントディレクトリにesp32_ledtestというフォルダがあり、その中にesp32_ledtest.inoというファイルがあるとします。

(これはArduinoのプロジェクトのファイル構成がこんな感じだからです。)

設定の初期化

では早速、arduino-cli config initと実行してみましょう。

これは、ArduinoCLIのユーザー設定を初期化するコマンドです。

ボードの追加

次に、ESP32用の追加のボードマネージャーのURLを設定しましょう。
ArduinoIDEでは設定から簡単に追加できましたが、CLIではどうでしょう。

先ほどのコマンドの実行結果にxxx/arduino-cli.yamlといったパスが表示されたと思います。
この設定ファイルのboard_manager>additional_urlsの中にhttps://espressif.github.io/arduino-esp32/package_esp32_index.jsonを追加してください。

board_manager:
  additional_urls:
    - https://espressif.github.io/arduino-esp32/package_esp32_index.json

こんな感じになりますかね。

そしたら次にarduino-cli core update-indexと実行してみましょう。
これは、インデックスのアップデートなので、ボードマネージャー追加とかしたら実行しておいてあげましょう。

最後にarduino-cli core install esp32:esp32と実行しましょう。
これで、ESP32のボードマネージャーが追加されました。

これが初期セットアップですね。

コンパイルしてみよう

$ arduino-cli compile -b esp32:esp32:esp32 esp32_ledtest -e

実行してみましょう。

なんかちょっと経ったらビルドが成功したあれが表示されると思います。

もうこれだけです。これだけでコンパイルは終わりなのです。

今のコマンドの構造

$ arduino-cli compile -b FQBN プロジェクトフォルダ -e

FQBNっていうのは、ESP32 Dev ModuleとかESP32 Wrover Moduleのような、ボードの選択を表すもので、esp32:esp32:esp32(これはESP32 Dev Module)のような形式で指定します。

プロジェクトフォルダはまんまプロジェクトフォルダで、xxx.inoがあるフォルダのことです。
ちなみにカレントフォルダにxxx.inoがあればプロジェクトフォルダは指定しなくても大丈夫です。

-eオプションは、指定したらコンパイルされたバイナリがbuildフォルダに保存されます。
あってもなくてもまぁどっちでも...

コンパイルすると...?

先ほどの設定でコンパイルすると、build/esp32.esp32.esp32に沢山ファイルが出来上がると思います。
そのうち、実際に書き込みに使うのはesp32_ledtest.ino.zipというファイルのみです。
ESP32でのコンパイルにおいては、.zipファイルは生成されませんでした。悲しいですね。代わりにesp32_ledtest.ino.binが書き込みに使われるらしいです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?