-
Notifications
You must be signed in to change notification settings - Fork 6
ESP32
- 本項ではESP32のクライアント認証機能を使ってAWSへ接続する方法を紹介します。
- ESP32のクライアント認証機能を使うことでチップのRAMの消費量が大幅に削減できます。
- PmodUSBUART(シリアル ⇔ USB の変換モジュール):link
- python: link
- AT application for ESP32: link
- Flash Download Tools: link
- AWSクライアント証明書、秘密鍵: デバイスをAWS IoTに登録するを参考に入手してください。
Python 2.xをインストールしてください。
https://www.python.org/downloads/release/python-2716/
ダウンロードもしくはCloneしてください。
任意のディレクトリからpython.exeを実行するには、python.exeが保存されているディレクトリへPATHを設定しておきます。
- スタートメニュー -> Windowsシステムツール -> コントロールパネル
- システムとセキュリティ -> システム
- システムの詳細設定 -> 環境変数(N)...
- システム環境変数(S)の Path をクリック -> 編集(I)...
- 新規(N) -> Pythinをインストールしたディレクトリを入力 -> OK
- 新規(N) -> Pythinをインストールしたディレクトリの中でScriptsディレクトリを入力 -> OK
- スタートメニュー -> Windowsシステムツール -> コマンドプロンプト
- 事前準備(ソフトウェア)でダウンロードしたAT application for ESP32のzipファイルを右クリック -> すべて展開
- "python"と入力しEnter -> "exit()"と入力しEnter
- "cd AT application for ESP32をインストールしたディレクトリ\esp32-at-master\tools"と入力しEnter
-
AWSクライアント証明書(xxx-certificate.pem.crt)、秘密鍵(xxx-private.pem.key)をAT application for ESP32をインストールしたディレクトリ中のtoolsフォルダ内に保存
-
https://docs.aws.amazon.com/ja_jp/iot/latest/developerguide/managing-device-certs.html にアクセス後、Amazon ルートCA1 (AmazonRootCA1.pem)をダウンロードし,toolフォルダ内に保存してください
-
コマンドプロンプトで"python AtPKI.py generate_bin -b at_cert.bin cert xxx-certificate.pem.crt"と入力しEnter -> "python AtPKI.py generate_bin -b at_key.bin key xxx-private.pem.key"と入力しEnter -> "python AtPKI.py generate_bin -b at_ca.bin ca AmazonRootCA1.pem"と入力しEnter
※xxxはユーザにより異なります
- コマンドが正しく実行されると、toolsフォルダ内にat_cert.binとat_key.binとat_ca.binが生成されます
-
事前準備(ソフトウェア)でダウンロードしたFlash Download Toolsのzipファイルを展開
-
展開したFlash Download Toolsと作成したat_cert.binとat_key.binとat_ca.binをCドライブ直下などパスに2バイト文字や空白が入らない場所に移動
※パスに2バイト文字や空白が入っているとFlash Download Toolsが起動できなかったり、うまくデータの書き込みが出来ないことがあります
- ESP32へbinを書き込むためには以下のようにPCとESP32を接続します。
- PmodUSBUARTはESP32へ給電を行うため VCC <-> SYS をジャンパーで接続します
- PmodUSBUARTは以下の端子を使用します
- ESP32のBOOTのディップスイッチをONにします
- ESP32は以下の端子を使用します
-
PmodUSBUART / ESP32 配線表
PmodUSBUART ----- ESP32
pin2(RxD) ----- J2 Pin1(TxD)
pin3(TxD) ----- J2 Pin2(RxD)
pin5(GND) ----- Pmod Pin5(GND)
pin6(Vcc) ----- Pmod Pin6(Vcc)
- 先ほど移動したFlash Download Toolsフォルダにある実行ファイル(flash_download_tools_vx.x.x.exe)を起動するとCLIが立ち上がります -> ESP32 DownloadToolを選択
- Flash Download Toolを以下のように設定します
① SPIDownload を選択
② at_cert.bin の保存フォルダを指定
③ メモリアドレスを 0x2a000 と記入
④ at_key.bin の保存フォルダを指定
⑤ メモリアドレスを 0x2c000 と記入
⑥ at_ca.bin の保存フォルダを指定
⑦ メモリアドレスを 0x2e000 と記入
⑧ SPIのコンフィグを図のように設定
⑨ COM を選択
⑩ BAUD を 1152000 に設定
⑪ ESP32のRSTボタンを押す
⑫ START を選択
- Flash Download Toolに"FINISH"と表示されれば書込み完了です。
- デバイスをAWS IoTに登録する
- Amazon FreeRTOSをダウンロードする
- Amazon FreeRTOSを設定する
- Amazon FreeRTOSを実行し、RX65NをAWS IoTに接続する
- ソフトウェアアーキテクチャ
- 機能ブロックとAPIプロトタイプ
- RXマイコンにおける実装(システムタイマとソフトウェア割り込み)
- スリープ機能
- タスク切り替えと割り込み発生時のレイテンシ
- ネットワークインタフェースとデバイスドライバの結合
- Amazon FreeRTOS Qualification Program
- Amazon FreeRTOS ROM/RAM容量考察
- Amazon FreeRTOS でFreeRTOS+TCPのみ使う方法
- シミュレータで動作させる
- 乱数生成