2
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.

Espressif ESP32シリーズ開発環境 esp-idf を使い始める

Posted at

はじめに

低価格で高機能なEspressif社のESP32シリーズのチップ、いくつかの開発環境があるが、やはり骨までしゃぶりたかったらesp-idfを使うのが良さそうだ。この記事は、私が備忘録として残しておくためを第1目的として書いておく。似たような環境の人は参考になるかもしれない。

前提環境

  • macOS 13.6
  • Homebrew
  • ESP32を搭載した各種ボードたち

esp-idfの導入

とりあえず~/espディレクトリに導入してるけど、これは他でもよい。他にEspressifのリポジトリをクローンするつもりならば、Espressifのリポジトリをまとめておいておくためのディレクトリがあっても良いかもしれないな。

$ mkdir ~/esp
$ cd ~/esp
$ git clone --recursive https://github.com/espressif/esp-idf
$ cd esp-idf
$ ./install.sh
$ . ./export.sh

'master'ブランチをクローンしてるけど、製品版のビルドならば、5.0ブランチでなければならないかもしれない。4.4ブランチでは以下のコマンドたちは使えないかもしれない。

プロジェクトの開始

今どきは下記のようにするのが良さそう。

  • create-projectコマンドを使ってプロジェクトを作成
  • set-targetコマンドを使ってチップに応じた環境を作成
  • ごそごそ開発
  • ビルドと書き込み

ということで、esp32-s3チップの場合、こんな感じかな?

$ cd ~/src # プロジェクトたちを置いてあるディレクトリね
$ idf.py create-project testproj
$ cd testproj
$ idf.py set-target esp32s3
$ emacs main/testproj.c
$ idf.py flash monitor

気がついたことは下記。

  • zshを使っているのだが、コマンドはタブキーで保管できる。
  • 'create-project'コマンドは、プロジェクト名のサブディレクトリを作ってくれる。
  • ターゲットのチップ名も保管してくれるので大変便利。
  • 'compile_commands.json'も作ってくれるので、lspとかを設定しているEmacsならばCのソースコードを書いているときにちゃんと保管してくれると思う。
  • シリアル通信の速度はおそらく115200bps

他にもコンポーネントをどう作るかとか、自動的にダウンロードするのにはどうするかとか、いろいろ知っといたほうが良いことはあるっぽいが、そのうち書き足そう。

Happy hacking!

2
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
2
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?