- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
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