ESP32-IDFをWindowsで構築する

ESP32では、公式開発環境のESP32-IDFとAeduinoIDEの二種類の開発環境があります。
今までArduinoで開発してましたが、今回からESP-32-IDFを試してみたいと思います。

■ インストールの方法

 https://dl.espressif.com/dl/esp-idf/?idf=4.4

Online Installerで環境全体のインストールが可能です。

インストール後、デスクトップに「ESP-IDF 4.3 CMD」が登場し、ESP-IDF 4.3 CMDを使用してコマンドを入力します。

■ プロジェクト作成

「ESP-IDF 4.3 CMD」にて、プロジェクトファイルを生成します。
プロジェクトファイルを生成したいディレクトリまでcdコマンドで移動し

idf.py create-project プロジェクト名

例)

idf.py create-project Hello

で、作成ができます。

■ プログラムを編集

プロジェクト名のフォルダにmainフォルダがあり、その中にC言語ソースがあります。
初期では


#include <stadio.h>
void app_main(void)
{

}

が書かれていると思います。

app_mainがmainでない点は、別途Bootloder等があり、app_mainが呼び出されるまで別の処理が先に行われます。

#include <stadio.h>
void app_main(void)
{
    printf("Hello\n");
}

保存し、以下のコマンドを実行します。

idf.py build

最初は時間かかりますが、2回め以降変更がない際は早くコンパイルができます。

※コンパイル中に「FAILED: esp-idf/mbedtls/x509_crt_bundle」というエラーが表示された際

このエラーは、cryptographyがバージョンアップした際に関数の使い方を変更した事が原因です。
問題のバージョンは、cryptographyの35.0.0 – 2021-09-29のものです。
IDF側で対応されてば良いですが、まだ対応されてない際は、以下のコマンドで一つ前のバージョンを使用します。

pip uninstall -y cryptography
pip install cryptography==3.4.8

■ ESP32に書き込む

buildがうまくいったら、以下のコマンドで書き込みます。

idf.py flash -p ポート番号

Windowsの場合、COMポートの指定は以下の例の様にします。

idf.py flash -p COM11

■ ESP32でシリアルモニタを確認する

以下のコマンドでシリアル通信の確認ができます。
デフォルトでは115200bpsになります。

idf.py -p com11 monitor

コマンドを使って、ESP32の開発ができそうです。

ではでは。

関連記事

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA