##MicroPythonをWindowsでESP32に入れる
ESP32はarduinoベースのファームウェアが最初から入っている。これをPythonで書けるようにファームウェアを変更する。
MicroPython参考
https://micropython-docs-ja.readthedocs.io/ja/latest/esp32/tutorial/intro.html#powering-the-board
###コマンドプロンプトからpipを利用してesptool.pyをインストールする。
micropythonを入れるための下準備。
pip install esptool
###インストールしたesptoolからespのフラッシュを消去。
参考ページには
esptool.py --port /dev/ttyUSB0 erase_flash
とコマンドが書いてあったがここでエラーが発生。
Windowsの場合はポートの名前が違う。
デバイスマネージャからESP32をつないでいるポートを見るとCOM5とあったので、こちらで通してみたところ通った。
Linux/macとポート番号の指定の仕方が違うので戸惑った。
esptool.py --port COM5 erase_flash
###次はファームウェアを入れる
これも元のコマンドは
esptool.py --chip esp32 --port /dev/ttyUSB0 write_flash -z 0x1000 esp32-20180511-v1.9.4.bin
と記載があった。
MicropythonのESP32のファームウェアを見に行くといろいろある。
GENERICのunstableでは無い物の中で一番上にある最新版をダウンロードした。
(esp32-idf3-20191220-v1.12.binと書かれているもの)
https://micropython.org/download/esp32/
コマンドプロンプトでダウンロードフォルダへ移動。
cd Downloads
ダウンロードしたファームウェアを入れる。
esptool.py --chip esp32 --port COM5 write_flash -z 0x1000 esp32-idf3-20191220-v1.12.bin
(portを現在のポートに、0X1000以降をダウンロードしたファームウェアに書き換える。)
----ばっかり出てコネクティングで止まってしまうときはESP32本体のBOOTボタンを押すとインストールが進む。
これでMicroPythonがインストールできた。
##追記
###対話型MicroPython用プロンプトREPLでHelloWorldを表示してみる。
まずデバイスマネージャーで接続されているポートを確認する。
上記とは別日に行ったため今回はCOM3だった。
MicroPython公式ページの手順にのっとってPuTTYをダウンロードしインストールする。
▼PuTTY
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
PuTTYを起動し、Serial lineを現在のポートに、Speedを115200にConnection typeをSerialにしてオープンをクリック。
※公式ページではSpeedについては詳しく書かれていないがSpeedは9600のままだとエラーでうまく表示されない。
本体のリセットボタンを押すとプロンプトが起動する。
現在のカーソルの位置に
print('HelloWorld')
と入力して下画像の用に帰ってきたらOK。
##参考記事
▼ESP32 での MicroPython の始め方
https://micropython-docs-ja.readthedocs.io/ja/latest/esp32/tutorial/intro.html#powering-the-board
▼MicroPython REPLプロンプトの表示
https://micropython-docs-ja.readthedocs.io/ja/latest/pyboard/tutorial/repl.html
▼ギリギリまでお手軽にMicroPythonでIoTやるための手引書
https://qiita.com/moomooya/items/ea30fe1113b21ebc9329