知的好奇心 for IoT

IoT関連の知的好奇心を探求するブログです

M5Stamp Pico Mateは変わらずに安くて小さい!ESP32の最適解!ただし、プログラムの書き込み方が解っていればの話です。

M5Stack Basicが6,000円を超え、M5StickC Plusが元々のM5Stack Basicの値段となっている異常事態の中で、M5Stamp Pico MateはリーズナブルなままでESP32を手軽に使うポテンシャルを持っていると思います。

ただ、プログラムの書き込みに必要なUSBシリアル変換モジュールを本体ボードに積んでいないため、このような製品が一緒に売られています。

(CH9102はMacだとドライバをダウンロードしてインストールする必要があるため面倒くさいです。)

 

しかし、M5Stamp Pico Mateのプログラムを書き込めるのは「CP2104/CH9102搭載 ESPダウンローダキット」だけではなく、一般に売られているUSBシリアル変換モジュールでも書き込めるんです。

 

ここでは、私が既に持っていた秋月電子通商で売られている「FT234X超小型USBシリアル変換モジュール」で、M5Stamp Pico Mateにプログラムを書き込む方法を具体的に紹介したいと思います。

 

使ったもの

ハードウェア

M5Stamp Pico Mate - 秋月電子通商 ¥1,150

FT234X 超小型USBシリアル変換モジュール - 秋月電子通商 ¥600

ミニブレッドボード BB-601(白) - 秋月電子通商 ¥130

ブレッドボード・ジャンパーワイヤ 14種類×5本 - 秋月電子通商 ¥300

・ジャンパーワイヤ オスーオス 2本 - 手持ち

 

ソフトウェア

Arduino IDE 1.8.19

Arduino core for the ESP32 (v1.0.6 or v2.0.3)

macOS Monterey 12.4

 

ハードウェアの準備

ヘッダーピンのハンダ付け

M5Stamp Pico MateとFT234X超小型USBシリアル変換モジュールにヘッダーピンをハンダ付けします。

 

回路の作成

ブレッドボードにジャンパワイヤを差し込んで回路を作ります。

 

部品の差し込み

M5Stamp Pico MateとFT234X超小型USBシリアル変換モジュールをブレッドボードに差し込みます。

 

回路の説明

この回路は非常にシンプルで、FT234X超小型USBシリアル変換モジュールの4つのピンを対応するM5Stamp Pico Mateのピンに繋いでいるだけです。

FT234X          M5Stamp

       +5V ---> 5V

       GND ---> GND

       TxD ---> Rx0(3)

       RxD ---> Tx0(1)

 

ソフトウェアの準備

Arduino IDEのインストール

次のサイトから自分のPCに適したものをダウンロードしてインストールします。

 

Arduino core for the ESP32の追加

Arduino IDEの環境設定画面を出し、追加のボードマネージャーのURLに次のいづれかを入力します。

v1.0.6の場合 : https://dl.espressif.com/dl/package_esp32_index.json

V2.0.3の場合: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

 

次にボードマネージャーを表示して、入力欄に「esp32」と入れてArduino core for the ESP32をインストールします。

 

ボードの選択

Arduino IDEのツールメニューから[ボード:xxx]-[ESP32 Arduino]-[ESP32 Pico Kit]を選びます。(v2.0.3の場合はESP32-PICO-D4)

 

macOSが12.3以上の場合

私の次の記事を見て、追加の作業を行なってください。

 

プログラムの書き込み

USBケーブルを接続する

PCとFT234X超小型USBシリアル変換モジュールをUSBケーブルで繋ぎます。

 

接続したポートを選択する

Windowsの場合

Arduino IDEのツールメニューから[シリアルポート:xxx]-[COMx]を選びます。

COM番号はデバイスマネージャーの「ポート(COMとLPT)」で「USB Serial Port(COMx)」と表示されている番号です。

 

macOSの場合

Arduino IDEのツールメニューから[シリアルポート:xxx]-[cu.usbserial-xxx]を選びます。

 

ESP32をダウンロードモードにする

Arduino IDEのツールメニューから[シリアルモニタ]を選んで、シリアルモニタを表示しておきます。(通信速度は115200bpsです)

 

次の順番でジャンパーワイヤを抜き差しします。

  1. M5Stamp Pico MateのENとGNDを繋ぐ(白線)

  2. M5Stamp Pico MateのGPIO0とGNDを繋ぐ(黄線)

  3. M5Stamp Pico MateのENとGNDを繋いだ線を抜く(白線)

  4. M5Stamp Pico MateのGPIO0とGNDを繋いだ線を抜く(黄線)
    (本当は3の時にダウンロードモードになっていますが、黄線の役割が終わっているために抜いておきます。)

 

これで、ESP32がダウンロードモードになりプログラムを書き込むことができるようになります。

 

ESP32がダウンロードモードになると、シリアルモニタには次のように表示されます。

 

プログラムを書き込む

Arduino IDEのスケッチメニューから[マイコンボードに書き込む]を選んで、プログラムを書き込みます。

 

ESP32をリセットする

最後に、M5Stamp Pico MateのENとGNDを繋いで、繋いだ線を抜くとESP32にリセットがかかり、書き込んだプログラムが動きます。

 

おまけ

開発が終わって実運用する段階になれば、USBシリアル変換モジュールは電源を供給するだけの役割となるため、USBコネクタと配線だけの部品で代替えすることができます。

 

秋月電子通商から「電源用マイクロUSBコネクタDIP化キット(¥130)」や「電源供給用USB Type-CコネクタDIP化キット(¥130)」などが販売されています。

 

マイクロUSBコネクタDIP化キット(左)とUSB Type-CコネクタDIP化キット(右)に置き換えた例。