トップ 一覧 検索 ヘルプ RSS ログイン

ESP32-micropythonの変更点

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