DCマウス研修(移行中) ブログ(移行中) 研修(移行中)

yasueの自作吸引マウス製作記【Part.03】-環境構築&Hello world!

DCマウス研修(移行中)

<公開中のブログ一覧>

こんにちは!yasueです。

KICADでの基板設計は作業中ですので、今回はESP-WROOM-32Dの開発環境の構築&Hello world!までご紹介したいと思います。

 

Part.01を見てくださった方はアレ?と思って頂けたかもしれませんね。Part.01ではArduino IDEの開発環境を構築してLチカまでをご紹介しました。

しかし、Arduinoは便利すぎて研修にならないことに気づいてしまった(というより、弊社の研修理念と合わない)ので、ESP-IDFの開発環境を構築していきたいと思います。

ESP-IDFとはEspressif IoT Development Frameworkの略で、公式SDKとなります。

 

開発環境の構築

今回から私物PCに開発環境を構築して作業していきたいと思います。

  • PC:Thinkpad X395(64bit)
  • OS:ubuntu 18.04 LTS
  • ツール:秋月電子製 ESP32-DevKitC (1,480円で買える開発ボードです。オススメ)
  • エディタ:Visual Studio Code、Vim
  • ビルド:Toolchain(ESP-IDF) ←今回はこちらを構築していきます。

 

ESP-IDFの環境構築

shotaさんのブログを参考に、ESP-IDF(安定版)の開発環境を構築しました。すごく丁寧に説明してあり、とても参考になります!

参考ブログを参照しながら、安定版をLinuxへインストールする場合の変更点を説明していきます。

本内容は公式HPのGet Started(安定版) – ESP-IDF Programming Guideをまとめたものですので、一度そちらも確認してみて下さい。

 

Toolchainのセットアップ

ESP-IDFでコンパイルする際の前提パッケージをインストールします。


sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python python-pip python-setuptools python-serial python-cryptography python-future python-pyparsing

 

インストールが完了したら、Toolchain Setupを参照しToolchainをダウンロードします。私の場合は、「for 64-bit Linux」を選択します。

ダウンロードが完了したら、下記コマンドで~/espディレクトリに展開します。


mkdir -p ~/esp
cd ~/esp
tar -xzf ~/Downloads/xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0.tar.gz

 

Toolchainを使用するためには、環境変数を更新する必要があります。vimなどを用いて~/.profileに下記内容を追加します。


export PATH="$HOME/esp/xtensa-esp32-elf/bin:$PATH"

 

環境変数を更新したら、ログオフ=>ログインをしましょう。(sourceコマンドでも大丈夫だと思いますが、公式HPに従います)

ログインできたら、環境変数の更新が正しく設定されているか確認します。PATHが表示されれば成功です。


printenv PATH


 

ESP-IDFの取得

次に、ESP32のAPI/ライブラリを取得します。Githubで提供されていますので、git cloneします。この時、安定版ではバージョン指定する必要があるので注意して下さい!


cd ~/esp
git clone -b v3.3.1 --recursive https://github.com/espressif/esp-idf.git

 

Pythonパッケージのインストール

次に、ESP-IDFに必要なPythonのパッケージをインストールします。


python -m pip install --user -r $IDF_PATH/requirements.txt


 

これで開発環境が整いました。後のサンプルプロジェクトのコピー方法などは最新版と同じです。

 

Hello world!

では、実際にサンプルプロジェクトのHello world!をやっていきたいと思います。こちらもshotaさんのブログを参考にします。(shotaさん、分かりやすいブログありがとう!!)

 

ここでも、安定版では少しコマンドが異なるので、そこだけ説明していきたいと思います。

サンプルプログラムをESP32-DevKitCに書き込むためには、下記コマンドを使用します。このコマンドは少し時間がかかりますが、ビルドと書き込みを同時に行ってくれます。


make flash

書き込みが完了すると、下記のように表示されます。


・・・以下略・・・

Wrote 3072 bytes (82 compressed) at 0x00008000 in 0.0 seconds (effective 8297.4 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting...

 

次に書き込んだプログラムを表示させます。シリアル出力を表示させるためには、下記コマンドを使用します。


make monitor

今までの作業に問題がなければ下記のようにHello world!が表示されると思います。やったね!ちなみに、10カウントで永遠とリスタートし続けるので、「 Ctrl + ] 」で終了しましょう。


・・・以下略・・・

Hello world!
Restarting in 10 seconds...
I (211) cpu_start: Starting scheduler on APP CPU.
Restarting in 9 seconds...
Restarting in 8 seconds...
Restarting in 7 seconds...

・・・以下略・・・

無事にHello world!ができて開発環境を構築できたので、次回はLチカしたいと思います。ただのLチカでは面白くないので、タクトスイッチを利用したLチカを予定しています。

タイトルとURLをコピーしました