###はじめに
ESP-32は純正のESP-IDF以外にもArduino-IDEやMicropythonなど複数のプログラミング環境がありますが、今回はAWSが公開しているFreeRTOSをインストールしてawsIoTに繋いでみます。
###必要なモノ
- windows がインストールされているPC (今回はwindows7で確認)
- ESP32-DevKitC (スイッチサイエンス社の[ESPr Developer 32]
(https://www.amazon.co.jp/gp/product/B0756VKNKH/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1)を使用) - USB2.0 (TypeA - microB) 通信ケーブル
- WiFi環境
###FreeRTOSのインストール手順
手順はAWSに公開されています。
全文英語です。
単語を拾って進めていきます。
####UARTドライバ
通信するために、「CP210x USB to UART Bridge VCP drivers」をインストールします。
PCのUSBポートにESP32を接続して、デバイスマネージャーのポートの項目に接続されているCOMポートが表示されるので、それを控えておきましょう。
####Toolchainのインストール
EspressifからESP-IDF library をダウンロードしてきます。
ESP-IDFの説明通り、C:ドライブに「msys32」フォルダを作ってそこに入れておきます。
####Amazon FreeRTOSのダウンロード
windows版のFreeRTOSはGitHubよりダウンロードしてきます。
今回はzipでダウンロードしてきて、適当な場所に解凍します。
####プロジェクトを構成
toolchainのあるmsys32にフォルダにあるmingw32.exeを開きます。
Python 2.7.10以降をインストールします。Python 3.xではありません。
easy_install awscliを使用してAWS CLIをmingw32環境にインストールします。
aws configureを実行して、AWS CLIを設定します。詳細については、「AWS CLIの設定」を参照してください 。
boto3 Pythonモジュールをインストールするには、easy_install boto3を使用します。
Amazon FreeRTOSには、Espressifボードのセットアップを簡単にするスクリプトが含まれています。
Espressifスクリプト <BASE_FOLDER>/tools/aws_config_quick_start/configure.json を開いて、下記の設定します。
<BASE_FOLDER>FreeRTOSを解凍したフォルダのパスです。(toolsやdemosが子フォルダでいます。)
- afr_source_dir:
Amazon FreeRTOSディレクトリへの完全なパス。<BASE_FOLDER>のこと。 - thing_name:
この名前でawsIoTにモノが追加されます。 - wifi_ssid:
Wi-FiネットワークのSSID。 - wifi_password:
Wi-Fiネットワークのパスワード。 - wifi_security:
Wi-Fiネットワークのセキュリティの種類。
有効なセキュリティタイプは次のとおりです。 - eWiFiSecurityOpen (オープン、セキュリティなし)
- eWiFiSecurityWEP (WEPセキュリティ)
- eWiFiSecurityWPA (WPAセキュリティ)
- eWiFiSecurityWPA2 (WPA2セキュリティ)
####構成スクリプトの実行
mingw32.exeを開きます。
<BASE_FOLDER>/tools/aws_config_quick_start ディレクトリに移動して 、次のコマンドを実行します。
python SetupAWS.py setup
詳細は<BASE_FOLDER>/tools/aws_config_quick_start ディレクトリのREADME.mdを参照してください
####Amazon FreeRTOSサンプルのビルドと実行
ESP32をPCに接続して。mingw32.exeを開きます。
<BASE_FOLDER>/demos/espressif/esp32_devkitc_esp_wrover_kit/make へ移動して、次のコマンドを入力します。
make menuconfig
「Espressif IoT Development Framework Configuration」メニューで、「Serial flasher config」に移動し、「 Default serial port」に移動して シリアルポートを設定します。
Windowsでは、シリアルポートは COM1 のような名前が付いています。
ここで設定するシリアルポートは、デモアプリケーションをESP-32に書き込むために使用します。
選択を確定するには、ENTERを選択します。設定を保存するには、保存を選択し、終了を選択します 。
他の項目は弄りませんでした。
ファームウェア(ブートローダとパーティションテーブルを含む)をビルドして書き込みます。
<BASE_FOLDER>\demos\espressif\esp32_devkitc_esp_wrover_kit/make に移動して次のコマンドを実行します。
make flash
シリアルコンソール出力を監視するには、次のコマンドを実行します。
make flash monitor
コンパイル出力の最後に、ぞろぞろとMQTTが表示されれば成功です!