Arduino IDE ESP32 (ESP-32) の開発準備
Arduinoで、無線(LAN、Bluetooth)を利用したいと思い、
無線(LAN、Bluetooth)のモジュールを探してみました。
国内で調達すると値段もかなり掛かります。
そこで、大陸からの購入と思いましたが、
無線機器のため、電波法(技適)の適用を受けてしまい、
技適対応製品でないと勝手には使用できません。
しかし、現在では簡単な申請で利用可能となる製品もあります。
ですが、180日間の期間限定許可となるため、その後の問題もあります。
・技適取得品でない場合は、実験等の利用目的で届出することで、
180日間使用することが出来ます。
( 技適未取得機器を用いた実験等の特例制度)
https://www.tele.soumu.go.jp/j/sys/others/exp-sp/index.htm
いろいろ探してみると、
Arduino IDEの開発環境で開発でき、
マイコンボード本体に無線(LAN、Bluetooth)モジュールが、
組み込まれているものがあるのを見つけました。
これが、今回使用する、
・ESP32 (ESP-32) 開発ボード
です。
![ESP32 (ESP-32) 開発ボード](https://shinog.jp/wp-content/uploads/2021/07/IMG_3694_1.jpg)
これは、大陸でも手に入り、格安製品もあります。
私のように、ちょっと使って飽きてしまうものには、ちょうど良い製品です。
しかも技適対応製品です。
・ESP-32 ESP-32S 開発ボード無線 LAN Bluetooth 超低消費電力デュアルコア ESP32 ボード
AliExpress
https://ja.aliexpress.com/item/32928267626.html?spm=a2g0s.9042311.0.0.27424c4dptiRV7
¥401-
本体には、
・ENボタン:モジュールリセット
・Bootボタン:ダウンロード用(プログラム転送用)
・USB端子(microUSB接続):
電源供給とプログラム、データ転送
がありますが、
Arduino UNOのデジタル13ピンに接続されているような
LEDはボード上にはありません。
![EPS32 (EPS-32) 開発ボード](https://shinog.jp/wp-content/uploads/2021/07/IMG_3694_2.jpg)
この製品には、よく似た類似製品が多くあります。
製品仕様やピンマップ、技適対応などは
データーシートで必ず確認して下さい。
インターネットで提供されているサイトも多くあります。
このボードの気になるところですが、
普通サイズのブレッドボードを使って回路を作るとき、
ボードの幅が広いため、ブレッドボードのどちらか片方の
ピンソケットが使用できません。
そのため、ブレッドボードミニを2個を使用しています。
![ブレッドボードでの使用1](https://shinog.jp/wp-content/uploads/2021/07/IMG_3859_1.jpg)
![ブレッドボードでの使用2](https://shinog.jp/wp-content/uploads/2021/07/IMG_3860_1.jpg)
今回は、このESP32用のプログラム開発をArduino IDEで
行うなための設定をしてみます。
1.Arduino IDE に ESP32 のボード情報を追加します。
1.GitHub のサイトより arduino-esp32 開発関連ファイルを
ダウンロードします。
https://github.com/espressif/arduino-esp32
![ファイルのダウンロード](https://shinog.jp/wp-content/uploads/2021/07/pgm1701_1.png)
2.ダウンロードした”arduino-esp32-master.zip"を展開します。
![ダウンロードファイルの展開](https://shinog.jp/wp-content/uploads/2021/07/PGM1702_1.png)
3.C:\Program Files (x86)\Arduino\hardwareフォルダーに、
”espressif”フォルダを作成します。
![espressifフォルダの作成](https://shinog.jp/wp-content/uploads/2021/07/pgm1703_1.png)
4.作成した、
C:\Program Files (x86)\Arduino\hardware\espressifフォルダに
”esp32”フォルダを作成します。
![esp32フォルダの作成](https://shinog.jp/wp-content/uploads/2021/07/pgm1704_1.png)
5.2.で展開したファイル群(中身のみ)を、4.で作成した、
C:\Program Files (x86)\Arduino\hardware\espressif\esp32フォルダへ
移動(コピー)します。
![ファイルのコピー](https://shinog.jp/wp-content/uploads/2021/07/pgm1705_1.png)
6.他にも必要なファイルが多くありますのでダウンロードします。
C:\Program Files (x86)\Arduino\hardware\espressif\esp32\tools
フォルダに移動し、”get”といrアプリケーションを探し、
右クリックより、管理者として実行(A)メユーを選択クリックします。
※WindowsOSからの確認メニューが表示される場合は、OKして下さい。
※コマンドプロンプト画面が表示され、ダウンロードが開始されますが、
かなり時間が掛かります。(私の場合、10分程度でした)
![管理者として実行](https://shinog.jp/wp-content/uploads/2021/07/pgm1706_1.png)
![コマンドプロンプト画面](https://shinog.jp/wp-content/uploads/2021/07/pgm1707_1.png)
![ダウンロードされたファイル群](https://shinog.jp/wp-content/uploads/2021/07/pgm1708_1.png)
2.PCにVCP ドライバをインストールします。
1.SILICON LABSのサイトより、
https://jp.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
私の場合は、Windows10なので、
Windows 10 Universal (v10.1.8) のダウンロードを選択します。
※PCのOSに合致したものを選択します。
![ダウンロード1](https://shinog.jp/wp-content/uploads/2021/07/pgm1709_1.png)
![ダウンロード2](https://shinog.jp/wp-content/uploads/2021/07/pgm1710_1.png)
2.ダウンロードした”CP210x_Universal_Windows_Driver.zip"等を展開します。
展開したフォルダ内を確認し、”CP210xVCPInstaller・・・”で、PCに合った
インストーラーを実行します。
私の場合は、64bitなので、”CP210xVCPInstaller_x64”を実行します。
インストーラーの指示に従い、インストールします。
※WindowsOSからの確認メニューが表示される場合は、OKして下さい。
![ファイルの展開](https://shinog.jp/wp-content/uploads/2021/07/pgm1711_1.png)
![ファイルの実行](https://shinog.jp/wp-content/uploads/2021/07/pgm1712_1.png)
![ウィザードの開始](https://shinog.jp/wp-content/uploads/2021/07/pgm1713_1.png)
![ウィザードの完了](https://shinog.jp/wp-content/uploads/2021/07/pgm1714_1.png)
3.Arduino IDE を起動して、 ESP32 ボード開発向けの設定をします。
このとき、USBケーブルで、ESP32ボードと接続しておきます。
1.メニュー「ツール」 → 「ボード:"Arduino UNO"」
→「ESP32 Dev Module」 を選択
※”ESP32 DEV Module”ボードの選択ができない場合は、
”1.Arduino IDE に ESP32 のボード情報を追加します” を確認して下さい。
![ボードの設定](https://shinog.jp/wp-content/uploads/2021/07/pgm1715_1.png)
2.メニュー「ツール」 → 「シリアルポート」
→「COM5」 を選択
※シリアルポートは、PCの設定環境によりポート番号が変わります。
もし、選択できる情報がない場合や分からない場合は、
左下のWindowsメニューを右クリックし、デバイスマネージャー(M)を
選択し、デバイスマネージャー画面のポート(COMとLPT)をクリックし、
"Silicon Labs CP210x USB to UART Bridge(COMx)"が登録されていることと、
この COMx の x の番号を確認して下さい。
これが、シリアルポートの番号になります。
![シリアルポートの設定](https://shinog.jp/wp-content/uploads/2021/07/pgm1716_1.png)
![デバイスマネージャー画面](https://shinog.jp/wp-content/uploads/2021/07/pgm1717_1.png)
では、実際にスケッチしてみます。
またいつもの、デジタル13ピンのLEDの点滅です。
ですが、Arduino UNOのように、本体ボード上にLEDがありません。
そのため、ブレッドボードを使って配線します。
回路は図の通りです。
この回路図の作図には fritzing を利用させて頂いております。
https://fritzing.org/home/
・LEDには、極性(+-)がありますから間違えないように。
足の長い方がアノード(+)側で、13番ピン側となります。
![回路図](https://shinog.jp/wp-content/uploads/2021/07/pgm1731_1.png)
スケッチしてみます。
void setup() {
// put your setup code here, to run once:
pinMode(13,OUTPUT); // GPIO13ピンを出力用として設定
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(13,HIGH); // GPIO13ピンへ 3.3Vを出力
delay(200); // 1秒停止(200ミリ秒停止)
digitalWrite(13,LOW); // GPIO13ピンへ 0Vを出力
delay(200); // 1秒停止(200ミリ秒停止)
}
以前の ”Arduino ブレッドボードのLEDを点滅させる” から、
コピーして、一部修正したものです。
マイコンボードに書き込んで実行してみます。
![Arduino IDE](https://shinog.jp/wp-content/uploads/2021/07/pgm1721_1.png)
![実行結果1](https://shinog.jp/wp-content/uploads/2021/07/IMG_3848_1.jpg)
![実行結果2](https://shinog.jp/wp-content/uploads/2021/07/IMG_3849_1.jpg)
200ms毎に点滅を繰り返していると思います。
これで、ESP32系ボードの開発環境は整いました。
やはり、このボードは無線(LAN、Bluetooth)を使わないとですね。