https://micropython.org/download v1.12 以降でesp32 ble を対応しているらしい ( 2021-apr-11 v1.14 ) espidf ( PRG-espidf )がインストールされていること zypper install gcc 基板P3コネクタのTX, RX, GND端子をUSBシリアルモジュールの同名の対応端子と接続します。 その後、SW2を押したままSW1を押して離す(リセット)することで ESP32がプログラム書き込みモード になります。(SW1を離した後はSW2も離して構いません) ## その後ArduinoIDEから「マイコンボードに書き込む」 を選択するとプログラムが転送されます。 # WriteESP32 PORT=/dev/ttyUSB0 make erase PORT=/dev/ttyUSB0 make deploy $ pushd ~/arduino_src/WROOM32/PRJ/PYTHON/ $ source ./set-env_micropython.sh $ pushd $ESPIDF $ git pull ## Supported git hash (v3.3): 9e70825d1e1cbf7988cf36981774300066580ea7 ## Supported git hash (v4.0) (experimental): 4c81978a3e2220674a432a588292a4c860eef27b $ git checkout 4c81978a3e2220674a432a588292a4c860eef27b $ git pull $ git submodule update --init --recursive $ ./install.sh $ . ./export.sh $ bash ./install.sh $ popd $ cd micropython # $ git submodule init lib/berkeley-db-1.xx $ git submodule update $ make -C mpy-cross $ cd ports/esp32 $ make submodules $ make $ # WriteESP32 PORT=/dev/ttyUSB0 make erase PORT=/dev/ttyUSB0 make deploy $ !! INSTALL $ git clone --recursive https://github.com/micropython/micropython.git $ git clone https://github.com/micropython/micropython-lib.git $ ## git clone --recursive https://github.com/nishimotz/micropython-esp32.git $ cd ./micropython $ git checkout v1.16 $ git submodule update --init --recursive # $ cd esp-idf # ## $ git checkout 2c95a77cf93781f296883d5dbafcdc18e4389656 # ## git checkout 5c88c5996dbde6208e3bec05abc21ff6cd822d26 # git checkout 6b3da6b1882f3b72e904cc90be67e9c4e3f369a9 # $ git submodule update --init --recursive # $ cd .. $ export PYTHON=python3 $ ## python3 -m pip install pyparsing=2.3.1 $ cd micropython # $ make -C mpy-cross $ cd ports/esp32 $ make # WriteESP32 PORT=/dev/ttyUSB0 make erase PORT=/dev/ttyUSB0 make deploy How to connect screen /dev/ttyUSB0 115200 ## quit to [Ctrl+A k] !with Bluetooth BLE $ export PYTHON=python3 $ ## python3 -m pip install pyparsing=2.3.1 $ git clone --recursive https://github.com/micropython/micropython.git $ cd micropython # バージョン v1.14 をチェックアウト $ ## git checkout v1.12 $ git checkout v1.14 # espidf のバージョン(v4.0-beta1)v4をチェックアウト $ pushd $ESPIDF $ checkout 310beae373446ceb9a4ad9b36b5428d7fdf2705f $ git submodule update --init --recursive $ popd $ make -C mpy-cross $ cd ports/esp32 $ make # WriteESP32 PORT=/dev/ttyUSB0 make erase PORT=/dev/ttyUSB0 make deploy 以前の方法 $ git clone https://github.com/micropython/micropython-lib.git $ git clone --recursive https://github.com/nishimotz/micropython-esp32.git ## git clone https://github.com/micropython/micropython-esp32.git $ cat micropython-esp32/ports/esp32/Makefile | grep ESPIDF_SUPHASH ESPIDF_SUPHASH := 2c95a77cf93781f296883d5dbafcdc18e4389656 ## https://github.com/micropython/micropython-esp32.git ESPIDF_SUPHASH := 9a26296a0e88a4c3ae27e9c848be970946fff87e $ cd esp-idf #$ git checkout 2c95a77cf93781f296883d5dbafcdc18e4389656 $ git checkout 9a26296a0e88a4c3ae27e9c848be970946fff87e $ git submodule update --init --recursive $ cd .. $ cd micropython-esp32 $ make -C mpy-cross $ cd ports/esp32 $ make # WriteESP32 PORT=/dev/ttyUSB0 make erase PORT=/dev/ttyUSB0 make deploy ! ESP32-micropython COMMAND https://micropython-docs-ja.readthedocs.io/ja/latest/esp32/quickref.html https://micropython-docs-ja.readthedocs.io/ja/latest/esp32/quickref.html ! binary https://micropython.org/download#esp32 esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 460800 write_flash -z 0x1000 esp32-20190125-v1.10.bin ! BPI-BIT ( Micro:bit ) http://wiki.banana-pi.org/BPI-Bit?fbclid=IwAR2IF6Cs421xADp5ifxOoQygH8tQvDBGxLsVtWCniP6-S13dpv8e3P1UHkc ! Mu editor https://codewith.mu/ https://github.com/mu-editor/mu https://github.com/mu-editor/mu.git ! Blockly-Micropython https://github.com/immakermatty/blockly-microPython-ESP !How to connect screen /dev/ttyUSB0 115200 ## quit to [Ctrl+A k] !Send to micropython $ pip3 install adafruit-ampy $ ampy -p /dev/ttyUSB0 put main.py !mpfshell ツール インストール pip3 install mpfshell $ mpfshell ttyUSB0 mpfs [/]> ls mpfs [/]> put wifi_cfg.py mpfs [/]> mpfs [/]> repl *** Exit REPL with Ctrl+] ***> ! ampy の使い方 使い方パソコンにampyをインストールするには、コマンドプロンプトを開いて以下のコマンドを実行 >pip install adafruit-ampy ESP32へファイルを書き込み ESP32をパソコンに接続し、comポート番号を確認し、コマンドプロンプトから以下のコマンドを実行(例 comポート:COM6, ファイル名:test.py) >ampy –port com6 –baud 115200 put test.py /test.py test.pyをmain.pyのファイル名で書き込む場合 >ampy –port com6 –baud 115200 put test.py /main.py 書き込み完了後、以下のコマンドで書き込まれたファイルを確認 >ampy –port com6 –baud 115200 ls ESP32上のファイル(test.py)を削除 >ampy –port com6 –baud 115200 rm test.py ESP32上のファイル(test.py)をバックアップ >ampy –port com6 –baud 115200 get test.py スクリプトファイルをESP32に書き込まないでESP32上で実行 >ampy –port com6 –baud 115200 run test.pyこの”run”コマンドはESP32にファイルを書き込まずに実行が出来るので、デバック時に非常に便利 !bpi-bit https://github.com/BPI-STEAM/BPI-BIT-MicroPython/releases/tag/20190421 から firmware.bin をダウンロード $esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 erase_flash $esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 115200 write_flash -z --flash_mode dio --flash_freq 40m 0x1000 firmware.bin で書き込み。。 ---- !blockey-on-micropython https://github.com/immakermatty/blockly-microPython-ESP ---- !mpy 化する $ mpy-cross hoge.py hoge.mpy と言うファイルができるので mpfshell 等で転送する !! main.py と boot.py はmpyしないこと。。 ---- ! 設定環境 $# python3.6 -m mppEnv $ source $HOME/arduino_src/WROOM32/PRJ/PYTHON/FOO/mppEnv/bin/activate $ . ./set-env.sh $ . ./set-env_SUPHASH.sh $ . $ESPIDF/export.sh $ idf.py build 1067 cd ./micropython/ ## python3.6 -m mppEnv source /home/green/arduino_src/WROOM32/PRJ/PYTHON/FOO/mppEnv/bin/activate ! 外部関数の作り方 https://micropython-docs-ja.readthedocs.io/ja/latest/develop/cmodules.html